GNOME Bugzilla – Bug 507873
Two panels at one edge of the screen cause bad maximization
Last modified: 2009-08-11 23:04:07 UTC
Please describe the problem: See below. Steps to reproduce: 1. Create two panels extended to the width (or height) of the screen 2. Position these two panels along one edge of the screen 3. Launch any application with a maximizable window and maximize it. Actual results: The window becomes too broad/high, as if the second panel did not exist at all. If you move one of the panels to another edge now, the problem disappears: both panels are taken into account by maximized windows. Expected results: The window takes free screen estate without slipping under the panels. Does this happen every time? Yes. Other information: It is easiest to desribe the reason by means of xwininfo and xprop. Here is the output for the first (nearest to the right edge of my screen) panel: $ xprop | grep STRUT _NET_WM_STRUT_PARTIAL(CARDINAL) = 0, 28, 0, 0, 0, 0, 0, 1049, 0, 0, 0, 0 _NET_WM_STRUT(CARDINAL) = 0, 28, 0, 0 $ xwininfo xwininfo: Please select the window about which you would like information by clicking the mouse in that window. xwininfo: Window id: 0x100002b "Правая расширенная краевая панель" Absolute upper-left X: 1652 Absolute upper-left Y: 0 Relative upper-left X: 1652 Relative upper-left Y: 0 Width: 28 Height: 1050 Depth: 24 Visual Class: TrueColor Border width: 0 Class: InputOutput Colormap: 0x20 (installed) Bit Gravity State: NorthWestGravity Window Gravity State: NorthWestGravity Backing Store State: NotUseful Save Under State: no Map State: IsViewable Override Redirect State: no Corners: +1652+0 -0+0 -0-0 +1652-0 -geometry 28x1050-0+0 $ And here is the output for the second panel: $ xprop | grep STRUT _NET_WM_STRUT_PARTIAL(CARDINAL) = 0, 28, 0, 0, 0, 0, 0, 1049, 0, 0, 0, 0 _NET_WM_STRUT(CARDINAL) = 0, 28, 0, 0 $ xwininfo xwininfo: Please select the window about which you would like information by clicking the mouse in that window. xwininfo: Window id: 0x1000003 "Правая расширенная краевая панель" Absolute upper-left X: 1522 Absolute upper-left Y: 0 Relative upper-left X: 1522 Relative upper-left Y: 0 Width: 130 Height: 1050 Depth: 24 Visual Class: TrueColor Border width: 0 Class: InputOutput Colormap: 0x20 (installed) Bit Gravity State: NorthWestGravity Window Gravity State: NorthWestGravity Backing Store State: NotUseful Save Under State: no Map State: IsViewable Override Redirect State: no Corners: +1522+0 -28+0 -28-0 +1522-0 -geometry 130x1050-28+0 $ Obviously, _NET_WM_STRUT is set incorrectly (it should be 158 for the second panel).
This problem still exists in 2.24.1 on Ubuntu 8.10. Could someone please have a look at it?
Further investigation (now with version 2.26.1) reveals that this only happens with vertical panels, horizontal ones set the struts correctly.
Created attachment 133618 [details] [review] Fixes incorrect struts of vertical panels when they are stacked This one-line patch fixes a typo that led to problems.
Are there problems with this patch? It doesn't seem to break anything, it rather fixes things :)
I can at least confirm the bug. I'm trying to figure out how to put your patch to work but it'll be a first time for me... =O) -compilers n' stuff!
Your patch works. Ubuntu 9.04/gnome 2.26.1 (single monitor)
Anybody of gnome-panel developers, please review the patch and apply it. It's just an obvious typo fix - 2 minutes of your time :)
http://i194.photobucket.com/albums/z305/owallgren/Screenshot.png I need no further enhancements to my computer. :)
Thanks!