Closed Bug 1116787 Opened 5 years ago Closed 3 years ago

Expose preference for having Ctrl+Tab cycle through tabs in recently used order

Categories

(Firefox :: Preferences, enhancement)

enhancement
Not set

Tracking

()

VERIFIED FIXED
Firefox 50
Tracking Status
relnote-firefox --- 50+
firefox50 --- verified

People

(Reporter: dao, Assigned: dao)

References

Details

(Keywords: user-doc-needed)

Attachments

(2 files, 1 obsolete file)

Attached patch patch (obsolete) — Splinter Review
A Ctrl+Tab panel for switching tabs in recently used order was implemented long ago but hasn't been enabled by default for fear of breaking users' habits, although Ctrl+PageUp / Ctrl+PageDown exist as an alternative.

While enabling this by default might still be controversial (I'm not sure), allowing users to opt in to this behavior should be a good first step.

Note that bug 1063625 was filed for reducing clutter in the tabs section.
Attached image screenshot
Attachment #8542990 - Flags: ui-review?(ux-review)
It gets enabled if you enable browser.ctrlTab.previews in about:config. I feel like that is a bug because I only want to change tab order and could care less about previews.

I wonder why it would be controversial to make tab switching in Firefox behave like window or tab switching in all other programs/OS's.
(In reply to Carlin Scott from comment #2)
> It gets enabled if you enable browser.ctrlTab.previews in about:config. I
> feel like that is a bug because I only want to change tab order and could
> care less about previews.

If you press Ctrl+Tab quickly, you'll get to the previous tab without previews. The UI is however crucial for switching to an older tab (as with OS-level application switching, e.g. Alt+Tab). There's no sane way around that.

> I wonder why it would be controversial to make tab switching in Firefox
> behave like window or tab switching in all other programs/OS's.

I said why in the first sentence. It doesn't matter for this bug, though, because even if we enable it by default, we should expose the preference so users can opt out.
(In reply to Carlin Scott from comment #4)
> That's all fine but that means the setting is named after the feature that
> makes the "real" feature easier to use. I'm no usability expert but that
> sure seems confusing.

It's just the name of the hidden pref, so usability isn't a concern. This bug is about exposing a visible pref regardless of how it's called under the hood.

> > > I wonder why it would be controversial to make tab switching in Firefox
> > > behave like window or tab switching in all other programs/OS's.
> > 
> > I said why in the first sentence. It doesn't matter for this bug, though,
> > because even if we enable it by default, we should expose the preference so
> > users can opt out.
> I don't find that explanation of the reasoning sufficient.

This is off-topic for this bug.

> I think this point is important for this bug because it should help convince
> the team to go ahead with the change.

This is not the place for that. Please consider posting to the firefox-dev mailing list (https://wiki.mozilla.org/Firefox/firefox-dev).
Attachment #8542990 - Flags: ui-review?(philipp)
Attachment #8542990 - Flags: ui-review?(ux-review)
Attachment #8542990 - Flags: ui-review?(philipp)
Attachment #8542990 - Flags: ui-review+
@Jack & Tina,
Please have a look. How do you think about this preference, thanks.
Flags: needinfo?(thsieh)
Flags: needinfo?(jalin)
Hi - Chiming in here - but not sure I understand the bug fully.  To me, it seems like this falls under the category of "Pro Tip" vs. a setting.  I think it's valuable to expose this but maybe not that important to allow a user to disable this? Is there anything a user gains by disabling the keyboard shortcut?  For example, they won't see the most recently opened tab, but will see the tabs in some other order? FWIW, I am happy to create messaging around pro tips and don't think it's necessary to disable something that every browser does (similar to operating systems and alt+tab or cmd + tab) unless there is something I gain from it.
Dao, is anything else needed to fix this? Do we still want to expose this about:config flag to preferences?

(Please ni Tina/Jack if you are looking for UX consultation -- they are assigned to work on a re-design of the in-content preferences page)
Flags: needinfo?(thsieh)
Flags: needinfo?(jalin)
Flags: needinfo?(dao+bmo)
Apparently this got ui-review+ last December. I missed that. I'm gonna rebase the patch and request code review.
Flags: needinfo?(dao+bmo)
Attached patch patchSplinter Review
Attachment #8542989 - Attachment is obsolete: true
Attachment #8775099 - Flags: review?(mdeboer)
Comment on attachment 8775099 [details] [diff] [review]
patch

Review of attachment 8775099 [details] [diff] [review]:
-----------------------------------------------------------------

I totally dig this feature! The wording of the checkbox label leaves a bit to be desired, I think. Fodder for later?

::: browser/locales/en-US/chrome/browser/preferences/tabs.dtd
@@ +2,5 @@
>     - License, v. 2.0. If a copy of the MPL was not distributed with this
>     - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
>  
> +<!ENTITY ctrlTabRecentlyUsedOrder.label       "Ctrl+Tab cycles through tabs in recently used order">
> +<!ENTITY ctrlTabRecentlyUsedOrder.accesskey   "T">

ITYM s/T/t/, because otherwise the whole accesskey swapparoo below and in main.dtd is confusing...
Attachment #8775099 - Flags: review?(mdeboer) → review+
(In reply to Mike de Boer [:mikedeboer] from comment #11)
> Comment on attachment 8775099 [details] [diff] [review]
> patch
> 
> Review of attachment 8775099 [details] [diff] [review]:
> -----------------------------------------------------------------
> 
> I totally dig this feature! The wording of the checkbox label leaves a bit
> to be desired, I think. Fodder for later?

Sure. I think I originally stole this string from Opera.

> ::: browser/locales/en-US/chrome/browser/preferences/tabs.dtd
> @@ +2,5 @@
> >     - License, v. 2.0. If a copy of the MPL was not distributed with this
> >     - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
> >  
> > +<!ENTITY ctrlTabRecentlyUsedOrder.label       "Ctrl+Tab cycles through tabs in recently used order">
> > +<!ENTITY ctrlTabRecentlyUsedOrder.accesskey   "T">
> 
> ITYM s/T/t/, because otherwise the whole accesskey swapparoo below and in
> main.dtd is confusing...

No, we want the uppercase T to be underlined rather than the lowercase one, so we need to use "T" here.
(In reply to Dão Gottwald [:dao] from comment #12)
> No, we want the uppercase T to be underlined rather than the lowercase one,
> so we need to use "T" here.

Ahhh (/me facepalms) that's how it worked. Thanks for the explanation.
Pushed by dgottwald@mozilla.com:
https://hg.mozilla.org/integration/fx-team/rev/739a8707a3e2
Expose preference for having Ctrl+Tab cycle through tabs in recently used order. ui-r=phlsa r=mikedeboer
Release Note Request (optional, but appreciated)
[Why is this notable]: We've had this feature behind a hidden pref for many years and anecdotal evidence suggests that many power users who found out about it like it
[Suggested wording]: New preference for allowing Ctrl+Tab to cycle through tabs in recently used order
[Links (documentation, blog post, etc)]: no documentation yet, but we should add that
relnote-firefox: --- → ?
Keywords: user-doc-needed
Ad.: We should _seriously_ consider having this feature ON by default. The current ctrl-tab behavior is so useless, compared to this, and is not a joy to use. This is in fact a joy.
https://hg.mozilla.org/mozilla-central/rev/739a8707a3e2
Status: ASSIGNED → RESOLVED
Closed: 3 years ago
Resolution: --- → FIXED
Target Milestone: --- → Firefox 50
Added to Fx50 (Aurora) release notes.
Setting the qe-verify+ flag so we get some QA work here, since this is a new setting that we're making available to the users.
Flags: qe-verify+
I was able to reproduce previous behavior on an older Nightly build 41.0a1 (2015-06-05), on Windows 10 Pro x64

The fix was verified on Firefox Beta 50.0b4, across platforms: Windows 10 Pro x64, Ubuntu 16.04 LTS x64 and Mac OS Yosemite 10.10.4
Thank you, Carmen!
Status: RESOLVED → VERIFIED
Flags: qe-verify+
Depends on: 1335108
Blocks: 1473595
No longer blocks: 565568
You need to log in before you can comment on or make changes to this bug.