After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 636842 - Panel does not set strut property correctly when adjacent to another screen
Panel does not set strut property correctly when adjacent to another screen
Status: RESOLVED FIXED
Product: gnome-panel
Classification: Other
Component: general
2.32.x
Other Linux
: Normal normal
: ---
Assigned To: Panel Maintainers
Panel Maintainers
Depends on:
Blocks:
 
 
Reported: 2010-12-09 03:20 UTC by Sam Spilsbury
Modified: 2020-03-17 01:51 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Sam Spilsbury 2010-12-09 03:20:16 UTC
Hi,

It seems that the gnome panel does not set a valid _NET_WM_STRUT or _NET_WM_STRUT_PARTIAL property when there is another screen directly adjacent to the panel. This messes up maximization behavior with a number of window managers, including metacity, mutter and compiz.

Output of xprop grep for _NET_WM_STRUT and _NET_WM_STRUT_PARTIAL when there is an adjacent screen:


smspillaz@XPS-1010 ~/Source/Compiz/dev/dev/core/build> xprop | grep STRUT
_NET_WM_STRUT_PARTIAL(CARDINAL) = 0, 0, 0, 0, 0, 0, 24, 1025, 0, 0, 0, 0
_NET_WM_STRUT(CARDINAL) = 0, 0, 0, 0

Output when no adjacent screen:

smspillaz@XPS-1010 ~/Source/Compiz/dev/dev/core/build> xprop | grep STRUT
_NET_WM_STRUT_PARTIAL(CARDINAL) = 0, 24, 0, 0, 0, 0, 24, 1025, 0, 0, 0, 0
_NET_WM_STRUT(CARDINAL) = 0, 24, 0, 0
Comment 1 zack@upsilon.cc 2011-01-17 13:31:11 UTC
I can reproduce this bug with GNOME panel 2.30.2.

In my case the problem is way more severe, as when using an adjacent external monitor in portrait mode, the bottom GNOME panel located on the first monitor (my laptop's) struts up to almost all monitor height. This masses up badly tiling window manager such as Awesome, as they are left with very little space to arrange windows.

Here is the output of xprop with and without xinerama in use:

# with xinerama off
$ xprop | grep _NET_WM_STRUT
_NET_WM_STRUT_PARTIAL(CARDINAL) = 0, 0, 0, 25, 0, 0, 0, 0, 0, 0, 0, 1439
_NET_WM_STRUT(CARDINAL) = 0, 0, 0, 25

# with xinerama on
$ xprop | grep _NET_WM_STRUT
_NET_WM_STRUT_PARTIAL(CARDINAL) = 0, 0, 0, 725, 0, 0, 0, 0, 0, 0, 0, 1439
_NET_WM_STRUT(CARDINAL) = 0, 0, 0, 725

(725 pixel is almost all the vertical space of my laptop's screen)

Before discovering it is a panel-specific issue, I had reported this against Awesome at https://awesome.naquadah.org/bugs/index.php?do=details&task_id=858
Comment 2 Alberts Muktupāvels 2020-03-17 01:51:22 UTC
Fixed in 3.36.0.