emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

master 20662ecd21: Handle screen size changes if the RandR library isn't


From: Po Lu
Subject: master 20662ecd21: Handle screen size changes if the RandR library isn't available
Date: Sun, 22 May 2022 22:56:02 -0400 (EDT)

branch: master
commit 20662ecd214fbe2a9f200085b9194a6f7677d447
Author: Po Lu <luangruo@yahoo.com>
Commit: Po Lu <luangruo@yahoo.com>

    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.
---
 src/xterm.c | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/src/xterm.c b/src/xterm.c
index 2465dbd863..dc1daaf6e1 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;



reply via email to

[Prev in Thread] Current Thread [Next in Thread]