[marco/f21] fix resizing of CSD applications

Wolfgang Ulbrich raveit65 at fedoraproject.org
Sat Oct 25 22:04:08 UTC 2014


commit 1b4a4a1863bcc34f915e36e1708d58e14ef4234c
Author: raveit65 <chat-to-me at raveit.de>
Date:   Sun Oct 26 00:04:04 2014 +0200

    fix resizing of CSD applications

 marco.spec               |   11 ++++++++-
 marco_csd_resizing.patch |   52 ++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 61 insertions(+), 2 deletions(-)
---
diff --git a/marco.spec b/marco.spec
index 1669193..47b2b0d 100644
--- a/marco.spec
+++ b/marco.spec
@@ -14,7 +14,7 @@
 
 Name:           marco
 Version:        %{branch}.2
-Release:        3%{?dist}
+Release:        4%{?dist}
 #Release:       0.5%{?git_rel}%{?dist}
 Summary:        MATE Desktop window manager
 License:        LGPLv2+ and GPLv2+
@@ -39,6 +39,9 @@ Patch0:         marco_add-pixbuf-inline-icons.patch
 Patch1:         marco_fix-renaming-in-1.8.2.patch
 #https://github.com/mate-desktop/marco/pull/141
 Patch2:         marco_rendering-with-gtk3.14.patch
+# fix resizing of CSD Windows
+#http://git.mate-desktop.org/marco/commit/?h=1.8&id=d4969fe
+Patch3:         marco_csd_resizing.patch
 
 BuildRequires: desktop-file-utils
 BuildRequires: gtk2-devel
@@ -90,6 +93,7 @@ cp %{SOURCE5} src/window.png
 %patch0 -p1 -b .inline-icons
 %patch1 -p1 -b .fix-renaming
 %patch2 -p1 -b .rendering
+%patch3 -p1 -b .csd
 
 # needed for the patch and for git snapshot builds
 autoreconf -if
@@ -169,8 +173,11 @@ fi
 
 
 %changelog
+* Sun Oct 26 2014 Wolfgang Ulbrich <chat-to-me at raveit.de> - 1.8.2-4
+- fix resizing of CSD applications
+
 * Tue Oct 21 2014 Wolfgang Ulbrich <chat-to-me at raveit.de> - 1.8.2-3
--fix rendering issue
+- fix rendering issue
 - https://github.com/mate-desktop/marco/pull/141
 
 * Fri Oct 03 2014 Wolfgang Ulbrich <chat-to-me at raveit.de> - 1.8.2-2
diff --git a/marco_csd_resizing.patch b/marco_csd_resizing.patch
new file mode 100644
index 0000000..92fd9e1
--- /dev/null
+++ b/marco_csd_resizing.patch
@@ -0,0 +1,52 @@
+diff --git a/src/ui/frames.c b/src/ui/frames.c
+index 57b7318..75359de 100644
+--- a/src/ui/frames.c
++++ b/src/ui/frames.c
+@@ -1627,7 +1627,6 @@ meta_frames_button_press_event (GtkWidget      *widget,
+             control == META_FRAME_CONTROL_RESIZE_W))
+     {
+       MetaGrabOp op;
+-      gboolean titlebar_is_onscreen;
+ 
+       op = META_GRAB_OP_NONE;
+ 
+@@ -1662,28 +1661,16 @@ meta_frames_button_press_event (GtkWidget      *widget,
+           break;
+         }
+ 
+-      meta_core_get (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), frame->xwindow,
+-                     META_CORE_IS_TITLEBAR_ONSCREEN, &titlebar_is_onscreen,
+-                     META_CORE_GET_END);
+-
+-      if (!titlebar_is_onscreen)
+-        meta_core_show_window_menu (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()),
+-                                    frame->xwindow,
+-                                    event->x_root,
+-                                    event->y_root,
+-                                    event->button,
+-                                    event->time);
+-      else
+-        meta_core_begin_grab_op (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()),
+-                                 frame->xwindow,
+-                                 op,
+-                                 TRUE,
+-                                 TRUE,
+-                                 event->button,
+-                                 0,
+-                                 event->time,
+-                                 event->x_root,
+-                                 event->y_root);
++      meta_core_begin_grab_op (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()),
++                               frame->xwindow,
++                               op,
++                               TRUE,
++                               TRUE,
++                               event->button,
++                               0,
++                               event->time,
++                               event->x_root,
++                               event->y_root);
+     }
+   else if (control == META_FRAME_CONTROL_TITLE &&
+            event->button == 1)
+


More information about the scm-commits mailing list