Git Product home page Git Product logo

moonlight-userchrome's Introduction

Moonlight ๐ŸŒŒ userChrome

A dark userstyle for Firefox inspired by moonlight-vscode-theme and github-moonlight

Firefox screenshot with the moonlight theme activated Warning: Screenshot does not include modifications made in this fork.

Fork additions

  • Auto-hiding URL bar by reddit user SchokoMilf
  • Favicon as a close button by MrOtherGuy
  • Slight design changes
    • Set tab bar to be on top of navigation bar (default in Firefox)
    • Enabled title bar controls for windows by default
    • More subdued design when highlighting menu items
    • Rounded close button when hovering over favicon
    • Padding on left of tab bar
    • Probably other stuff I'm forgetting
  • Hacky workarounds
    • Arbitrary border-radius to make something round in _favicon-close.css
    • Fixing weird padding in _tab-bar.css
    • Code that is probably getting overwritten

Installation

  1. Open your currently active profile folder
    1. In the URL bar type: about:profiles
    2. Look for the profile which has the "Default Profile" property set to true
    3. Click on "Open Folder" button belonging to the "Root Directory" property
  2. Create a new folder named chrome
    • Clone the theme directly into the chrome folder. If you choose this method you will be able to update the theme by pulling the latest files.
      OR
    • Download and extract the files in the chrome folder
  3. If you're running Firefox 69+
    1. In the URL bar type: about:config
    2. You will receive a warning to proceed with caution. Accept the Risk and Continue.
    3. In the "Search preference name" input field type toolkit.legacyUserProfileCustomizations.stylesheets
    4. Set it to true by double clicking the false value
  4. Restart the browser

Custom styling

The theme comes as is but it can be extended using CSS files provided in the custom folder. Further extensions should be included in the same folder to keep the main theme consistent. To enable custom styles, copy and paste the following @import statements at the end of the userChrome.css file.

Re-enable title bar controls (MIN-MAX-CLOSE buttons)

For Windows (enabled by default):

@import "custom/_titlebar-controls-enable-windows.css";

For macOS:

@import "custom/_titlebar-controls-enable-macos.css";

Disable megabar behavior

@import "custom/_megabar-disable.css";

Add Developer Tools styling

Set theme to dark in Firefox Developer Tools settings. Then, add the following line to userContent.css:

@import "custom/_dev-tools.css";

Disabling fork additions

Certain additions in this fork can be disabled through slight modifications in the files.

Disable auto-hiding URL bar

Comment out or delete the following line in userChrome.css:

@import '_navigation-bar-hide.css';

Disable favicon as close button

Comment out or delete the following line in userChrome.css:

@import '_favicon-close.css';

Remove left padding on tab bar

In _tab-bar.css change the 4th values to 0px for the following lines:

#TabsToolbar {
    padding: 0px 125px 0px 25px !important;
}

and

:root[sizemode="maximized"] #TabsToolbar {
    padding: 0px 0px 0px 25px !important;
}

License

This project is licensed under MIT license as described by the LICENSE file.
_favicon-close.css is also licensed under MPLv2 as described by the header.

Problems

There is a fair chance you'll come across bugs or mistakes as I don't know CSS, I haven't read the docs for custom CSS in Firefox, and I haven't read all of the original code. Because the bugs are likely my fault, please report them to me rather than upstream and I will try my best to fix them.

Known Bugs

  • Tab bar does not hide when in fullscreen

This is the unmodified version of the original developer's support message:

Support

If you love my work and would like to support my future endeavors I would gladly drink a coffee with you :)

Buy me a coffee button

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.