Giter Club home page Giter Club logo

Comments (2)

lunakurame avatar lunakurame commented on August 11, 2024

Looks like our CSS is fighting with Firefox' JS. The theme overrides max-width while JS is trying to set max-width too. I fixed it by letting JS do its thing, except for one specific case:

  1. Open 4 tabs (or any higher number of tabs, but not enough to let them scroll).
  2. Activate the second to last tab.
  3. Close it.
  4. Close the last tab.

For some reason it shrinks all tabs to exactly 100px and closing any tabs doesn't fix it until you move your mouse out of the tab bar. Instead of this weird behavior, I made it reset the tab width back to 100%, so unfortunately it still resizes the remaining tabs, but when you move your mouse and keep closing, it works okay, so I think that's less broken than forcing all tabs to resize to 100px. All other cases I checked work OK.

I don't really know how to fix that one scenario, because JS calculates the tab width we want to keep when closing tabs, but when JS resets it to 100px, we lose that info. I'll tag this issue with "help wanted" and leave it open, maybe someone figures it out.

from firefox-gnome-theme.

smithfred avatar smithfred commented on August 11, 2024

I think this is an artefact of Firefox's intended behaviour of always putting the next tab close button under the cursor when closing a tab (so that multiple tabs can be closed by just continually clicking).

Mousing away from the tab bar then presumably stops using the temporary JS tricks, reverting to the styled widths.

If you close the right-most tab, then there is no "next tab to the right", so presumably the JS just temporarily shrinks the remaining ones to Firefox's "standard" width.

FWIW, the "smart width" behaviour has always had a bug since its introduction to Firefox - with the standard theme, if you open enough tabs to scroll, then start closing them from the leftmost, when the scroll buttons disappear, the mouse is no longer over the next tab's close button.

from firefox-gnome-theme.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.