From: Po Lu Date: Mon, 23 May 2022 02:55:48 +0000 (+0800) Subject: Handle screen size changes if the RandR library isn't available X-Git-Tag: emacs-29.0.90~1910^2~496 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=20662ecd214fbe2a9f200085b9194a6f7677d447;p=emacs.git Handle screen size changes if the RandR library isn't available * src/xterm.c (handle_one_xevent): [!HAVE_XRANDR]: Store MONITORS_CHANGED_EVENT upon root window reconfiguration. --- diff --git a/src/xterm.c b/src/xterm.c index 2465dbd863a..dc1daaf6e19 100644 --- a/src/xterm.c +++ b/src/xterm.c @@ -16653,6 +16653,17 @@ handle_one_xevent (struct x_display_info *dpyinfo, /* This function is OK to call even if the X server doesn't support RandR. */ XRRUpdateConfiguration (&configureEvent); +#elif !defined USE_GTK + /* Catch screen size changes even if RandR is not available + on the client. GTK does this internally. */ + + inev.ie.kind = MONITORS_CHANGED_EVENT; + XSETTERMINAL (inev.ie.arg, dpyinfo->terminal); + + /* Store this event now since inev.ie.type could be set to + MOVE_FRAME_EVENT later. */ + kbd_buffer_store_event (&inev.ie); + inev.ie.kind = NO_EVENT; #endif dpyinfo->screen_width = configureEvent.xconfigure.width;