GNOME Bugzilla – Bug 563112
gdk misses screen size change
Last modified: 2009-03-05 19:08:13 UTC
Please describe the problem: When using xrandr to change to a dual screen layout with in XFCE, gdk does not appear to emit a signal to xfwm. This occured with the upgrade from gtk+ 2.14.4 to 2.14.5. Steps to reproduce: 1. Log into XFCE 2. xrandr --output LVDS --mode 1024x768 --pos 1024x0 --output VGA --mode 1024x768 --pos 0x0 Actual results: Windows can not be moved all the way across or maximized on the the second screen Expected results: Second screen functions normally. Does this happen every time? Yes. Other information: Reverting this commit fixes the issue: 2008-10-22 Matthias Clasen <mclasen@redhat.com> Merged from trunk: * gdk/x11/gdkscreen-x11.c: Only emit size-changed if the screen size actually changed.
Not that xrandr reports the correct screen dimensions before and after switching to dual screen. Restarting xfwm results in the correct dimensions being detected.
Created attachment 124137 [details] test app Here is a little test app. Can you run that, and see if it reports anything while you change the screen layout with xrandr ? For me, it does, with 2.14.5
The program outputs: monitors changed: 2 monitors 0: x 0, y 1024, width 768, height 165793408 1024: x 0, y 1024, width 768, height 165793408 screen size changed: width 2048, height 768 When I revert the commit mentioned above to workaround this issue, the same thing printed three times. (Different long number at the end where the is a mistake in you test app).
Yeah, you'll have to fix the obvious bug to make the printed values correct. But if you get the events, there is nothing wrong on the GTK side. Maybe talk to the xfwm guys ?
I think this is http://svn.gnome.org/viewvc/gtk%2B/trunk/gdk/x11/gdkdisplay-x11.c?r1=22327&r2=22328&pathrev=22328 I'll close this bug; please reopen if you still get it with all the newest changes to the RANDR code in GDK.