After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 647907 - Alt+Tab's special case just makes things confusing now
Alt+Tab's special case just makes things confusing now
Status: RESOLVED FIXED
Product: gnome-shell
Classification: Core
Component: general
3.0.x
Other Linux
: Normal normal
: ---
Assigned To: gnome-shell-maint
gnome-shell-maint
Depends on:
Blocks:
 
 
Reported: 2011-04-15 20:36 UTC by Dan Winship
Modified: 2011-05-19 13:22 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
altTab.js: remove Alt+Tab's special case (4.26 KB, patch)
2011-04-16 00:43 UTC, Rui Matos
accepted-commit_after_freeze Details | Review
altTab.js: remove Alt+Tab's special case (4.26 KB, patch)
2011-04-18 17:32 UTC, Rui Matos
committed Details | Review

Description Dan Winship 2011-04-15 20:36:02 UTC
I am slowly adjusting to the fact that Alt+Tab switches between apps and Alt+Above_Tab switches between windows within an app.

Except that that's a lie! And the "switch to the most-recently-used
window even if it's in the same app" special-case in Alt+Tab keeps
throwing me off, and keeps me from being able to get a firm mental model
of Alt+Tab.

We need to get rid of that now that we have Alt+Above_Tab
Comment 1 Owen Taylor 2011-04-15 21:19:54 UTC
I agree here - thought I had filed a bug to that effect at some point, but can't find it.
Comment 2 Rui Matos 2011-04-16 00:43:20 UTC
Created attachment 186058 [details] [review]
altTab.js: remove Alt+Tab's special case

Alt+Tab's special case of "switch to the most-recently-used window even if
it's in the same app" is actually an hindrance for users to get a firm mental
model of Alt+Tab. Now that we have Alt+Above_Tab the special case is no longer
needed.
Comment 3 Rui Matos 2011-04-16 00:48:17 UTC
This was actually part of my patches to bug 639341 but at that point Dan asked me to get designer input on this behavior change and I did talk about it with Jon McCann on IRC but he didn't have much time to devote to it so I just removed it from bug 639341 and have been carrying this on my tree. Review welcome.
Comment 4 Dan Winship 2011-04-16 13:43:51 UTC
Comment on attachment 186058 [details] [review]
altTab.js: remove Alt+Tab's special case

looks right, and it's good to know that this is already tested

3.0.1?
Comment 5 Jasper St. Pierre (not reading bugmail) 2011-04-17 21:04:09 UTC
Review of attachment 186058 [details] [review]:

With this patch, it looks like the forceFocusApp flag on _update is no longer used -- so that's more code that can be removed as well!
Comment 6 Dan Winship 2011-04-18 15:51:17 UTC
(In reply to comment #5)
> With this patch, it looks like the forceFocusApp flag on _update is no longer
> used

Assuming you mean the forceAppFocus flag on _select, it is still used by the case of hitting Up from a thumbnail.

Owen, do we want this for 3.0.1?
Comment 7 Colin Walters 2011-04-18 17:13:23 UTC
(In reply to comment #6)

> Owen, do we want this for 3.0.1?

My two cents is that while for some users it could be a quite noticeable behavioral change from 3.0, we really want to get people off of the old hack before it becomes muscle memory for people, because then 3.2 would be more painful for them.
Comment 8 Rui Matos 2011-04-18 17:29:37 UTC
(In reply to comment #6)
> (In reply to comment #5)
> > With this patch, it looks like the forceFocusApp flag on _update is no longer
> > used
> 
> Assuming you mean the forceAppFocus flag on _select, it is still used by the
> case of hitting Up from a thumbnail.

I actually tried to remove @forceAppFocus but then Clutter.Up feels weird
because you hit it, the thumbnails go away but come back again quickly. It's a
bit disruptive.

In the mean time I actually spotted a thinko in the patch, I'm attaching a new one.
Comment 9 Rui Matos 2011-04-18 17:32:13 UTC
Created attachment 186217 [details] [review]
altTab.js: remove Alt+Tab's special case

Alt+Tab's special case of "switch to the most-recently-used window even if
it's in the same app" is actually an hindrance for users to get a firm mental
model of Alt+Tab. Now that we have Alt+Above_Tab the special case is no longer
needed.
Comment 10 Dan Winship 2011-04-18 20:09:13 UTC
Comment on attachment 186217 [details] [review]
altTab.js: remove Alt+Tab's special case

eek! I didn't even notice the changes to _keyPressEvent before, I just stopped reading the patch at the end of the show() changes. :-/

So, the additional removed code gets rid of a separate, but related oddity, which is that when the thumbnails are focused, Alt+Tab cycles through windows, until you get to the last thumbnail, at which point it goes back to cycling through apps again. I know Jon requested this behavior explicitly, but that discussion doesn't appear to have made it into bugzilla. And the effect is again to break the clear distinction between Alt+Tab and Alt+Above_Tab. (In this case, it means that if you're in an app with at least 3 windows, and you type Alt+Above_Tab, and then realize you wanted to switch apps, not windows, and so you type Tab, it will not take you to the next app, it will just take you to the next window within the current app.)

But I think we should make this change too.
Comment 11 Rui Matos 2011-04-18 21:04:57 UTC
(In reply to comment #10)
> (From update of attachment 186217 [details] [review])
> eek! I didn't even notice the changes to _keyPressEvent before, I just stopped
> reading the patch at the end of the show() changes. :-/
> 
> So, the additional removed code gets rid of a separate, but related oddity,
> which is that when the thumbnails are focused, Alt+Tab cycles through windows,
> until you get to the last thumbnail, at which point it goes back to cycling
> through apps again. I know Jon requested this behavior explicitly, but that
> discussion doesn't appear to have made it into bugzilla. And the effect is
> again to break the clear distinction between Alt+Tab and Alt+Above_Tab. (In
> this case, it means that if you're in an app with at least 3 windows, and you
> type Alt+Above_Tab, and then realize you wanted to switch apps, not windows,
> and so you type Tab, it will not take you to the next app, it will just take
> you to the next window within the current app.)

Indeed, and I made the patch having that in mind too.

> But I think we should make this change too.

Agree.
Comment 12 Dan Winship 2011-04-20 18:46:55 UTC
after talking with Owen, I pushed just the first half of this patch
(removing the "flipping" case), but not the second half, for 3.0.1.
Comment 13 Dan Winship 2011-05-19 13:22:28 UTC
rebased around the part that was already committed, and then pushed