diff options
author | Chris Feng <chris.w.feng@gmail.com> | 2016-07-30T11·01+0800 |
---|---|---|
committer | Chris Feng <chris.w.feng@gmail.com> | 2016-07-30T11·01+0800 |
commit | 1e78045f958edbb2f3ef7c21953f8b55b3bbae42 (patch) | |
tree | ddfd21401efb21e2e435622f8747c846b7178571 /exwm-manage.el | |
parent | b87f4fbd7170ec156d6fa575584f55c25dd1da1b (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-manage.el')
-rw-r--r-- | exwm-manage.el | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/exwm-manage.el b/exwm-manage.el index 16abe9845bc3..0b7b475590b3 100644 --- a/exwm-manage.el +++ b/exwm-manage.el @@ -112,6 +112,11 @@ corresponding buffer.") :window id :value-mask xcb:CW:EventMask :event-mask exwm--client-event-mask)) (throw 'return 'dead)) + ;; Add this X window to save-set. + (xcb:+request exwm--connection + (make-instance 'xcb:ChangeSaveSet + :mode xcb:SetMode:Insert + :window id)) (with-current-buffer (generate-new-buffer "*EXWM*") ;; Keep the oldest X window first. (setq exwm--id-buffer-alist |