Open j-o-sh opened 7 months ago
You could give all of the supplementary windows the same frame and focus the "visible" one.
Yes, that is basically how I do it with the 'Tall' layout at the moment.
The problem here is only that this doesn't allow me to switch the supplementary window quickly, while staying im my editor. If I could hide windows from the getFrameAssignments
method or even just switch their z-stacking, I could cycle through them with a single layout command. ;)
Ah, I see the problem, yeah. You can try setting a max windows count, and see if that does what you want. It will minimize rather than hide, but functionally should be pretty much the same.
Oh, actually, maybe that has the same cycling problem.
I think it would be mostly straightforward to add hiding as a custom layout capability. I don't have the bandwidth immediately, but it could make for a good contribution if anyone has cycles to put towards it.
Unfortunatelly yes. Also, maxWindowCount is global and not per layout. 🤔
As to contributing: Could you point me into the direction of where I would start doing that? I may try if I can do that if that's cool with you. Or maybe even code that layout as a Swift one?
...while I am at it: Is there a way to get at the settings for screenPadding and window Margins in a custom layout?
Not currently, no. And I would prefer that we add it as a capability of custom layouts. You can look at CustomLayout.swift
and ReflowOperation.swift
.
First of all: Thank you for creating Amethyst. It is a superb tool for my workflow. 🙏🥳
I have been playing around with cutom layouts, since I would like a very particular layout that
With this layout I could have a two-panel screen setup, where my main terminal (with tmux, neovim, etc.) always stays on the left, while I can switch between different supplementary apps on the right.
However I ran into the issue that I couldn't find out how to show or hide windows fro a custom layout and I fear it may not even be possible right now.
Could this be done? Maybe even by returning the window with
visible: false
from thegetFrameAssignments
method?Or something like: