GNOME Bugzilla – Bug 121987
PPosition WM_NORMAL_HINTS flags is not set
Last modified: 2015-03-24 13:00:38 UTC
Description of Problem: The section 4.1.2.3 of the ICCCM implies that if a window want to be placed (by the wm) at the position it requests it should set the PPosition flags of the WM_NORMAL_HINTS. (Note: I do not claim that the x,y field of the WM_NORMAL_HINTS, should be set to the requested position) Steps to reproduce the problem: 1. Start the gnome-panel 2. use xprop to see which hints are set 3. No PPosition ... Actual Results: With some wm a Top Panel is not placed correctly Expected Results: Top Panel always placed at the top How often does this happen? Depends on the window manager Additional Information: Here a patch (current cvs, bugzilla probably break my cut and past ...): Index: panel-toplevel.c =================================================================== RCS file: /cvs/gnome/gnome-panel/gnome-panel/panel-toplevel.c,v retrieving revision 1.34 diff -u -r1.34 panel-toplevel.c --- panel-toplevel.c 5 Sep 2003 13:49:44 -0000 1.34 +++ panel-toplevel.c 11 Sep 2003 09:57:20 -0000 @@ -2488,6 +2488,7 @@ panel_toplevel_realize (GtkWidget *widget) { PanelToplevel *toplevel = (PanelToplevel *) widget; + GdkGeometry dummy; gtk_window_set_decorated (GTK_WINDOW (widget), FALSE); gtk_window_stick (GTK_WINDOW (widget)); @@ -2498,7 +2499,8 @@ panel_struts_set_window_hint (toplevel); panel_xutils_set_window_type (widget->window, PANEL_XUTILS_TYPE_DOCK); xstuff_set_no_group (widget->window); - + /* the WM should honor our position */ + gdk_window_set_geometry_hints (widget->window, &dummy, GDK_HINT_POS); panel_toplevel_move_resize_window (toplevel, TRUE, TRUE); }
Adding patch keyword. Anyone to review the patch?
Thanks, I've committed to HEAD: 2003-11-13 Mark McLoughlin <mark@skynet.ie> * panel-toplevel.c: (panel_toplevel_realize): Make sure PPosition WM_NORMAL_HINT is set to keep some WMs happy. Patch from olivier.chapuis@free.fr in bug #121987.
*** Bug 128734 has been marked as a duplicate of this bug. ***