WM: grouping applications (TAI)
Matthew Woehlke
mw_triad at users.sourceforge.net
Mon Mar 16 22:39:07 CET 2009
Maciej Pilichowski wrote:
> [some stuff]
First off, my list of keys:
wm-switch-window-{up,down,left,right}
wm-switch-window-{previous,next}
wm-switch-window-{previous,next}-historic
wm-switch-window-{previous,next}-spatial
wm-switch-window-desktop-{previous,next}
wm-switch-window-global-{previous,next}
(The ones marked "global" switch *all* windows, marked "desktop" switch
only on current desktop. Others are in-container only, what you call
"local". wm-switch-window-{previous,next} is "smart" switching; the
desktop/global scope is always historic, and in floating, spatial
actually does historic.)
Note there is no 'parent, child, cancel' etc as these are switcher-only;
I'm ignoring switcher-only for the moment (also I think we are mostly or
wholly in agreement on those).
I still think holding mod (we've been assuming 'win') should start the
switcher; doing otherwise I think is a pretty radical change from
current behavior, which is you always get the switcher.
Once in the switcher, you should /always/ be able to go anywhere (I
would say this includes any desktop, as "root" would be presented as
having siblings for each desktop).
I would generally say directional switch should default to wrapping (I
think you agreed later), okay being an option, and spatial previous/next
(and all non-spatial switching) should /always/ wrap. (You can't leave a
container with container-scope keys, though, except by going to the
parent in switcher.)
Unfortunately, you /can/ get stuck in a sub-container, which I think is
actually another reason why everything should use a switcher; you won't
get "stuck" until you are done switching, at which point you'll stay in
the sub-container until you use switcher to get out.
> When you call switcher you cannot edit files, copy files, launch new
> programs, right? So extra mod in this mode is not needed, switcher
> could behave just like normal program.
Right, switcher is X-modal until dismissed, like screensaver or certain
current KWin effects. Only use of mod in the switcher is:
- you are holding it because you used mod+key to get to switcher*
- you are masochistic and set the in-switcher bindings that way ;-)
(* in which case, the switcher goes away (confirm, unless you use
cancel) when you let go of mod)
> [stuff about spatial]
> Ok, if any problems occur -- I will try to help, ok? I think the only
> tricky part is algorithm that picks up the target window.
Basically, yes. More specifically, making it both technically reasonable
and something that doesn't confuse the user. (I'm more worried about the
latter :-).)
> [can a container be directly active?]
> Actually, after rethinking this would be a bad idea, because after
> making layout user would always have to remember what is what. And
> besides, I found a "proof" of failing -- is Konqueror with TDI a
> container or not in sense, should be activated in a way described
> above or not?
If you assume a container cannot be empty, does it matter? At worst you
forget something has a container and add a window inside a deeper
container than expected. (And I think input focus would be confusing if
you can give input focus to what is effectively a titlebar ;-). And
besides, what would the mouse activate in that case?)
I should mention, one thing I want - actually, is needed, I think - is
app tells WM to open new window in new {tabbed,tiled} container beside
some existing window. So from empty desktop, you start konq, you now
have one window in root. Then you say 'I want another tab', konq asks WM
to make new window in tabbed container with existing window, now you
have root containing tab container containing 2x konq. If konq was
already in e.g. tiled container, you'd get the new konq in tiled
instead. (This also means you can click links and have them open other
apps in tabs w/o having to play 'embed the app' :-).)
> Wait, wait -- it cannot be alt-tab because this is too well know for
> switching first-class windows.
What do you want alt-tab to do? I am assuming it is
wm-switch-window-{desktop,global}-{previous,next}, depending on user
option. (Yes I have a thought about having a checkbox to switch;
basically, until you change the keys, it switches the defaults around.
Once you change the keys, the checkbox is disabled with a note to change
the keys directly.)
>> That reminds me... win-shift-left: exchange this window with window
>> to the left :-). And similar for other shortcuts. Doesn't wrap.
>
> And this shortcut would be of global scope?
No, no, you can't use keyboard like this to push a window outside a
container :-).
> [on 'should switcher always start']
> Btw. this is already happening today. I switch tabs in Konq. by
> ctrl+tab and I don't see any switcher.
I think Firefox is already trying to change this :-). And I think it is
a good thing; personally I'd prefer the preview of what I am switching
to, especially with many tabs.
--
Matthew
Please do not quote my e-mail address unobfuscated in message bodies.
--
"I don't question your existence -- God" (seen on a church billboard)
More information about the Kde-usability-devel
mailing list