mirror of
https://gitlab.freedesktop.org/xorg/xserver.git
synced 2026-05-05 01:48:02 +02:00
XQuartz: Call RRScreenSizeNotify after handling externally-generated XP_EVENT_DISPLAY_CHANGED
We get an XP_EVENT_DISPLAY_CHANGED event when our display configuration is
changed. If this change was caused by hotplugging a monitor or Mac Display
Preferences changes by the user, we need to call RRScreenSizeNotify in order
to ensure new connections get the correct screen size.
http://xquartz.macosforge.org/trac/ticket/460
Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
(cherry picked from commit 418bb57a39)
This commit is contained in:
parent
824ebda72a
commit
e7871a9512
2 changed files with 4 additions and 2 deletions
|
|
@ -279,10 +279,9 @@ static void DarwinEventHandler(int screenNum, InternalEvent *ie, DeviceIntPtr de
|
|||
case kXquartzDisplayChanged:
|
||||
DEBUG_LOG("kXquartzDisplayChanged\n");
|
||||
QuartzUpdateScreens();
|
||||
#ifdef RANDR
|
||||
|
||||
/* Update our RandR info */
|
||||
QuartzRandRUpdateFakeModes(TRUE);
|
||||
#endif
|
||||
break;
|
||||
|
||||
default:
|
||||
|
|
|
|||
|
|
@ -244,6 +244,9 @@ void QuartzUpdateScreens(void) {
|
|||
DeliverEvents(pRoot, &e, 1, NullWindow);
|
||||
|
||||
quartzProcs->UpdateScreen(pScreen);
|
||||
|
||||
/* Tell RandR about the new size, so new connections get the correct info */
|
||||
RRScreenSizeNotify(pScreen);
|
||||
}
|
||||
|
||||
static void pokeActivityCallback(CFRunLoopTimerRef timer, void *info) {
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue