Commit Graph

27 Commits

Author SHA1 Message Date
a4e22d48b8 feature/popup: add :ignore support to :popup
Allows you to ignore certain buffers. Helpful for plugins that manage
their own windows, like magit.

To use:

  (set! :popup "^\\*magit" :ignore)

Relevant to #337
2018-01-09 17:42:11 -05:00
7bdf8cf8d9 feature/popup: add +popup-display-buffer-actions #337
Gives us more flexibility to control what display-buffer functions to
use when trying to display the popup window.
2018-01-09 16:49:14 -05:00
3bdf1dd174 feature/popup: by default, don't handle window selection
Plenty of special popups switch to a buffer and simply assume that that
buffer is now focused. So best we don't interfere with that unless we
must.
2018-01-08 17:30:55 -05:00
f9ab0cf767 feature/popup: add multi-term, eshell and evil hacks 2018-01-07 22:18:50 -05:00
5a420faa0f feature/popup: tweak popup rules, add +popup-shrink-to-fit
+popup-shrink-to-fit wraps shrink-window-if-larger-than-buffer, and
won't do anything if the buffer is empty.
2018-01-07 18:36:27 -05:00
b11101d9cf feature/popup: add rule for Compilation buffer 2018-01-07 15:26:20 -05:00
742f5b26ed Improve popup compatibility for eshell & multi-term 2018-01-07 15:25:35 -05:00
d675ade45d feature/popup: move hacks to +hacks.el 2018-01-07 15:04:33 -05:00
e02f01b694 feature/popup: make extra sure escape=>doom/escape in popups #261 2018-01-07 06:47:00 -05:00
e481a2891a feature/popup: minor refactor & remove provide 2018-01-07 05:56:01 -05:00
43c48a085f feature/popup: improve org compatibility (fix #330)
This update should fix Org Src buffers, as well as those todo/agenda
commans/links mini popups.
2018-01-07 05:56:01 -05:00
878b5ae4e2 feature/popup: rethink default rules 2018-01-07 05:56:00 -05:00
84cba91e50 feature/popup: remove default slot & window-width
...and fix :popup not mapping the size parameter to the correct
dimension when no side is specified.
2018-01-07 05:56:00 -05:00
25a2973c52 feature/popup: make parameters support functions
Now, the transient, quit, select and modeline parameters now accept
a function FN. See `+popup-window-parameters` for details.

(transient . (FN popup-buffer))
(quit . (FN popup-window))
(select . (FN popup-window))
(modeline . (FN popup-buffer))
2018-01-07 05:35:20 -05:00
af58e321dd Remove vestigial comment 2018-01-07 00:36:46 -05:00
7872faad3a feature/popup: don't forcibly hide modeline in org-agenda popups 2018-01-07 00:20:11 -05:00
2d9e63d5bb General & minor refactoring 2018-01-07 00:15:58 -05:00
392f04446f General refactor (use map.el more)
+ map-delete is shorter and faster than assq-delete-all
+ map-put is simpler than the delete-then-set workflow
+ map-merge is great for merging default and user settings
2018-01-07 00:15:58 -05:00
fcd87f6f69 feature/popup: fix balance-windows freezes with neotree
neotree's own advice around balance-windows caused little freezes while
splitting/closing windows, while a neotree pane was open. Not on my
watch.
2018-01-07 00:15:57 -05:00
eab079724d feature/popup: add inhibit-timers letvar
Allows us to disable timer functionality when we're simply setting popup
buffers aside temporarily.
2018-01-07 00:15:56 -05:00
eef808d795 feature/popup: reduce state in window parameters & fix popup continuity
+ Fix list where cons should be
+ Update +popup-window-parameters docstring
+ Use display-buffer instead of +popup-buffer (no need to remember
  alist). This ensures restored popups (with +popup/restore) are truly
  identical to their former selves.
2018-01-07 00:15:56 -05:00
eedd86135e feature/popup: add hacks for wgrep, org, persp-mode & balance-windows
Plus +popup*close and +popup*save advice functions.
2018-01-06 04:56:57 -05:00
a9a731c1eb feature/popup: replace alist param with popup 2018-01-06 04:56:12 -05:00
48b0a468d1 THOU SHALT NOT WORSHIP FALSE IDOLS, said the byte compiler
And I obeyed.
2018-01-06 04:24:38 -05:00
4fdf4a58b4 feature/popup: mention custom 'size parameter in :popup 2018-01-06 03:09:29 -05:00
08b479b06f Rename popup parameter escape-quit => quit 2018-01-06 02:42:53 -05:00
91357a3e5d 💥 Replace core-popup with new feature/popup module
This is a breaking change! Update your :popup settings. Old ones will
throw errors!

Doom's new popup management system casts off its shackles (hur hur) and
replaces them with the monster that is `display-buffer-alist`, and
window parameters.

However, this is highly experimental! Expect edge cases.  Particularly
with org-mode and magit (or anything that does its own window
management).

Relevant to #261, #263, #325
2018-01-06 02:17:43 -05:00