about summary refs log tree commit diff
diff options
context:
space:
mode:
authorChris Feng <chris.w.feng@gmail.com>2019-09-14T00·00+0000
committerChris Feng <chris.w.feng@gmail.com>2019-09-14T00·00+0000
commit10766e232b607755252fb22e212fb91efa00c6b9 (patch)
treef36496bd1e7d8057d0002bd3ce703ac71a45f6bc
parentf167bc979c76edb43bc63cffebec095601446477 (diff)
Support starting EXWM from Emacs server not in daemon mode
* exwm.el (exwm-enable): Start EXWM from `window-setup-hook' or
`after-make-frame-functions', whichever comes first.
-rw-r--r--exwm.el9
1 files changed, 5 insertions, 4 deletions
diff --git a/exwm.el b/exwm.el
index 87ce18642d06..9d60d5cd08e3 100644
--- a/exwm.el
+++ b/exwm.el
@@ -892,10 +892,11 @@ manager.  If t, replace it, if nil, abort and ask the user if `ask'."
      ;; Ignore unrecognized command line arguments.  This can be helpful
      ;; when EXWM is launched by some session manager.
      (push #'vector command-line-functions)
-     (add-hook (if (daemonp)
-                   'after-make-frame-functions ;emacsclient
-                 'window-setup-hook)           ;emacs
-               #'exwm-init t)
+     ;; In case EXWM is to be started from a graphical Emacs instance.
+     (add-hook 'window-setup-hook #'exwm-init t)
+     ;; In case EXWM is to be started with emacsclient.
+     (add-hook 'after-make-frame-functions #'exwm-init t)
+     ;; Manage the subordinate Emacs server.
      (add-hook 'kill-emacs-hook #'exwm--server-stop)
      (dolist (i exwm-blocking-subrs)
        (advice-add i :around #'exwm--server-eval-at)))))