generic-poky/meta/recipes-sato/matchbox-desktop/files/window-resize-fix.patch

51 lines
1.6 KiB
Diff
Raw Normal View History

commit 2ef9a98cbda46b5a52e20ce292eebd6ba1f3c3a8
Author: Yu Ke <ke.yu@intel.com>
Date: Sun Mar 6 17:58:45 2011 +0800
desktop: Add configure event handler for desktop resize
desktop need to resize its work area when window manager decorate its
window. Originally it is done by the hook in root window PropertyNotify
event handler, i.e. net_workarea_changed () routine. However, for unknown
reason, the PropertyNotify event does not deliver to the root window,
thus this routine does not work.
this patch fix this issue from another side. Since window manager will also
send configure event to desktop window after decoration, it also works to do
it in configure event handler.
Signed-off-by: Yu Ke <ke.yu@intel.com>
recipes: Add Upstream-Status to multiple recipes gtk+: Add Upstream-Status ed: Add Upstream-Status gnome-common: Add Upstream-Status libmatchbox: Add Upstream-Status matchbox-wm: Add Upstream-Status x11vnc: Add Upstream-Status xtscal: Add Upstream-Status eds-dbus: Add Upstream-Status matchbox-desktop: Add Upstream-Status matchbox-keyboard: Add Upstream-Status matchbox-stroke: Add Upstream-Status matchbox-theme-sato: Add Upstream-Status owl-video-widget: Add Upstream-Status beecrypt: Add Upstream-Status gnome-icon-theme: Add Upstream-Status tslib: Add Upstream-Status libowl-av: Add Upstream-Status sato-icon-theme: Add Upstream-Status web-webkit: Add Upstream-Status metacity: Add Upstream-Status apr: Add Upstream-Status gdk-pixbuf: Add Upstream-Status pcmanfm: Add Upstream-Status gpgme: Add Upstream-Status eee-acpi-scripts: Add Upstream-Status libgalago: Add Upstream-Status python-pygtk: Add Upstream-Status gnome-mime-data: Add Upstream-Status clutter: Add Upstream-Status clutter-gtk: Add Upstream-Status tidy: Add Upstream-Status mutter: Add Upstream-Status xcursor-transparent-theme: Add Upstream-Status leafpad: Add Upstream-Status matchbox-config-gtk: Add Upstream-Status contacts: Add Upstream-Status dates: Add Upstream-Status web: Add Upstream-Status webkit: Add Upstream-Status - Also removed empty fix_im.patch apr-util: Add Upstream-Status libcroco: Add Upstream-Status liboil: Add Upstream-Status libxslt: Add Upstream-Status libglade: Add Upstream-Status gnome-terminal: Add Upstream-Status xev: Add Upstream-Status claws-mail: Add Upstream-Status clipboard-manager: Add Upstream-Status epdfview: Add Upstream-Status kf: Add Upstream-Status qemu: Add Upstream-Status clutter-gst: Add Upstream-Status table: Add Upstream-Status matchbox-panel-2: Add Upstream-Status (From OE-Core rev: 10bdb737c2c4c6996fd035849109a1e07580a6b9) Signed-off-by: Zhai Edwin <edwin.zhai@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-05-12 00:08:05 +00:00
Upstream-Status: Pending
diff --git a/src/desktop.c b/src/desktop.c
index d4fc2fb..5aa2cfc 100644
--- a/src/desktop.c
+++ b/src/desktop.c
@@ -130,6 +130,15 @@ workarea_changed (int x, int y, int w, int h)
gtk_fixed_move (GTK_FIXED (fixed), box, x, y);
}
+static gboolean
+desktop_configure_callback(GtkWindow *window,
+ GdkEvent *event, gpointer data)
+{
+ gtk_widget_set_size_request (box, event->configure.width, event->configure.height);
+ gtk_widget_queue_resize (box);
+ return FALSE;
+}
+
GtkWidget *
create_desktop (void)
{
@@ -176,6 +185,9 @@ create_desktop (void)
/* Set a sane default in case there is no work area defined yet */
workarea_changed (0, 0, screen_w, screen_h);
+ g_signal_connect(G_OBJECT(window), "configure-event",
+ G_CALLBACK(desktop_configure_callback), NULL);
+
#ifdef STANDALONE
/* TODO: fake workarea_changed calls on window resize */
#else