Open Bug 1445390 Opened 6 years ago Updated 2 years ago

Opening a link in a new tab does not make the tab bar scroll to the right so you can see it

Categories

(Firefox :: Tabbed Browser, defect, P5)

59 Branch
defect

Tracking

()

UNCONFIRMED

People

(Reporter: alexander.kern, Unassigned)

Details

Attachments

(3 files)

User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:59.0) Gecko/20100101 Firefox/59.0
Build ID: 20180310025718

Steps to reproduce:

Open so many tabs that you get the left and right arrows at the left and right end of the tab bar. Then on the last tab open a link in a new tab.


Actual results:

The tab opens hidden underneath the "scroll tab bar to the right" button. The button glows blue for a short time.


Expected results:

The tab should open and the tab bar should scroll the width of one tab to the right so you can actually see it.

How it works now makes sense if the current tab would get hidden if the tab bar scrolled right. However if there's enough room so you can see both the current tab and the new tab, the tab bar should scroll accordingly. The tabs to the left are usually old ones that you don't need to see all the time so that's why it makes more sense to show the new ones (if there's enough room).

Thanks for working on this browser that respects my freedom!
Hi, thanks for reporting this issue.

I can't seem to reproduce this issue with 59.0.1 on Ubuntu. Can you clarify with a screenshot of the issue?
Component: Untriaged → Tabbed Browser
Flags: needinfo?(alexander.kern)
Flags: needinfo?(alexander.kern)
Hi Grover, you're welcome :-) You can't? That's strange. I'm using Fedora with XFCE but that shouldn't matter. It happened on v 59 and now happens on 60.0b3 as well. Are you sure you opened enough tabs so that the overflow arrows appeared on the tab bar? I confirmed that with addons disabled as well on 60.0b3. Here are the screenshots you asked for but I'm afraid they won't help a lot since they just show what I described.
PS: Oh if I'd known files are supported I'd have uploaded a short screencapture video
Alexander, is this still reproducible for you?
Flags: needinfo?(alexander.kern)
Hi Doug, thanks for caring. Yes, as of Firefox 61.0b6 the same behavior happens. The "scroll through tabs to the right" arrow lights up in blue and the newly in-background-opened tabs are hidden beneath it.

Can you not reproduce? Your view in the tabs gets scrolled to the right? Note that it only happens when tabs are overflowing.
Flags: needinfo?(alexander.kern)
Maybe I wasn't clear enough that it only happens when you open tabs in the background? Like with middle mouse click or context menu > open new link in new tab.
(In reply to alexander.kern from comment #7)
> Hi Doug, thanks for caring. Yes, as of Firefox 61.0b6 the same behavior
> happens. The "scroll through tabs to the right" arrow lights up in blue and
> the newly in-background-opened tabs are hidden beneath it.
> 
> Can you not reproduce? Your view in the tabs gets scrolled to the right?
> Note that it only happens when tabs are overflowing.

Yeah, I can't reproduce :(, and I'm pretty sure I understood everything correctly.

To be clear, when you middle click the link to open the new tab, is the selected tab (the one you're clicking the link in) the last tab in your tab bar? If, for example, you open a bunch of tabs, then from the first tab in your tab bar you middle click a link, we can't scroll the new tab into view, because that would scroll the selected tab out of view. From your screenshots it doesn't look like this is what is happening, but I just wanted to make sure.

If that's not what's going on, would you mind getting a regression range with mozregression?[1] There's a chance that we could then just eyeball the code and figure out what's going on, though there's no guarantee.

[1] https://mozilla.github.io/mozregression/install.html
Hey Doug,
by "last in your tab bar" do you mean it's position is at the left end? "Last" sounds like the right end, but left end makes more sense to me as new tabs open to the right. But yeah, that is not the case, of course the browser wouldn't be able to scroll the tab bar to the right then. I did describe that to be clear in the first comment/description:
> How it works now makes sense if the current tab would get hidden if the tab bar scrolled right. However if there's enough room so you can see both the current tab and the new tab, the tab bar should scroll accordingly. The tabs to the left are usually old ones that you don't need to see all the time so that's why it makes more sense to show the new ones (if there's enough room).

I've tried with addons disabled too once again, still happening.

I'm taking a look at mozregression right now, will get back here when I'm done.
So I couldn't get mozregression-gui to start because of
$ dist/mozregression-gui 
dist/mozregression-gui: error while loading shared libraries: libssl.so.1.0.0: cannot open shared object file: No such file or directory
I have libssl installed though.

However the command line tool worked great, but I found out the current version works as expected. I cannot reproduce the error for another profile, only with my current profile. So it seems to be a problem with my settings and that makes it impossible to test with mozregression until I found that setting.

I looked in about:config for "tab" and found old settings from long removed extensions. Shouldn't they have been deleted? They shouldn't be relevant however, since these settings are only for the extension and not only are they legacy extensions so I couldn't even activate them if I wanted but also have I tested this problem with addons disabled mode. Still, can you or someone tell me the correct way to delete all the settings of deleted extensions? I'd rather know the correct way to do it than trying something myself and ending up with still more files that I haven't deleted because I didn't know about them.

While comparing I noticed I'm also missing some animations, like the reload button changing when loading of a webpage is completed.

Anyway, the behavior on my profile seems to be in fact the same as when the currently focused/parent tab of the new tab opened in background is the leftmost tab so it wouldn't make sense to scroll more to the right to show the new tab because then the currently focused tab would get hidden.
(In reply to alexander.kern from comment #11)
> So I couldn't get mozregression-gui to start because of
> $ dist/mozregression-gui 
> dist/mozregression-gui: error while loading shared libraries:
> libssl.so.1.0.0: cannot open shared object file: No such file or directory
> I have libssl installed though.
> 
> However the command line tool worked great, but I found out the current
> version works as expected. I cannot reproduce the error for another profile,
> only with my current profile. So it seems to be a problem with my settings
> and that makes it impossible to test with mozregression until I found that
> setting.
> 
> I looked in about:config for "tab" and found old settings from long removed
> extensions. Shouldn't they have been deleted? They shouldn't be relevant
> however, since these settings are only for the extension and not only are
> they legacy extensions so I couldn't even activate them if I wanted but also
> have I tested this problem with addons disabled mode. Still, can you or
> someone tell me the correct way to delete all the settings of deleted
> extensions? I'd rather know the correct way to do it than trying something
> myself and ending up with still more files that I haven't deleted because I
> didn't know about them.

Unfortunately legacy extensions could set prefs however they wanted, and there was nothing tying the value they set it to to them or any real history. That kind of thing is why we disabled legacy extensions. I don't know how attached you are to your current settings, but you could always try doing a refresh[1].

> While comparing I noticed I'm also missing some animations, like the reload
> button changing when loading of a webpage is completed.

I'm not sure exactly what you're describing, but is toolkit.cosmeticAnimations.enabled set to false?

> Anyway, the behavior on my profile seems to be in fact the same as when the
> currently focused/parent tab of the new tab opened in background is the
> leftmost tab so it wouldn't make sense to scroll more to the right to show
> the new tab because then the currently focused tab would get hidden.

Hmm, looking around at the prefs that are used in the tab bar code I can't find any obvious smoking guns here, or many things to toggle and play around with. I'm leaving this as a P5 for now since it seems to be specific to your set-up, though I think it is certainly a bug, I don't imagine the scope is very large.

I'm sorry you're affected by this :(. If you happen to narrow it down to a pref or two (don't feel obligated to do this), post back and I'll look to see if there's an easy fix.

[1]: https://support.mozilla.org/en-US/kb/refresh-firefox-reset-add-ons-and-settings
Priority: -- → P5
(In reply to Doug Thayer [:dthayer] (PTO on May 17) from comment #12)
> Unfortunately legacy extensions could set prefs however they wanted, and
> there was nothing tying the value they set it to to them or any real
> history. That kind of thing is why we disabled legacy extensions. I don't
> know how attached you are to your current settings, but you could always try
> doing a refresh[1].

Oh, that's interesting. Considering that I would in fact like a fresh setup. Thanks for supplying the support link as well! Is there the possibility to just copy the profile and then refresh it so I have my old one in case I need it or for finding bugs like this one?

> I'm not sure exactly what you're describing, but is
> toolkit.cosmeticAnimations.enabled set to false?

Yeah, that was it, cool!

> Hmm, looking around at the prefs that are used in the tab bar code I can't
> find any obvious smoking guns here, or many things to toggle and play around
> with. I'm leaving this as a P5 for now since it seems to be specific to your
> set-up, though I think it is certainly a bug, I don't imagine the scope is
> very large.

Hmm I've looked through all the bold/changed prefs in about:config but nothing looked suspicious and everything I tried didn't solve the problem. I'll keep my settings for now, maybe something will come to mind and I'll report back if I found anything out.

Mozregression can't import the user preferences, can it?

> I'm sorry you're affected by this :(. If you happen to narrow it down to a
> pref or two (don't feel obligated to do this), post back and I'll look to
> see if there's an easy fix.

:-) It's not a big problem and I only submitted this because I thought it was an oversight and this behavior happened to everyone.
I found out how to tell Mozregression how to use a profile and just copied my folder. The bug actually goes back 3.7a1pre, however 3.7a1pre crashed and then I gave up. If there's a way to compare profiles I'd like to know.
(In reply to alexander.kern from comment #13)
> Oh, that's interesting. Considering that I would in fact like a fresh setup.
> Thanks for supplying the support link as well! Is there the possibility to
> just copy the profile and then refresh it so I have my old one in case I
> need it or for finding bugs like this one?

I haven't used it much, but it's supposed to create a directory under your Desktop directory, or your home directory if it can't find your Desktop directory, named "Old Firefox Data" (or I believe "Old Nightly Data" if you're on Nightly?)
Summary: Opening a link in a new tab does not make the tab bar scroll to the right so you can see it → Opening a link in a new tab does not make the tab bar scroll to the right so you can see it (toolkit.cosmeticAnimations.enabled = false)
Thanks Doug, I'm going to try this out soon and see if it's fixed then. If I change all the about:config settings back as it was previously and the bug doesn't reappear what else could be the reason?

Dão Gottwald [::dao], changing toolkit.cosmeticAnimations.enabled = false back to true doesn't fix this problem. It was just another thing I noticed was different from my profile to a fresh one, but it didn't fix the new tabs opening behind the arrow.
Summary: Opening a link in a new tab does not make the tab bar scroll to the right so you can see it (toolkit.cosmeticAnimations.enabled = false) → Opening a link in a new tab does not make the tab bar scroll to the right so you can see it
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: