summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSean Whitton <spwhitton@spwhitton.name>2022-09-19 09:24:01 -0700
committerSean Whitton <spwhitton@spwhitton.name>2022-09-19 09:24:09 -0700
commit6718f7d4420c821bca1303d56ade37560443a137 (patch)
tree8512adcfe7f01ac04e18231c719f2f3b1f517914
parentf35c4075681fc7bf6d5a068f5f780e29d3ee9009 (diff)
downloaddotfiles-6718f7d4420c821bca1303d56ade37560443a137.tar.gz
fix raise-frame on Sway using advice
-rw-r--r--.emacs.d/init.el9
1 files changed, 9 insertions, 0 deletions
diff --git a/.emacs.d/init.el b/.emacs.d/init.el
index a9609acd..c0f622ac 100644
--- a/.emacs.d/init.el
+++ b/.emacs.d/init.el
@@ -1441,6 +1441,15 @@ the non-side windows deleted by `delete-other-windows' will also reappear."
(interactive (spw/read-major-mode-recent-buffer))
(display-buffer buffer))))
+(defun spw/sway-raise-frame (orig-fun &optional frame)
+ (unless frame (setq frame (selected-frame)))
+ (if (member "XDG_CURRENT_DESKTOP=sway" (frame-parameter frame 'environment))
+ (call-process "swaymsg" nil nil nil
+ (format "[title=\"%s\"]" (frame-parameter frame 'name))
+ "focus")
+ (funcall orig-fun frame)))
+(advice-add 'raise-frame :around #'spw/sway-raise-frame)
+
;;;; TRAMP