Add basic hooks
This commit is contained in:
16
eyebrowse.el
16
eyebrowse.el
@ -125,6 +125,16 @@ If t, switching to the same window config as
|
|||||||
:type 'boolean
|
:type 'boolean
|
||||||
:group 'eyebrowse)
|
:group 'eyebrowse)
|
||||||
|
|
||||||
|
(defcustom eyebrowse-pre-window-switch-hook nil
|
||||||
|
"Hook run before switching to a window config."
|
||||||
|
:type 'hook
|
||||||
|
:group 'eyebrowse)
|
||||||
|
|
||||||
|
(defcustom eyebrowse-post-window-switch-hook nil
|
||||||
|
"Hook run after switching to a window config."
|
||||||
|
:type 'hook
|
||||||
|
:group 'eyebrowse)
|
||||||
|
|
||||||
(defvar eyebrowse-last-slot 1
|
(defvar eyebrowse-last-slot 1
|
||||||
"Internal variable storing the last window config slot.")
|
"Internal variable storing the last window config slot.")
|
||||||
|
|
||||||
@ -198,13 +208,15 @@ last window config."
|
|||||||
(= eyebrowse-current-slot slot))
|
(= eyebrowse-current-slot slot))
|
||||||
(setq slot eyebrowse-last-slot
|
(setq slot eyebrowse-last-slot
|
||||||
eyebrowse-last-slot eyebrowse-current-slot))
|
eyebrowse-last-slot eyebrowse-current-slot))
|
||||||
(when (/= eyebrowse-current-slot slot))
|
(when (/= eyebrowse-current-slot slot)
|
||||||
|
(run-hooks eyebrowse-pre-window-switch-hook)
|
||||||
(eyebrowse-save-window-config eyebrowse-current-slot)
|
(eyebrowse-save-window-config eyebrowse-current-slot)
|
||||||
(eyebrowse-load-window-config slot)
|
(eyebrowse-load-window-config slot)
|
||||||
(setq eyebrowse-last-slot eyebrowse-current-slot)
|
(setq eyebrowse-last-slot eyebrowse-current-slot)
|
||||||
(setq eyebrowse-current-slot slot)
|
(setq eyebrowse-current-slot slot)
|
||||||
(eyebrowse-save-window-config eyebrowse-current-slot)
|
(eyebrowse-save-window-config eyebrowse-current-slot)
|
||||||
(eyebrowse-load-window-config eyebrowse-current-slot))
|
(eyebrowse-load-window-config eyebrowse-current-slot)
|
||||||
|
(run-hooks eyebrowse-post-window-switch-hook)))
|
||||||
|
|
||||||
(defun eyebrowse-update-mode-line ()
|
(defun eyebrowse-update-mode-line ()
|
||||||
"Return a string representation of the window configurations."
|
"Return a string representation of the window configurations."
|
||||||
|
|||||||
Reference in New Issue
Block a user