Bug 303083 - KWin keybindings is missing a shortcut for move window to previous screen
Summary: KWin keybindings is missing a shortcut for move window to previous screen
Status: RESOLVED FIXED
Alias: None
Product: kwin
Classification: Plasma
Component: xrandr (show other bugs)
Version: 4.8.3
Platform: Ubuntu Linux
: NOR wishlist
Target Milestone: 4.11
Assignee: Thomas Lübking
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-07-05 22:41 UTC by davija
Modified: 2013-05-22 20:40 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In: 4.11
thomas.luebking: ReviewRequest+


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description davija 2012-07-05 22:41:47 UTC
Using version 4.8.3 of KDE, System settings version 1.0 (on kubuntu 12.04).

When I go to set keyboard shortcuts in Global Keybaord Shortcuts, component KWin, there is a setting for 'Window to Next Screen' that works.  However, there is no 'Window to Prev Screen'.  For other shortcut combos there are... if there is a prev/up/left there is the corresponding next/down/right.

Reproducible: Always

Steps to Reproduce:
1. Open system settings
2. Go to Global Keyboard Shortcuts
3. Select KWin KDE component
4. Scroll down to 'Window to .....' area
Actual Results:  
I see 'Window to Next Screen' but no 'Window to Previous Screen'.

Expected Results:  
I would expect to see 'Window to Previous Screen' as well as 'Window to Next Screen'
Comment 1 Thomas Lübking 2012-12-03 03:54:13 UTC
Out of curiosity - how many screens do you use?
Comment 2 davija 2012-12-03 03:58:08 UTC
I typically use 3 physical screens (no virtual screens)

(In reply to comment #1)
> Out of curiosity - how many screens do you use?
Comment 3 Martin Flöser 2012-12-03 04:20:39 UTC
For the common use case of two screen having just the next screen is just fine. Even with three screens it's just fine: twice next is the same as previous. Even with the very uncommon case of four screens (mostly not possible with one GPU and by that not possible with one X-Server) still works acceptable.

So I'm not sure whether it makes any sense to add such a shortcut. The number of screens is just much smaller than e.g. the number of virtual desktops.
Comment 4 davija 2012-12-03 04:35:30 UTC
From what I recall when I was trying this, I don't remember it wrapping around.  Also, what is the point of having a short-cut key to perform an action if I have to use the shortcut key multiple times to perform the action I want?  I might as well drag the window with the mouse if I have to do that.

As far as going upto 4 screens or higher needing more than one GPU, that is not true.  My machine can support upto 5 monitors on a single video adapter and a single x-server.

As I stated in the initial bug report, most (if not all) other keyboard shutcuts come as a pair.  If there is a next, a previous is also provided.  Why should this be any different?

I agree, there are likely some work-arounds, but I still have to ask, what the point of a shortcut key is then...

(In reply to comment #3)
> For the common use case of two screen having just the next screen is just
> fine. Even with three screens it's just fine: twice next is the same as
> previous. Even with the very uncommon case of four screens (mostly not
> possible with one GPU and by that not possible with one X-Server) still
> works acceptable.
> 
> So I'm not sure whether it makes any sense to add such a shortcut. The
> number of screens is just much smaller than e.g. the number of virtual
> desktops.
Comment 5 Martin Flöser 2012-12-03 04:44:42 UTC
Don't get me wrong, I just explained that this is a very rare needed feature. There was no judgment at all in my writing. We cannot do anything about it right now anyway because we are in feature and string freeze for 4.10. All I wanted to show with my comment was:
1) an explanation why it does not exist (back in the days when that shortcut was added two screens were probably very uncommon)
2) wanted to provide a workaround as the report sounds like it is just about the missing symmetry compared to other shortcuts (which is of course completely irrelevant from a software development aspect).

Everything else is just about what is useful to offer. The usecase is small, so it is obviously questionable whether it makes sense to add it - we don't add features because we can. Sometimes a workaround is a good enough solution *shrug*
Comment 6 Thomas Lübking 2012-12-03 13:58:36 UTC
The code should wrap around (modulo)

We could export screen setters/getters to the scripting interface anyway and from there also invoke by shortcuts (can still happen for 4.10)
Comment 7 Stefan Hepp 2012-12-12 19:51:40 UTC
There was already a bug report that had a patch attached to add the missing shortcuts, but it seams it never reached the reviewboard (or was lost):
https://bugs.kde.org/show_bug.cgi?id=279612

The patch is small enough, so applying it should be easy (the shortcuts are still missing in 4.9.3). It at least makes the available shortcuts more consistent, and helps us users who actually use more than two monitors. 
If you would argue that with two monitors the shortcuts actually do the same, then you could apply that argument also to desktops and would have to remove all the 'Move to Left Desktop' .. shortcuts from the list (and all those "Move to Desktop 17" shortcuts.. anyone here who has 20 desktops?), which makes it really counter-intuitive (don't get me wrong, I do not want those Desktop shortcuts removed; even if I cannot imagine someone using all of them, it is just a lack of imagination on my side). 

Even with only two screens, it is kind of natural (to me) to assign some Cursor-Right key combination to 'Move to next screen' (similar to e.g. Windows 7), so not being able to assign the Cursor-Left key in a similar way is kind of asymmetrical and unintuitive.
Comment 8 Thomas Lübking 2013-05-22 20:40:35 UTC
Git commit 8a3b19b50fcae028df41021ab7a2991680f03430 by Thomas Lübking.
Committed on 19/05/2013 at 14:23.
Pushed by luebking into branch 'master'.

add previous screen shortcuts

REVIEW: 110521
FIXED-IN: 4.11

M  +3    -1    kwin/kwinbindings.cpp
M  +13   -0    kwin/useractions.cpp
M  +2    -0    kwin/workspace.h

http://commits.kde.org/kde-workspace/8a3b19b50fcae028df41021ab7a2991680f03430