mirror of
https://github.com/Swarsel/.dotfiles.git
synced 2025-12-06 09:07:21 +01:00
fix: emacs popup frames resizing other windows
This commit is contained in:
parent
91334e26a5
commit
5440fd2c8a
3 changed files with 100 additions and 53 deletions
|
|
@ -13033,9 +13033,10 @@ Currently, I am too lazy to explain every option here, but most of it is very se
|
||||||
"${modifier}+Shift+F12" = "move scratchpad";
|
"${modifier}+Shift+F12" = "move scratchpad";
|
||||||
"${modifier}+F12" = "scratchpad show";
|
"${modifier}+F12" = "scratchpad show";
|
||||||
"${modifier}+Shift+c" = "exec qalculate-gtk";
|
"${modifier}+Shift+c" = "exec qalculate-gtk";
|
||||||
"${modifier}+c" = "emacsclient -e '(prot-window-popup-org-capture)'";
|
"${modifier}+c" = "exec emacsclient -cF '((name . \"Emacs Popup Anchor\"))' -e '(prot-window-popup-org-capture)'";
|
||||||
"${modifier}+Shift+m" = "emacsclient -e '(prot-window-popup-mu4e)'";
|
"${modifier}+t" = "exec emacsclient -cF '((name . \"Emacs Popup Anchor\"))' -e '(prot-window-popup-org-agenda)'";
|
||||||
"${modifier}+Shift+a" = "emacsclient -e '(prot-window-popup-swarsel/open-calendar)'";
|
"${modifier}+Shift+m" = "exec emacsclient -cF '((name . \"Emacs Popup Anchor\"))' -e '(prot-window-popup-mu4e)'";
|
||||||
|
"${modifier}+Shift+a" = "exec emacsclient -cF '((name . \"Emacs Popup Anchor\"))' -e '(prot-window-popup-swarsel/open-calendar)'";
|
||||||
"${modifier}+p" = "exec pass-fuzzel";
|
"${modifier}+p" = "exec pass-fuzzel";
|
||||||
"${modifier}+o" = "exec pass-fuzzel --otp";
|
"${modifier}+o" = "exec pass-fuzzel --otp";
|
||||||
"${modifier}+Shift+p" = "exec pass-fuzzel --type";
|
"${modifier}+Shift+p" = "exec pass-fuzzel --type";
|
||||||
|
|
@ -13168,7 +13169,8 @@ Currently, I am too lazy to explain every option here, but most of it is very se
|
||||||
{ title = "^Add$"; }
|
{ title = "^Add$"; }
|
||||||
{ title = "^Picture-in-Picture$"; }
|
{ title = "^Picture-in-Picture$"; }
|
||||||
{ title = "Syncthing Tray"; }
|
{ title = "Syncthing Tray"; }
|
||||||
{ title = "Emacs Popup Frame"; }
|
{ title = "^Emacs Popup Frame$"; }
|
||||||
|
{ title = "^Emacs Popup Anchor$"; }
|
||||||
{ title = "^spotifytui$"; }
|
{ title = "^spotifytui$"; }
|
||||||
{ title = "^kittyterm$"; }
|
{ title = "^kittyterm$"; }
|
||||||
{ app_id = "vesktop"; }
|
{ app_id = "vesktop"; }
|
||||||
|
|
@ -13219,6 +13221,18 @@ Currently, I am too lazy to explain every option here, but most of it is very se
|
||||||
title = "^Picture-in-Picture$";
|
title = "^Picture-in-Picture$";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
{
|
||||||
|
command = "resize set width 60 ppt height 60 ppt, opacity 0.99, sticky enable";
|
||||||
|
criteria = {
|
||||||
|
title = "^Emacs Popup Frame$";
|
||||||
|
};
|
||||||
|
}
|
||||||
|
{
|
||||||
|
command = "move container to scratchpad";
|
||||||
|
criteria = {
|
||||||
|
title = "^Emacs Popup Anchor$";
|
||||||
|
};
|
||||||
|
}
|
||||||
{
|
{
|
||||||
command = "resize set width 60 ppt height 60 ppt, opacity 0.8, sticky enable, border normal, move container to scratchpad";
|
command = "resize set width 60 ppt height 60 ppt, opacity 0.8, sticky enable, border normal, move container to scratchpad";
|
||||||
criteria = {
|
criteria = {
|
||||||
|
|
@ -20465,6 +20479,7 @@ This sets up the =dashboard=, which is really quite useless. But, it looks cool
|
||||||
(add-hook 'comint-output-filter-functions 'comint-truncate-buffer)
|
(add-hook 'comint-output-filter-functions 'comint-truncate-buffer)
|
||||||
|
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
*** Popup frames
|
*** Popup frames
|
||||||
|
|
||||||
#+begin_src emacs-lisp
|
#+begin_src emacs-lisp
|
||||||
|
|
@ -20481,14 +20496,19 @@ This sets up the =dashboard=, which is really quite useless. But, it looks cool
|
||||||
,(format "Run `%s' in a popup frame with `prot-window-popup-frame' parameter.
|
,(format "Run `%s' in a popup frame with `prot-window-popup-frame' parameter.
|
||||||
Also see `prot-window-delete-popup-frame'." command)
|
Also see `prot-window-delete-popup-frame'." command)
|
||||||
(interactive)
|
(interactive)
|
||||||
(let ((frame (make-frame '((prot-window-popup-frame . t)))))
|
(let ((frame (make-frame '((prot-window-popup-frame . t)
|
||||||
|
(title . "Emacs Popup Frame")))))
|
||||||
|
(unwind-protect
|
||||||
|
(progn
|
||||||
(select-frame frame)
|
(select-frame frame)
|
||||||
(modify-frame-parameters nil '((title . "Emacs Popup Frame")))
|
|
||||||
(switch-to-buffer " prot-window-hidden-buffer-for-popup-frame")
|
(switch-to-buffer " prot-window-hidden-buffer-for-popup-frame")
|
||||||
(condition-case nil
|
(condition-case nil
|
||||||
(call-interactively ',command)
|
(call-interactively ',command)
|
||||||
((quit error user-error)
|
((quit error user-error)
|
||||||
(delete-frame frame))))))
|
(delete-frame frame))))
|
||||||
|
(dolist (fr (frame-list))
|
||||||
|
(when (string= (frame-parameter fr 'name) "Emacs Popup Anchor")
|
||||||
|
(delete-frame fr)))))))
|
||||||
|
|
||||||
(declare-function org-capture "org-capture" (&optional goto keys))
|
(declare-function org-capture "org-capture" (&optional goto keys))
|
||||||
(defvar org-capture-after-finalize-hook)
|
(defvar org-capture-after-finalize-hook)
|
||||||
|
|
@ -20506,6 +20526,10 @@ This sets up the =dashboard=, which is really quite useless. But, it looks cool
|
||||||
(prot-window-define-with-popup-frame swarsel/open-calendar)
|
(prot-window-define-with-popup-frame swarsel/open-calendar)
|
||||||
(advice-add 'bury-buffer :after #'prot-window-delete-popup-frame)
|
(advice-add 'bury-buffer :after #'prot-window-delete-popup-frame)
|
||||||
|
|
||||||
|
(declare-function org-agenda "org-agenda" (&optional goto keys))
|
||||||
|
;;;###autoload (autoload 'prot-window-popup-org-agenda "prot-window")
|
||||||
|
(prot-window-define-with-popup-frame org-agenda)
|
||||||
|
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
* Appendix A: Noweb-Ref blocks
|
* Appendix A: Noweb-Ref blocks
|
||||||
|
|
|
||||||
|
|
@ -1723,14 +1723,19 @@ Make the new frame have the `prot-window-popup-frame' parameter."
|
||||||
,(format "Run `%s' in a popup frame with `prot-window-popup-frame' parameter.
|
,(format "Run `%s' in a popup frame with `prot-window-popup-frame' parameter.
|
||||||
Also see `prot-window-delete-popup-frame'." command)
|
Also see `prot-window-delete-popup-frame'." command)
|
||||||
(interactive)
|
(interactive)
|
||||||
(let ((frame (make-frame '((prot-window-popup-frame . t)))))
|
(let ((frame (make-frame '((prot-window-popup-frame . t)
|
||||||
|
(title . "Emacs Popup Frame")))))
|
||||||
|
(unwind-protect
|
||||||
|
(progn
|
||||||
(select-frame frame)
|
(select-frame frame)
|
||||||
(modify-frame-parameters nil '((title . "Emacs Popup Frame")))
|
|
||||||
(switch-to-buffer " prot-window-hidden-buffer-for-popup-frame")
|
(switch-to-buffer " prot-window-hidden-buffer-for-popup-frame")
|
||||||
(condition-case nil
|
(condition-case nil
|
||||||
(call-interactively ',command)
|
(call-interactively ',command)
|
||||||
((quit error user-error)
|
((quit error user-error)
|
||||||
(delete-frame frame))))))
|
(delete-frame frame))))
|
||||||
|
(dolist (fr (frame-list))
|
||||||
|
(when (string= (frame-parameter fr 'name) "Emacs Popup Anchor")
|
||||||
|
(delete-frame fr)))))))
|
||||||
|
|
||||||
(declare-function org-capture "org-capture" (&optional goto keys))
|
(declare-function org-capture "org-capture" (&optional goto keys))
|
||||||
(defvar org-capture-after-finalize-hook)
|
(defvar org-capture-after-finalize-hook)
|
||||||
|
|
@ -1747,3 +1752,7 @@ Also see `prot-window-delete-popup-frame'." command)
|
||||||
;;;###autoload (autoload 'prot-window-popup-swarsel/open-calendar "prot-window")
|
;;;###autoload (autoload 'prot-window-popup-swarsel/open-calendar "prot-window")
|
||||||
(prot-window-define-with-popup-frame swarsel/open-calendar)
|
(prot-window-define-with-popup-frame swarsel/open-calendar)
|
||||||
(advice-add 'bury-buffer :after #'prot-window-delete-popup-frame)
|
(advice-add 'bury-buffer :after #'prot-window-delete-popup-frame)
|
||||||
|
|
||||||
|
(declare-function org-agenda "org-agenda" (&optional goto keys))
|
||||||
|
;;;###autoload (autoload 'prot-window-popup-org-agenda "prot-window")
|
||||||
|
(prot-window-define-with-popup-frame org-agenda)
|
||||||
|
|
|
||||||
|
|
@ -126,9 +126,10 @@ in
|
||||||
"${modifier}+Shift+F12" = "move scratchpad";
|
"${modifier}+Shift+F12" = "move scratchpad";
|
||||||
"${modifier}+F12" = "scratchpad show";
|
"${modifier}+F12" = "scratchpad show";
|
||||||
"${modifier}+Shift+c" = "exec qalculate-gtk";
|
"${modifier}+Shift+c" = "exec qalculate-gtk";
|
||||||
"${modifier}+c" = "emacsclient -e '(prot-window-popup-org-capture)'";
|
"${modifier}+c" = "exec emacsclient -cF '((name . \"Emacs Popup Anchor\"))' -e '(prot-window-popup-org-capture)'";
|
||||||
"${modifier}+Shift+m" = "emacsclient -e '(prot-window-popup-mu4e)'";
|
"${modifier}+t" = "exec emacsclient -cF '((name . \"Emacs Popup Anchor\"))' -e '(prot-window-popup-org-agenda)'";
|
||||||
"${modifier}+Shift+a" = "emacsclient -e '(prot-window-popup-swarsel/open-calendar)'";
|
"${modifier}+Shift+m" = "exec emacsclient -cF '((name . \"Emacs Popup Anchor\"))' -e '(prot-window-popup-mu4e)'";
|
||||||
|
"${modifier}+Shift+a" = "exec emacsclient -cF '((name . \"Emacs Popup Anchor\"))' -e '(prot-window-popup-swarsel/open-calendar)'";
|
||||||
"${modifier}+p" = "exec pass-fuzzel";
|
"${modifier}+p" = "exec pass-fuzzel";
|
||||||
"${modifier}+o" = "exec pass-fuzzel --otp";
|
"${modifier}+o" = "exec pass-fuzzel --otp";
|
||||||
"${modifier}+Shift+p" = "exec pass-fuzzel --type";
|
"${modifier}+Shift+p" = "exec pass-fuzzel --type";
|
||||||
|
|
@ -261,7 +262,8 @@ in
|
||||||
{ title = "^Add$"; }
|
{ title = "^Add$"; }
|
||||||
{ title = "^Picture-in-Picture$"; }
|
{ title = "^Picture-in-Picture$"; }
|
||||||
{ title = "Syncthing Tray"; }
|
{ title = "Syncthing Tray"; }
|
||||||
{ title = "Emacs Popup Frame"; }
|
{ title = "^Emacs Popup Frame$"; }
|
||||||
|
{ title = "^Emacs Popup Anchor$"; }
|
||||||
{ title = "^spotifytui$"; }
|
{ title = "^spotifytui$"; }
|
||||||
{ title = "^kittyterm$"; }
|
{ title = "^kittyterm$"; }
|
||||||
{ app_id = "vesktop"; }
|
{ app_id = "vesktop"; }
|
||||||
|
|
@ -312,6 +314,18 @@ in
|
||||||
title = "^Picture-in-Picture$";
|
title = "^Picture-in-Picture$";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
{
|
||||||
|
command = "resize set width 60 ppt height 60 ppt, opacity 0.99, sticky enable";
|
||||||
|
criteria = {
|
||||||
|
title = "^Emacs Popup Frame$";
|
||||||
|
};
|
||||||
|
}
|
||||||
|
{
|
||||||
|
command = "move container to scratchpad";
|
||||||
|
criteria = {
|
||||||
|
title = "^Emacs Popup Anchor$";
|
||||||
|
};
|
||||||
|
}
|
||||||
{
|
{
|
||||||
command = "resize set width 60 ppt height 60 ppt, opacity 0.8, sticky enable, border normal, move container to scratchpad";
|
command = "resize set width 60 ppt height 60 ppt, opacity 0.8, sticky enable, border normal, move container to scratchpad";
|
||||||
criteria = {
|
criteria = {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue