emacs-diffs
[Top][All Lists]
Advanced

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

master 932cf200bb: Make `x-no-window-manager' cover user time as well


From: Po Lu
Subject: master 932cf200bb: Make `x-no-window-manager' cover user time as well
Date: Sat, 9 Jul 2022 22:50:01 -0400 (EDT)

branch: master
commit 932cf200bb607ed7fdcef82ef3c0f1d1c1bd7c3b
Author: Po Lu <luangruo@yahoo.com>
Commit: Po Lu <luangruo@yahoo.com>

    Make `x-no-window-manager' cover user time as well
    
    * src/xterm.c (x_update_frame_user_time_window):
    (x_wm_supports_1): Respect `x-no-window-manager'.  This makes
    testing some features easier.
---
 src/xterm.c | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/src/xterm.c b/src/xterm.c
index e10edbad3a..4e2d977e60 100644
--- a/src/xterm.c
+++ b/src/xterm.c
@@ -7113,6 +7113,23 @@ x_update_frame_user_time_window (struct frame *f)
   output = FRAME_X_OUTPUT (f);
   dpyinfo = FRAME_DISPLAY_INFO (f);
 
+  if (!NILP (Vx_no_window_manager))
+    {
+      if (output->user_time_window != None
+         && output->user_time_window != FRAME_OUTER_WINDOW (f))
+       {
+         XDestroyWindow (dpyinfo->display, output->user_time_window);
+         XDeleteProperty (dpyinfo->display, FRAME_OUTER_WINDOW (f),
+                          dpyinfo->Xatom_net_wm_user_time_window);
+       }
+      else
+       XDeleteProperty (dpyinfo->display, FRAME_OUTER_WINDOW (f),
+                        dpyinfo->Xatom_net_wm_user_time);
+
+      output->user_time_window = None;
+      return;
+    }
+
   if (!x_wm_supports (f, dpyinfo->Xatom_net_wm_user_time_window))
     {
       if (output->user_time_window == None)
@@ -24115,6 +24132,11 @@ x_wm_supports_1 (struct x_display_info *dpyinfo, Atom 
want_atom)
   unsigned char *tmp_data = NULL;
   Atom target_type = XA_WINDOW;
 
+  /* The user says there's no window manager, so take him up on
+     it.  */
+  if (!NILP (Vx_no_window_manager))
+    return false;
+
   block_input ();
 
   x_catch_errors (dpy);



reply via email to

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