about summary refs log tree commit diff
path: root/exwm-input.el
diff options
context:
space:
mode:
authorChris Feng <chris.w.feng@gmail.com>2016-07-30T11·01+0800
committerChris Feng <chris.w.feng@gmail.com>2016-07-30T11·01+0800
commit1e78045f958edbb2f3ef7c21953f8b55b3bbae42 (patch)
treeddfd21401efb21e2e435622f8747c846b7178571 /exwm-input.el
parentb87f4fbd7170ec156d6fa575584f55c25dd1da1b (diff)
Add restart support
* exwm-input.el (exwm-input--exit): Cancel timers.

* exwm-manage.el (exwm-manage--manage-window): Add reparented X windows
to save-set.
* exwm-systemtray.el (exwm-systemtray--embed): Add embeded icons to
save-set.

* exwm-workspace.el (exwm-workspace--confirm-kill-emacs): No need to
unmanage; also hide Emacs frames; always call `exwm--exit'.

* exwm.el (exwm-restart): New command for restarting EXWM.
(exwm--exit-icccm-ewmh): New function for cleaning up ICCCM/EWMH
properties.
(exwm-exit-hook): Update doc string.
(exwm--exit): Call `exwm--exit-icccm-ewmh' and do not reset variables.
Diffstat (limited to 'exwm-input.el')
-rw-r--r--exwm-input.el6
1 files changed, 5 insertions, 1 deletions
diff --git a/exwm-input.el b/exwm-input.el
index f7a67040d6..555cc87f9f 100644
--- a/exwm-input.el
+++ b/exwm-input.el
@@ -659,7 +659,11 @@ Its usage is the same with `exwm-input-set-simulation-keys'."
   (remove-hook 'post-command-hook #'exwm-input--on-post-command)
   (remove-hook 'buffer-list-update-hook #'exwm-input--on-buffer-list-update)
   (remove-hook 'exwm-workspace-list-change-hook
-               #'exwm-input--update-global-prefix-keys))
+               #'exwm-input--update-global-prefix-keys)
+  (when exwm-input--update-focus-defer-timer
+    (cancel-timer exwm-input--update-focus-defer-timer))
+  (when exwm-input--update-focus-timer
+    (cancel-timer exwm-input--update-focus-timer)))