~tsdh/swayr#13: 
Change focus only between containers

Hello. Thanks for the useful tool.

Is there a way to move the focus only between window containers? The following could not be done because the destination includes each tab. (Am I setting something wrong?).

~/.config/sway/config

bindsym $mod+n exec swayr next-tabbed-or-stacked-window all-workspaces
bindsym $mod+p exec swayr prev-tabbed-or-stacked-window all-workspaces

Thanks in advance.

Status
REPORTED
Submitter
~funcrab
Assigned to
No-one
Submitted
4 months ago
Updated
a month ago
Labels
enhancement swayr

~tsdh 4 months ago

Hi!

Hello. Thanks for the useful tool.

You're welcome!

Is there a way to move the focus only between window containers?

There're switch-workspace-container-or-window and switch-to which allow to select an arbitrary container using the menu program but there are not next/prev-container commands right now. But of course, I could add some.

I guess there could be the commands

  • next-container
  • next-tiled-container
  • next-tabbed-or-stacked-container
  • next-container-of-same-layout

each with a prev- version and the same argument as the same window commands. (As there are no floating containers, there's no equivalent of next-floating-window.)

Would that be what you have in mind?

The following could not be done because the destination includes each tab. (Am I setting something wrong?).

No, you are not, but as the commands read next/prev-*-window they always switch focus to a window and not a container.

Bye, Tassilo

~funcrab 4 months ago

Would that be what you have in mind?

It probably is.

I want to move the focus when I am viewing the window I am currently working on between multiple tab containers.

This is because I often use the window displayed in front as the target for working or viewing, rather than the window that is hidden within the tab container.

After moving the focus between containers, it would be nice if the selected window is not the container itself (the parent window selected by $mod+a), but a child window.

As for the above, it looks like it could be done with next-container, but it would be nice if the concept of containers also included top level windows (tiled containers with a single window?) that are not tabs or stacked containers.

This may be a daunting task, but please consider it.

~tsdh 4 months ago

~funcrab outgoing@sr.ht writes:

I want to move the focus when I am viewing the window I am currently working on between multiple tab containers.

This is because I often use the window displayed in front as the target for working or viewing, rather than the window that is hidden within the tab container.

So you have two tabbed/stacked containers where the currently visible windows are the ones you need for your task and you want to quickly switch between those, right? I do the same, too, and use switch-to-urgent-or-lru-window for that. Of course, that falls short if you need to move focus between more than 2 windows.

After moving the focus between containers, it would be nice if the selected window is not the container itself (the parent window selected by $mod+a), but a child window.

As for the above, it looks like it could be done with next-container, but it would be nice if the concept of containers also included top level windows (tiled containers with a single window?) that are not tabs or stacked containers.

I don't think I want to use a different terminology than sway itself. And I'm not sure that your workflow would be well-served with what you are describing.

Aren't you saying that you essentially have a certain number of windows you'd like to be able to cycle between without visiting windows which are of no interest currently? I can think of a feature where you could apply zero or many labels to windows plus next/prev-window-with-label commands that get a label as argument and cycle between windows with that label, or, if no label is given, cycle between the windows that have the same label as the current window [1]. So then you'd could add labels like "task1" and "task2" to your windows and have a task-depending switcher.

Bye, Tassilo

[1] Well, if windows can have more than one label (like your browser belonging to task1 and task2), the "switch to next window with the same label as the currnt window" doesn't really work when trying to switch away from the browser. Hm, I'm open for ideas.

~funcrab 4 months ago

So you have two tabbed/stacked containers where the currently visible windows are the ones you need for your task and you want to quickly switch between those, right? I do the same, too, and use switch-to-urgent-or-lru-window for that. Of course, that falls short if you need to move focus between more than 2 windows.

That's right. I'm sorry for the confusing expression.

~funcrab referenced this from #18 3 months ago

Register here or Log in to comment, or comment via email.