unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#42387] [PATCH] gnu: emacs-exwm: Fix fullscreen states.
@ 2020-07-16 10:58 Diego Nicola Barbato
  2020-07-16 23:51 ` bug#42387: " Nicolas Goaziou
  0 siblings, 1 reply; 2+ messages in thread
From: Diego Nicola Barbato @ 2020-07-16 10:58 UTC (permalink / raw)
  To: 42387

[-- Attachment #1: Type: text/plain, Size: 139 bytes --]

Hey Guix,

Updating EXWM to 0.24 (commit: 2a56b2c) broke fullscreen mode.  The
following patch applies the upstream fix.

Regards,

Diego


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-gnu-emacs-exwm-Fix-fullscreen-states.patch --]
[-- Type: text/x-patch, Size: 3788 bytes --]

From ae47fddd3ebafacf05b2150c8e9627e86eb122a6 Mon Sep 17 00:00:00 2001
From: Diego Nicola Barbato <dnbarbato@posteo.de>
Date: Thu, 16 Jul 2020 11:39:27 +0200
Subject: [PATCH] gnu: emacs-exwm: Fix fullscreen states.

* gnu/packages/patches/emacs-exwm-fix-fullscreen-states.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/emacs-xyz.scm (emacs-exwm)[source]: Use it.
---
 gnu/local.mk                                  |  1 +
 gnu/packages/emacs-xyz.scm                    |  4 +-
 .../emacs-exwm-fix-fullscreen-states.patch    | 39 +++++++++++++++++++
 3 files changed, 43 insertions(+), 1 deletion(-)
 create mode 100644 gnu/packages/patches/emacs-exwm-fix-fullscreen-states.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index ddd024677a..e016c2178a 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -905,6 +905,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/elm-compiler-fix-map-key.patch		\
   %D%/packages/patches/emacs27-exec-path.patch			\
   %D%/packages/patches/emacs-exec-path.patch			\
+  %D%/packages/patches/emacs-exwm-fix-fullscreen-states.patch	\
   %D%/packages/patches/emacs-fix-scheme-indent-function.patch	\
   %D%/packages/patches/emacs-json-reformat-fix-tests.patch	\
   %D%/packages/patches/emacs-highlight-stages-add-gexp.patch	\
diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 537638bd36..9a43a23010 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -10900,7 +10900,9 @@ It should enable you to implement low-level X11 applications.")
        (uri (string-append "https://elpa.gnu.org/packages/"
                            "exwm-" version ".tar"))
        (sha256
-        (base32 "0lj1a3cmbpf4h6x8k6x8cdm1qb51ca6filydnvi5zcda8zpl060s"))))
+        (base32 "0lj1a3cmbpf4h6x8k6x8cdm1qb51ca6filydnvi5zcda8zpl060s"))
+       (patches
+        (search-patches "emacs-exwm-fix-fullscreen-states.patch"))))
     (build-system emacs-build-system)
     (propagated-inputs
      `(("emacs-xelb" ,emacs-xelb)))
diff --git a/gnu/packages/patches/emacs-exwm-fix-fullscreen-states.patch b/gnu/packages/patches/emacs-exwm-fix-fullscreen-states.patch
new file mode 100644
index 0000000000..6d31021f67
--- /dev/null
+++ b/gnu/packages/patches/emacs-exwm-fix-fullscreen-states.patch
@@ -0,0 +1,39 @@
+From edb930005b0ba83051ca8a59b493e9a3c8ef580a Mon Sep 17 00:00:00 2001
+From: Chris Feng <chris.w.feng@gmail.com>
+Date: Sun, 14 Jun 2020 00:00:00 +0000
+Subject: [PATCH] Fix fullscreen states
+
+* exwm-layout.el (exwm-layout-set-fullscreen,
+exwm-layout-unset-fullscreen): Use `exwm--id' for interactive use.
+(exwm-layout-unset-fullscreen): Mandatorily clear fullscreen states.
+---
+ exwm-layout.el | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/exwm-layout.el b/exwm-layout.el
+index 170c2be..79d0c95 100644
+--- a/exwm-layout.el
++++ b/exwm-layout.el
+@@ -205,7 +205,7 @@
+                        :border-width 0
+                        :stack-mode xcb:StackMode:Above))
+     (cl-pushnew xcb:Atom:_NET_WM_STATE_FULLSCREEN exwm--ewmh-state)
+-    (exwm-layout--set-ewmh-state id)
++    (exwm-layout--set-ewmh-state exwm--id)
+     (xcb:flush exwm--connection)
+     (set-window-dedicated-p (get-buffer-window) t)
+     (exwm-input--release-keyboard exwm--id)))
+@@ -233,7 +233,9 @@
+       (let ((window (get-buffer-window nil t)))
+         (when window
+           (exwm-layout--show exwm--id window))))
+-    (exwm-layout--set-ewmh-state id)
++    (setq exwm--ewmh-state
++          (delq xcb:Atom:_NET_WM_STATE_FULLSCREEN exwm--ewmh-state))
++    (exwm-layout--set-ewmh-state exwm--id)
+     (xcb:flush exwm--connection)
+     (set-window-dedicated-p (get-buffer-window) nil)
+     (when (eq 'line-mode exwm--selected-input-mode)
+-- 
+2.26.2
+
-- 
2.26.2


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* bug#42387: [PATCH] gnu: emacs-exwm: Fix fullscreen states.
  2020-07-16 10:58 [bug#42387] [PATCH] gnu: emacs-exwm: Fix fullscreen states Diego Nicola Barbato
@ 2020-07-16 23:51 ` Nicolas Goaziou
  0 siblings, 0 replies; 2+ messages in thread
From: Nicolas Goaziou @ 2020-07-16 23:51 UTC (permalink / raw)
  To: Diego Nicola Barbato; +Cc: 42387-done

Hello,

Diego Nicola Barbato <dnbarbato@posteo.de> writes:

> Updating EXWM to 0.24 (commit: 2a56b2c) broke fullscreen mode.  The
> following patch applies the upstream fix.

I added a comment about it and applied the patch. Thank you.

Regards,
-- 
Nicolas Goaziou




^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2020-07-16 23:52 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-07-16 10:58 [bug#42387] [PATCH] gnu: emacs-exwm: Fix fullscreen states Diego Nicola Barbato
2020-07-16 23:51 ` bug#42387: " Nicolas Goaziou

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).