Bug 671088 - Gnome panel layout breaks on geometry/resolution change
Summary: Gnome panel layout breaks on geometry/resolution change
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: gnome-panel
Version: 6.1
Hardware: Unspecified
OS: Unspecified
low
medium
Target Milestone: rc
: ---
Assignee: Ray Strode [halfline]
QA Contact: desktop-bugs@redhat.com
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2011-01-20 09:25 UTC by David Jaša
Modified: 2011-05-19 14:12 UTC (History)
2 users (show)

Fixed In Version: gnome-panel-2.30.2-12.el6
Doc Type: Bug Fix
Doc Text:
Clone Of:
: 682858 (view as bug list)
Environment:
Last Closed: 2011-05-19 14:12:40 UTC
Target Upstream Version:


Attachments (Terms of Use)
screenshot (664.76 KB, image/png)
2011-01-20 09:26 UTC, David Jaša
no flags Details
gconf configuration (12.63 KB, text/plain)
2011-01-20 09:26 UTC, David Jaša
no flags Details
clean configuration @ 1600x900 (94.03 KB, text/plain)
2011-02-16 15:56 UTC, David Jaša
no flags Details
clean configuration @ 1600x900 (1.06 MB, image/png)
2011-02-16 15:56 UTC, David Jaša
no flags Details
configuration after going 1920x1080 and back (94.04 KB, text/plain)
2011-02-16 15:57 UTC, David Jaša
no flags Details
screenshot after going 1920x1080 and back to 1600x900 (1.06 MB, image/png)
2011-02-16 15:59 UTC, David Jaša
no flags Details
reproducer on -11 (18.62 KB, text/plain)
2011-02-23 14:17 UTC, David Jaša
no flags Details
reproducer on -11 (567.79 KB, image/png)
2011-02-23 14:17 UTC, David Jaša
no flags Details
reproducer on -11 (18.62 KB, text/plain)
2011-02-23 14:18 UTC, David Jaša
no flags Details
reproducer on -11 (1.13 MB, image/png)
2011-02-23 14:18 UTC, David Jaša
no flags Details
backtrace from abrt (23.09 KB, text/plain)
2011-03-01 11:08 UTC, Radek Lat
no flags Details
reproducer on -12 (18.88 KB, text/plain)
2011-03-04 16:06 UTC, David Jaša
no flags Details
screenshot of reproducer on -12 (54.73 KB, image/png)
2011-03-04 16:08 UTC, David Jaša
no flags Details
reproducer on -12 (18.62 KB, text/plain)
2011-03-04 16:08 UTC, David Jaša
no flags Details
screenshot of reproducer on -12 (49.93 KB, image/png)
2011-03-04 16:11 UTC, David Jaša
no flags Details


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2011:0710 0 normal SHIPPED_LIVE gnome-panel bug fix and enhancement update 2011-05-18 18:09:57 UTC

Description David Jaša 2011-01-20 09:25:27 UTC
Description of problem:
Sometimes, when one either changes screen resolution or moves the panel to the side and back, order of applets and lauchers is not preserved. See the screenshot - it was taken on box that had 1024x768 after install and then the resolution was changed to 1920x1080 w/o any changes to panel config. The Trash and Date/time applets kept their absolute positions while notification area and workspace switcher moved to the edge.

Expected behaviour is:
1. keep order of applets
2. keep zero-width spaces zero
3. expand/contract non-zero spaces in proportion with panel width change


Version-Release number of selected component (if applicable):
gnome-panel.x86_64                                            2.30.2-5.el6                                            @anaconda-RedHatEnterpriseLinux-201012150723.x86_64/6.1

Comment 1 David Jaša 2011-01-20 09:26:13 UTC
Created attachment 474423 [details]
screenshot

Comment 2 David Jaša 2011-01-20 09:26:59 UTC
Created attachment 474425 [details]
gconf configuration

Comment 4 Scott Dodson 2011-02-08 16:13:53 UTC
Adding the keyword regression because I never saw this with RHEL6.0 and it's happening every time since upgrading to gnome-panel-2.30.2-9

Comment 6 Scott Dodson 2011-02-16 15:31:05 UTC
Reproducer steps.

1) Start out with my laptop docked, closed and using two external monitors
 in the following config :

[sdodson@dhcp242-213 ~]$ xrandr
Screen 0: minimum 320 x 200, current 2960 x 1050, maximum 8192 x 8192
LVDS1 disconnected (normal left inverted right x axis y axis)
VGA1 connected 1280x1024+1680+0 (normal left inverted right x axis y axis) 338mm x 270mm
   1280x1024      60.0 +   75.0* 
   1280x960       75.0  
   1152x864       75.0  
   1024x768       75.1     70.1     60.0  
   832x624        74.6  
   800x600        72.2     75.0     60.3     56.2  
   640x480        72.8     75.0     66.7     60.0  
   720x400        70.1  
HDMI1 disconnected (normal left inverted right x axis y axis)
DP1 disconnected (normal left inverted right x axis y axis)
HDMI2 disconnected (normal left inverted right x axis y axis)
HDMI3 connected 1680x1050+0+0 (normal left inverted right x axis y axis) 495mm x 291mm
   1680x1050      60.0*+
   1600x1200      60.0  
   1280x1024      75.0     60.0  
   1280x960       60.0  
   1152x864       75.0  
   1024x768       75.1     70.1     60.0  
   832x624        74.6  
   800x600        72.2     75.0     60.3     56.2  
   640x480        72.8     75.0     66.7     60.0  
   720x400        70.1  
DP2 disconnected (normal left inverted right x axis y axis)
DP3 disconnected (normal left inverted right x axis y axis)

2) Suspend, un-dock

3) Resume laptop by opening the lid, now using only the laptop display in the following config :

Screen 0: minimum 320 x 200, current 1440 x 900, maximum 8192 x 8192
LVDS1 connected 1440x900+0+0 (normal left inverted right x axis y axis) 304mm x 190mm
   1440x900       60.1*+   59.9     59.9     50.2  
   1360x768       60.0  
   1280x800       59.8     59.9  
   1280x768       59.9     60.0  
   1024x768       60.0  
   800x600        60.3     56.2  
   848x480        60.0  
   640x480        59.9  
VGA1 disconnected (normal left inverted right x axis y axis)
HDMI1 disconnected (normal left inverted right x axis y axis)
DP1 disconnected (normal left inverted right x axis y axis)
HDMI2 disconnected (normal left inverted right x axis y axis)
HDMI3 disconnected (normal left inverted right x axis y axis)
DP2 disconnected (normal left inverted right x axis y axis)
DP3 disconnected (normal left inverted right x axis y axis)

4) Observe the problem


This problem does not occur when I go in the reverse, ie: from 1440x900 to 2960x1050

Comment 9 David Jaša 2011-02-16 15:56:15 UTC
Created attachment 479143 [details]
clean configuration @ 1600x900

Comment 10 David Jaša 2011-02-16 15:56:48 UTC
Created attachment 479144 [details]
clean configuration @ 1600x900

Comment 11 David Jaša 2011-02-16 15:57:47 UTC
Created attachment 479145 [details]
configuration after going 1920x1080 and back

Comment 12 David Jaša 2011-02-16 15:59:12 UTC
Created attachment 479146 [details]
screenshot after going 1920x1080 and back to 1600x900

note that panel keeps expanded to now invisible area - kind of reverse to original problem

Comment 13 Scott Dodson 2011-02-16 16:04:40 UTC
I confirmed that reverting my system to gnome-panel 2.30.2-6.el6 doesn't exhibit the problem I've described. Though I'm not sure now that David and I are describing the same exact problem.

Comment 14 David Jaša 2011-02-16 17:00:57 UTC
My attachments in comments 9-12 apply to actual version in nightly RHEL 6. I'll test with reverted version tomorrow, if it is still in repository.

Comment 15 Ray Strode [halfline] 2011-02-16 18:08:15 UTC
I found a defect in the patch that could potentially explain both issues.

I'm only able to reproduce Scott's, though, so I would appreciate confirmation from David that my fix works when posted.

Comment 16 Marian Krcmarik 2011-02-17 11:55:57 UTC
The fix works for my problem I described yesterday to halfline and the problem doesn't appear anymore.
(using multi-monitors, one monitor is running in less than native resolution, the monitor running in native resolution has a panel on it and when you correct the paneless monitor to native resolution the panel that's on the other monitor jumps and spans both monitors).

Comment 17 David Jaša 2011-02-17 16:28:14 UTC
I also couldn't reproduce any bug symptoms so I set qa_ack+.

Comment 18 Scott Dodson 2011-02-17 16:58:04 UTC
Confirmed, this addresses the problem I was seeing.

Comment 20 David Jaša 2011-02-23 14:17:00 UTC
Created attachment 480460 [details]
reproducer on -11

Comment 21 David Jaša 2011-02-23 14:17:28 UTC
Created attachment 480461 [details]
reproducer on -11

Comment 22 David Jaša 2011-02-23 14:18:06 UTC
Created attachment 480462 [details]
reproducer on -11

Comment 23 David Jaša 2011-02-23 14:18:49 UTC
Created attachment 480463 [details]
reproducer on -11

Comment 24 David Jaša 2011-02-23 14:27:27 UTC
Setting back to ASSIGNED because I reproduced it again on gnome-panel-2.30.2-11.el6.x86_64. Gnome was configured by gnome-display-properties to only use external monitor if present. I did two test runs with my normal user configuration without any on-the-fly changes to monitor layout, once in 1600x900 and second time in 1920x1080. Note that position of dock on top panel and trash icon on bottom pannel changes with respect to other applets, a thing that should never happen without explicit user's action.

Comment 25 Ray Strode [halfline] 2011-02-25 00:09:38 UTC
Okay, I found another defect in the patch that was similar to the previous defect (dealing with repositioning where the previous dealt with resizing).

Should be good to go now.

Comment 26 Ray Strode [halfline] 2011-02-28 16:00:54 UTC
Radek mentioned still seeing some issues.  He's going to update the report with more details.

Comment 27 Radek Lat 2011-03-01 11:08:13 UTC
Created attachment 481586 [details]
backtrace from abrt

Adding a backtrace with debuginfo packages installed as requested by halfline.

Comment 28 Ray Strode [halfline] 2011-03-01 16:14:51 UTC
So that backtrace is actually a problem from bug 585312

I've found the issue and will update that bug report appropriately.

Comment 29 David Jaša 2011-03-04 16:06:50 UTC
Created attachment 482315 [details]
reproducer on -12

Comment 30 David Jaša 2011-03-04 16:08:09 UTC
Created attachment 482317 [details]
screenshot of reproducer on -12

Comment 31 David Jaša 2011-03-04 16:08:46 UTC
Created attachment 482318 [details]
reproducer on -12

Comment 32 David Jaša 2011-03-04 16:11:36 UTC
Created attachment 482320 [details]
screenshot of reproducer on -12

Still reproducible on -12 the same way as on -11: set up gnome to use only external monitor when docked, log out, undock laptop, log in and see different applet order.

Comment 33 Ray Strode [halfline] 2011-03-07 19:38:31 UTC
So I hammered on this pretty hard today.  The bug mentioned in comment 24 is actually different than the one mentioned in comment 0, and it's even reproducible with the gnome-panel shipped originally in rhel6.

To reproduce, just do something like

while true; do pkill -f gnome-panel; sleep 1; done

and watch the applets in the top panel along the corner occasionally switch places with each other.  Since it's an independent issue, we need to track it separately in a new bug report.  I'll clone this one. 

My theory at the moment is it's race between the individual applets loading.  The way the panel gets them in place is it sets them all as "right stuck" and it puts one applet at pixel 0 from the right, one applet at pixel 1 from the right, one applet at pixel 2 from the right, etc.

Each applet is more than one pixel wide though, so as soon as one is allocated, it will overlap the initials position of the others.  I belive this means, they get pushed over, such that if an applet on the right gets loaded after an applet on the left it may end up shown to the left.  It's just a theory and I'll need to investigate more on the other report.

We're getting down to the wire for 6.1, though, so I think we may need punt fixing this for another time.

Comment 35 errata-xmlrpc 2011-05-19 14:12:40 UTC
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on therefore solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.

http://rhn.redhat.com/errata/RHBA-2011-0710.html


Note You need to log in before you can comment on or make changes to this bug.