summaryrefslogtreecommitdiff
path: root/gnu/packages/patches
diff options
context:
space:
mode:
authorArun Isaac <arunisaac@systemreboot.net>2018-08-03 18:21:19 +0530
committerArun Isaac <arunisaac@systemreboot.net>2018-08-03 18:21:19 +0530
commitfa0a6d93d80a378c86d9d918624167026eab033a (patch)
tree2d52a6154342adbb88571f386214b4c7898eded7 /gnu/packages/patches
parentae7c1c3704187405a1c4e7c039bf70df9327e6a6 (diff)
gnu: emacs-exwm: Fix fullscreen issue.
* gnu/packages/patches/emacs-exwm-fix-fullscreen-issue.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it. * gnu/packages/emacs.scm (emacs-exwm)[sources]: Add emacs-exwm-fix-fullscreen-issue.patch to patches.
Diffstat (limited to 'gnu/packages/patches')
-rw-r--r--gnu/packages/patches/emacs-exwm-fix-fullscreen-issue.patch27
1 files changed, 27 insertions, 0 deletions
diff --git a/gnu/packages/patches/emacs-exwm-fix-fullscreen-issue.patch b/gnu/packages/patches/emacs-exwm-fix-fullscreen-issue.patch
new file mode 100644
index 0000000000..5c9bd36598
--- /dev/null
+++ b/gnu/packages/patches/emacs-exwm-fix-fullscreen-issue.patch
@@ -0,0 +1,27 @@
+From 13a14579cc1bb772735f895dd5b4b90c6812f3ee Mon Sep 17 00:00:00 2001
+From: Chris Feng <chris.w.feng@gmail.com>
+Date: Sun, 29 Jul 2018 00:00:00 +0000
+Subject: [PATCH] Fix issues with destroying full screen X windows
+
+* exwm-manage.el (exwm-manage--unmanage-window): Set the Emacs window
+of an full screen X window as non-dedicated before killing its buffer
+so as not to cause other side effects.
+---
+ exwm-manage.el | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/exwm-manage.el b/exwm-manage.el
+index a0a9e05..349157f 100644
+--- a/exwm-manage.el
++++ b/exwm-manage.el
+@@ -392,6 +392,10 @@ manager is shutting down."
+ :window window :parent exwm--root :x 0 :y 0))
+ (xcb:+request exwm--connection
+ (make-instance 'xcb:DestroyWindow :window container))))
++ (when (exwm-layout--fullscreen-p)
++ (let ((window (get-buffer-window)))
++ (when window
++ (set-window-dedicated-p window nil))))
+ (exwm-manage--set-client-list)
+ (xcb:flush exwm--connection))
+ (let ((kill-buffer-func