Giter Site home page Giter Site logo

fboulnois / positron-ui-firefox Goto Github PK

View Code? Open in Web Editor NEW
5.0 0.0 1.0 65 KB

A simple userChrome for Firefox that restores connected tabs, visual dividers, and the focused tab highlight.

License: Mozilla Public License 2.0

CSS 100.00%
firefox firefox-customization userchrome userchromecss firefox-css

positron-ui-firefox's Introduction

Positron UI for Firefox

Table of Contents

  1. Introduction
  2. Screenshots
  3. Installation
  4. Proton UI Issues

Introduction

The Proton UI for Firefox 89 and later substantially modifies Firefox's User Interface (UI). Although the overall design is refreshed, tabs have been redesigned to float as buttons and are no longer connected to the address bar.

The goal of Positron is to make very minimal changes to the Proton UI to resolve issues outlined below. In less than 100 lines of CSS, Positron:

  • Restores connected tabs
  • Adds visual dividers between inactive tabs
  • Restores the small colorful line above the focused tab

Positron does not modify other parts of the Proton UI, including context menus, theme colors, icons, or UI control positions. Despite font sizes being unchanged, Positron takes slightly less space vertically and leaves more space for text horizontally. Positron is also compatible with different Firefox themes and UI densities. The latest userChrome.css supports Firefox 99+ on Linux, macOS, and Windows.

Screenshots

Before (Proton UI):

Proton UI Light Proton UI Dark

After (Positron):

Positron Light Positron Dark

Installation

  1. Go to about:profiles in the address bar
  2. Open the Root Directory for the profile in use
  3. Create a chrome folder in the root directory
  4. Copy the Positron userChrome.css into the chrome folder (so that the directory hierarchy is <root>/chrome/userChrome.css)
  5. Go to about:config in the address bar
  6. Search the preference names for legacyUser
  7. Toggle toolkit.legacyUserProfileCustomizations.stylesheets and set it to true
  8. Restart Firefox

Proton UI Issues

The new Proton UI tab design with floating tabs creates a more disjointed and confusing experience compared to the older approach with connected tabs:

  • Tab elements are no longer grouped together. For example, the back and forward buttons control the state of the focused tab, but because they are now disconnected from that tab, visually they look like they would help the user navigate between tabs instead. Switching back to connected tabs results in visually grouping all the controls that are related to the focused tab. This functionality is apparent to users even before they interact with Firefox for the first time. This argument is almost verbatim the reason why tabs were placed on top in Firefox 4 more than a decade ago.
  • The new design removes visual dividers between inactive tabs, which makes it challenging to identify where one inactive tab ends and the next begins. This results in misclicks and focusing of the wrong tab, especially as the number of tabs in the tab bar increases.
  • Finally, the new design removes almost all color from tabs and the address bar. It makes Firefox feel cold and sterile, and results in background and foreground colors not having sufficient contrast ratio. The contrast ratio between active and inactive tabs is 1.13:1, which is below the recommended minimum of 3:1 for non-text elements. Low contrast interfaces can make it difficult for many users to use. A smidge of color can make all the difference and add a bit of playfulness.

positron-ui-firefox's People

Contributors

fboulnois avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Forkers

jcoder58

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.