├── .yarnrc.yml
├── CREDITS
├── LEPTON
├── LICENSE
├── __tests__
├── _has.test.scss
├── accent_color.test.scss
├── color_scheme.test.scss
├── each.test.scss
├── example.scss
├── list.test.scss
├── media.test.scss
├── mode.test.scss
├── moz_document.test.scss
├── native_menu.test.scss
├── one_liner.test.scss
├── option.test.scss
├── os.test.scss
├── scss.spec.js
└── theme.test.scss
├── css
├── leptonChrome.css
├── leptonChromeESR.css
├── leptonContent.css
└── leptonContentESR.css
├── docs
├── Omni_ja.md
├── Preference.md
├── Project_Structure.md
├── README.md
├── Restrictions.md
├── Rules.md
└── Smart_Bookmarks.md
├── icons
├── add-device.svg
├── addons-logo.svg
├── align-distribute-top.svg
├── align-space-evenly-vertical.svg
├── apps-list-detail.svg
├── arrow-between-down.svg
├── arrow-between-up.svg
├── arrow-repeat-all.svg
├── arrow-sort-down-lines.svg
├── arrow-swap.svg
├── arrow-up-exclamation.svg
├── auto-fit-width.svg
├── blank.svg
├── blue-berror.svg
├── book-add.svg
├── book.svg
├── bookmark-multiple.svg
├── bookmarks-toolbar-alt.svg
├── bookmarks-toolbar.svg
├── bookmarksMenu-open.svg
├── bookmarksMenu-open2.svg
├── bookmarksToolbar-open-alt.svg
├── bookmarksToolbar-open.svg
├── broom.svg
├── bug.svg
├── calendar-agenda.svg
├── characterEncoding.svg
├── chat-sparkle.svg
├── checkmark-circle.svg
├── close-duplicate-tabs-photon.svg
├── close-duplicate-tabs.svg
├── close-tab-photon.svg
├── close-tab.svg
├── close-window.svg
├── code-text.svg
├── code.svg
├── command-console.svg
├── command-eyedropper.svg
├── command-frames.svg
├── command-pick.svg
├── command-responsivemode.svg
├── container-openin-16.svg
├── content-view.svg
├── copy-select.svg
├── dashboard.svg
├── datarestore.svg
├── datastore.svg
├── developer.svg
├── device-desktop.svg
├── device-phone.svg
├── device-tablet.svg
├── device-tv.svg
├── device-vr.svg
├── dismiss-filled.svg
├── document-css.svg
├── document-endnote.svg
├── document-landscape-split-hint.svg
├── document-search.svg
├── drawer-arrow-download.svg
├── edit-active.svg
├── edit-copy.svg
├── edit-cut.svg
├── edit-paste-go.svg
├── edit-paste-search.svg
├── edit-paste.svg
├── enter-fullscreen.svg
├── eraser.svg
├── error-connection-failure.svg
├── error-malformed-url.svg
├── error-server-not-found.svg
├── error-session-restore.svg
├── error-tab-crashed.svg
├── exit-fullscreen.svg
├── eye-hide.svg
├── eye-show.svg
├── eye-tracking-off.svg
├── filter-dismiss.svg
├── filter-reload.svg
├── find-again.svg
├── firefox-view.svg
├── flame.svg
├── fluid.svg
├── folder-globe.svg
├── folder-open.svg
├── folder.svg
├── forget.svg
├── highlight.svg
├── history-reverse.svg
├── horizon-night.svg
├── horizon-sunrise.svg
├── identity-icons-brand.svg
├── image-add.svg
├── image-alt-text.svg
├── image-arrow-counterclockwise.svg
├── image-copy.svg
├── image.svg
├── import-export.svg
├── import.svg
├── ion.svg
├── key-multiple.svg
├── link-no-tracking.svg
├── link-square.svg
├── link.svg
├── lock-closed.svg
├── mail-inbox-all.svg
├── mail-inbox.svg
├── mail.svg
├── menu-check.svg
├── merge.svg
├── movetowindow-16.svg
├── new-tab-forward-photon.svg
├── new-tab-forward.svg
├── new-tab-multiple-photon.svg
├── new-tab-multiple.svg
├── new-tab-photon.svg
├── new-tab-skip-forward-photon.svg
├── new-tab-skip-forward.svg
├── new-tab.svg
├── no-search-results.svg
├── organization-horizontal.svg
├── panelarrow-vertical-reverse.svg
├── panelarrow-vertical.svg
├── password-hide.svg
├── password.svg
├── paste-text.svg
├── paste-url.svg
├── paste.svg
├── performance.svg
├── pin-tab.svg
├── play-fill.svg
├── play.svg
├── plug-disconnected.svg
├── pocket-outline.svg
├── private-favicon.svg
├── profiler-stopwatch.svg
├── pulse-square.svg
├── pwa-install.svg
├── pwa-launch.svg
├── pwa-manage.svg
├── pwa-remove.svg
├── quit.svg
├── radio.svg
├── redo.svg
├── refresh-cw.svg
├── relay-logo.svg
├── reload-auto.svg
├── reload.svg
├── resize-image.svg
├── resize.svg
├── restore-session.svg
├── screenshot-1.svg
├── screenshot.svg
├── select-all-on.svg
├── send-to-device.svg
├── send.svg
├── share.svg
├── shield-task.svg
├── sign-out.svg
├── sort.svg
├── star-line-horizontal.svg
├── synced-tabs.svg
├── tab-audio-blocked-circle-12.svg
├── tab-audio-muted-small.svg
├── tab-audio-playing-small.svg
├── tab-bottom-corner-left-australis-clipped.svg
├── tab-bottom-corner-left-australis.svg
├── tab-bottom-corner-left-chrome-clipped.svg
├── tab-bottom-corner-left-chrome.svg
├── tab-bottom-corner-left-chromeLegacy-clipped.svg
├── tab-bottom-corner-left-chromeLegacy.svg
├── tab-bottom-corner-left-edge-clipped.svg
├── tab-bottom-corner-left-edge.svg
├── tab-bottom-corner-left-wave-clipped.svg
├── tab-bottom-corner-left-wave.svg
├── tab-bottom-corner-left.svg
├── tab-bottom-corner-right-australis-cilpped.svg
├── tab-bottom-corner-right-australis.svg
├── tab-bottom-corner-right-chrome-clipped.svg
├── tab-bottom-corner-right-chrome.svg
├── tab-bottom-corner-right-chromeLegacy-clipped.svg
├── tab-bottom-corner-right-chromeLegacy.svg
├── tab-bottom-corner-right-edge-clipped.svg
├── tab-bottom-corner-right-edge.svg
├── tab-bottom-corner-right-wave-clipped.svg
├── tab-bottom-corner-right-wave.svg
├── tab-bottom-corner-right.svg
├── tab-copy-photon.svg
├── tab-copy.svg
├── tab-desktop-multiple-bottom.svg
├── tab-desktop-multiple.svg
├── tab-multiple.svg
├── tab-photon.svg
├── tab-unload-photon.svg
├── tab-unload.svg
├── tab.svg
├── tag-open.svg
├── tag.svg
├── tetris-app.svg
├── text-direction-horizontal-ltr.svg
├── text-number-format.svg
├── text-proofing-tools.svg
├── text-sort-ascending.svg
├── time-picker.svg
├── timer10.svg
├── tool-accessibility.svg
├── toolbar.svg
├── toolbarButton-download.svg
├── toolbarButton-editorHighlight.svg
├── toolbarButton-upload.svg
├── toolbox.svg
├── translations.svg
├── undo.svg
├── unpin-tab.svg
├── update-circle.svg
├── vertical-line.svg
├── video-clip.svg
├── video-snapshot.svg
├── video.svg
├── weather-snowflake.svg
├── welcome-back.svg
├── whatsnew.svg
├── window-dev-tools.svg
├── window.svg
└── wrench-filled.svg
├── install.ps1
├── install.sh
├── package.json
├── src
├── autohide
│ ├── _back_button.scss
│ ├── _bookmarkbar.scss
│ ├── _common.scss
│ ├── _fill_urlbar.scss
│ ├── _forward_button.scss
│ ├── _index.scss
│ ├── _infobar.scss
│ ├── _navbar.scss
│ ├── _page_action.scss
│ ├── _sidebar.scss
│ ├── _tab.scss
│ ├── _tabbar.scss
│ ├── _toolbar_overlap.scss
│ └── sidebar
│ │ ├── _overlap.scss
│ │ └── _static.scss
├── bookmarkbar
│ ├── _index.scss
│ └── _multi_row.scss
├── centered
│ ├── _bookmarkbar.scss
│ ├── _index.scss
│ ├── _tab.scss
│ ├── _urlbar.scss
│ └── tab
│ │ ├── _content.scss
│ │ ├── _label.scss
│ │ └── _layout.scss
├── combined
│ ├── _back_forward_button.scss
│ ├── _combined_circle_button.scss
│ ├── _home_button.scss
│ ├── _index.scss
│ └── _reload_button.scss
├── compatibility
│ ├── _index.scss
│ ├── _os.scss
│ ├── _others.scss
│ └── _theme.scss
├── contents
│ ├── _activity_stream.scss
│ ├── _compatibility.scss
│ ├── _context_menu.scss
│ ├── _dark_mode.scss
│ ├── _downloads.scss
│ ├── _error_page.scss
│ ├── _monospace.scss
│ ├── _proton_color.scss
│ ├── _proton_contents.scss
│ ├── _rounding.scss
│ ├── _video_player.scss
│ ├── dark_mode
│ │ ├── _accounts_com.scss
│ │ ├── _addons_org.scss
│ │ └── _support_org.scss
│ └── proton_contents
│ │ ├── _about_cache.scss
│ │ ├── _about_checkerboard.scss
│ │ ├── _about_memory.scss
│ │ ├── _about_others.scss
│ │ ├── _about_plugins.scss
│ │ ├── _about_preferences.scss
│ │ ├── _about_processes.scss
│ │ ├── _directory_view.scss
│ │ ├── _field_border.scss
│ │ ├── _proton_commons.scss
│ │ └── _view_source.scss
├── counter
│ ├── _bookmark_menu.scss
│ ├── _index.scss
│ └── _tab.scss
├── decoration
│ ├── _animate.scss
│ ├── _animate_common.scss
│ ├── _cursor.scss
│ ├── _download_panel.scss
│ ├── _field_border.scss
│ ├── _index.scss
│ ├── _panel_arrow.scss
│ └── _panel_button_separator.scss
├── fullscreen
│ ├── _index.scss
│ ├── _overlap.scss
│ └── _show_bookmarkbar.scss
├── hidden
│ └── _index.scss
├── icons
│ ├── _1.25px_stroke.scss
│ ├── _activity_stream.scss
│ ├── _addon_page.scss
│ ├── _context_menu.scss
│ ├── _global_menu.scss
│ ├── _global_menubar.scss
│ ├── _index.scss
│ ├── _library.scss
│ ├── _login_page.scss
│ ├── _panel.scss
│ ├── _shared.scss
│ ├── context_menu
│ │ ├── _content_area.scss
│ │ ├── _downloads.scss
│ │ ├── _others.scss
│ │ ├── _place.scss
│ │ └── _tab_toolbar.scss
│ ├── fork_browsers
│ │ ├── _floorp.scss
│ │ ├── _index.scss
│ │ ├── _tor_browser.scss
│ │ └── _waterfox.scss
│ └── layout
│ │ ├── _activity_stream.scss
│ │ ├── _bookmark_menu.scss
│ │ ├── _menu.scss
│ │ ├── _menu_common.scss
│ │ ├── _menu_contents.scss
│ │ └── _panel.scss
├── leptonChrome.scss
├── leptonChromeESR.scss
├── leptonChromeNightly.scss
├── leptonContent.scss
├── leptonContentESR.scss
├── leptonContentNightly.scss
├── library
│ ├── _chrome.scss
│ ├── _contents.scss
│ ├── _folder_icons.scss
│ ├── _menubar.scss
│ ├── _proton.scss
│ └── _proton_contents.scss
├── navbar
│ ├── _as_sidebar.scss
│ └── _index.scss
├── others
│ ├── _findbar_floating_on_top.scss
│ └── _index.scss
├── padding
│ ├── _bookmark_menu.scss
│ ├── _bookmarkbar.scss
│ ├── _drag_space.scss
│ ├── _first_tab.scss
│ ├── _global_menubar.scss
│ ├── _index.scss
│ ├── _infobar.scss
│ ├── _menu.scss
│ ├── _navbar.scss
│ ├── _panel.scss
│ ├── _panel_header.scss
│ ├── _popup_panel.scss
│ ├── _tab_padding.scss
│ ├── _tabbar_height.scss
│ ├── _tabbar_width.scss
│ ├── _toolbar_button.scss
│ ├── _urlbar.scss
│ ├── _urlview_expanding.scss
│ └── _urlview_result.scss
├── panel
│ ├── _full_width_padding.scss
│ ├── _full_width_separator.scss
│ ├── _index.scss
│ └── _remove_strip.scss
├── rounding
│ ├── _dialog.scss
│ ├── _index.scss
│ ├── _library.scss
│ ├── _round.scss
│ └── _square.scss
├── sidebar
│ ├── _index.scss
│ └── _overlap.scss
├── tab
│ ├── _clipped_tab.scss
│ ├── _connect_to_window.scss
│ ├── _container_tab.scss
│ ├── _crashed_tab.scss
│ ├── _index.scss
│ ├── _newtab_button.scss
│ ├── _picture_in_picture_tab.scss
│ ├── _selected_tab.scss
│ ├── _sound_tab.scss
│ ├── _unload_tab.scss
│ ├── _unselected_tab.scss
│ ├── clipped_tab
│ │ ├── _always_show_tab_icon.scss
│ │ ├── _letters_cleary.scss
│ │ ├── _pinned_close_button.scss
│ │ └── _show_close_button_at_hover.scss
│ ├── newtab_button
│ │ ├── _looks_like_tab.scss
│ │ ├── _proton_like_button.scss
│ │ └── _smaller_button.scss
│ ├── selected_tab
│ │ ├── _bold.scss
│ │ ├── _bottom_rounded_corner.scss
│ │ ├── _bottom_rounded_corner_others.scss
│ │ ├── _box_shadow.scss
│ │ ├── _color_like_toolbar.scss
│ │ ├── _multi_selected.scss
│ │ ├── _photon_like_contextline.scss
│ │ └── _supernova_like_contextline.scss
│ ├── sound_tab
│ │ ├── _hide_label.scss
│ │ ├── _show_label.scss
│ │ └── _show_with_favicons.scss
│ └── unselected_tab
│ │ ├── _bar_separator.scss
│ │ ├── _dynamic_separator.scss
│ │ └── _static_separator.scss
├── tabbar
│ ├── _as_titlebar.scss
│ ├── _fill_width.scss
│ ├── _index.scss
│ ├── _layout.scss
│ ├── _multi_row.scss
│ ├── _on_bottom.scss
│ ├── _one_liner.scss
│ ├── _unscroll.scss
│ └── layout
│ │ ├── _navbar_padding.scss
│ │ ├── _window_control.scss
│ │ └── _window_control_size.scss
├── theme
│ ├── _built_in.scss
│ ├── _dark_blue_accent.scss
│ ├── _dark_blue_color.scss
│ ├── _fully_color.scss
│ ├── _fully_dark.scss
│ ├── _index.scss
│ ├── _monospace.scss
│ ├── _non_native_menu.scss
│ ├── _private.scss
│ ├── _proton_chrome.scss
│ ├── _proton_color.scss
│ ├── _system_default_theme.scss
│ ├── _transparent.scss
│ ├── _waterfox.scss
│ ├── proton_chrome
│ │ ├── _cert.scss
│ │ ├── _library_popup.scss
│ │ ├── _page_info.scss
│ │ ├── _proton_commons.scss
│ │ └── _sanitize_everything.scss
│ ├── system_default_theme
│ │ ├── _gtk.scss
│ │ ├── _mac.scss
│ │ ├── _urlbar_focus_color.scss
│ │ ├── _win10.scss
│ │ └── _win7.scss
│ └── transparent
│ │ ├── _general.scss
│ │ ├── _general_element_background.scss
│ │ ├── _mac.scss
│ │ ├── _menu.scss
│ │ ├── _panel.scss
│ │ ├── _win11.scss
│ │ └── _win7_8.scss
├── urlview
│ ├── _always_show_page_actions.scss
│ ├── _as_launcher.scss
│ ├── _focus_item_border.scss
│ ├── _full_width_padding.scss
│ ├── _go_button_when_typing.scss
│ ├── _iconbox_as_separator.scss
│ ├── _index.scss
│ └── _move_icon_to_left.scss
└── utils
│ ├── _accent_color.scss
│ ├── _color_scheme.scss
│ ├── _each.scss
│ ├── _has.scss
│ ├── _list.scss
│ ├── _media.scss
│ ├── _mode.scss
│ ├── _moz_box.scss
│ ├── _moz_document.scss
│ ├── _native_menu.scss
│ ├── _one_liner.scss
│ ├── _option.scss
│ ├── _os.scss
│ ├── _proton_elements.scss
│ ├── _theme.scss
│ └── _window_control.scss
├── user.js
├── userChrome.css
├── userContent.css
├── waterfox.sh
└── yarn.lock
/.yarnrc.yml:
--------------------------------------------------------------------------------
1 | nodeLinker: node-modules
2 |
--------------------------------------------------------------------------------
/LEPTON:
--------------------------------------------------------------------------------
1 | [Info]
2 | Branch=master
3 |
--------------------------------------------------------------------------------
/__tests__/_has.test.scss:
--------------------------------------------------------------------------------
1 | @use "true" as *;
2 | @use "example" as *;
3 | @use "../src/utils/has" as *;
4 |
5 | @include test-module("`:has()` selector test [mix]") {
6 | @include test("exist `:has()`") {
7 | @include assert {
8 | @include output {
9 | @include Has {
10 | @include example;
11 | }
12 | }
13 | @include expect {
14 | @supports selector(:has(a)) {
15 | @include example;
16 | }
17 | }
18 | }
19 | }
20 | @include test("don't exist `:has()`") {
21 | @include assert {
22 | @include output {
23 | @include NotHas {
24 | @include example;
25 | }
26 | }
27 | @include expect {
28 | @supports not selector(:has(a)) {
29 | @include example;
30 | }
31 | }
32 | }
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/__tests__/example.scss:
--------------------------------------------------------------------------------
1 | @mixin example_tag() {
2 | body {
3 | @content;
4 | }
5 | }
6 | @mixin example_property() {
7 | font-size: 16px;
8 | }
9 |
10 | @mixin example() {
11 | @include example_tag {
12 | @include example_property;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/__tests__/scss.spec.js:
--------------------------------------------------------------------------------
1 | const path = require("path");
2 | const sassTrue = require("sass-true");
3 | const glob = require("fast-glob");
4 |
5 | // https://www.educative.io/blog/sass-tutorial-unit-testing-with-sass-true
6 | // Find all of the Sass files that end in `*.test.scss` in any directory of this project.
7 | // I use path.resolve because True requires absolute paths to compile test files.
8 | const pattern = path.resolve(process.cwd(), "__tests__/**/*.test.scss");
9 | const sassTestFiles = glob.sync([pattern]);
10 |
11 | // Run True on every file found with the describe and it methods provided
12 | sassTestFiles.forEach(file => {
13 | sassTrue.runSass(
14 | {describe, it},
15 | file
16 | );
17 | });
18 |
--------------------------------------------------------------------------------
/icons/add-device.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/align-distribute-top.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/icons/align-space-evenly-vertical.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/icons/apps-list-detail.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/icons/arrow-between-down.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/arrow-between-up.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/icons/arrow-repeat-all.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/arrow-sort-down-lines.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/arrow-swap.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/arrow-up-exclamation.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/icons/auto-fit-width.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/blank.svg:
--------------------------------------------------------------------------------
1 |
3 |
--------------------------------------------------------------------------------
/icons/book-add.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/book.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/bookmark-multiple.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/bookmarks-toolbar-alt.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/icons/bookmarks-toolbar.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/icons/bookmarksMenu-open.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/bookmarksMenu-open2.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/bookmarksToolbar-open-alt.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/icons/bookmarksToolbar-open.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/broom.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/bug.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/calendar-agenda.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/chat-sparkle.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/icons/checkmark-circle.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/icons/close-duplicate-tabs-photon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/icons/close-duplicate-tabs.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/icons/close-tab-photon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/icons/close-tab.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/icons/close-window.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/icons/code-text.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/icons/code.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/command-console.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/icons/command-eyedropper.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/icons/command-frames.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/command-pick.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/command-responsivemode.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/icons/container-openin-16.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/content-view.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/copy-select.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/dashboard.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/datarestore.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/datastore.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/developer.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/device-desktop.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/icons/device-phone.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/icons/device-tablet.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/icons/device-tv.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/icons/device-vr.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/icons/dismiss-filled.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/document-endnote.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/document-landscape-split-hint.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/document-search.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/drawer-arrow-download.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/edit-active.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/icons/edit-copy.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/edit-cut.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/icons/edit-paste-go.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/edit-paste.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/icons/enter-fullscreen.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/eraser.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/icons/exit-fullscreen.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/eye-hide.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/eye-show.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/filter-dismiss.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/icons/filter-reload.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/icons/find-again.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/icons/firefox-view.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/icons/fluid.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/folder-open.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/folder.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/forget.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/icons/highlight.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/history-reverse.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/icons/image-add.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/image-alt-text.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/image-arrow-counterclockwise.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/image-copy.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/image.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/import-export.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/icons/import.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/icons/ion.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/icons/key-multiple.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/link-square.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/link.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/lock-closed.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/mail-inbox-all.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/mail-inbox.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/mail.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/icons/menu-check.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/merge.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/icons/movetowindow-16.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/new-tab-forward-photon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/icons/new-tab-forward.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/new-tab-multiple-photon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/icons/new-tab-multiple.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/new-tab-photon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/icons/new-tab-skip-forward-photon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/icons/new-tab-skip-forward.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/new-tab.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/icons/organization-horizontal.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/icons/panelarrow-vertical-reverse.svg:
--------------------------------------------------------------------------------
1 |
5 |
--------------------------------------------------------------------------------
/icons/panelarrow-vertical.svg:
--------------------------------------------------------------------------------
1 |
4 |
8 |
--------------------------------------------------------------------------------
/icons/password-hide.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/password.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/performance.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/pin-tab.svg:
--------------------------------------------------------------------------------
1 |
4 |
7 |
--------------------------------------------------------------------------------
/icons/play-fill.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/icons/play.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/plug-disconnected.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/pocket-outline.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/icons/profiler-stopwatch.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/icons/pulse-square.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/icons/pwa-install.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/icons/pwa-launch.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/icons/pwa-manage.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/icons/pwa-remove.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/icons/quit.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/radio.svg:
--------------------------------------------------------------------------------
1 |
4 |
7 |
--------------------------------------------------------------------------------
/icons/redo.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/refresh-cw.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/reload-auto.svg:
--------------------------------------------------------------------------------
1 |
5 |
--------------------------------------------------------------------------------
/icons/reload.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/icons/resize-image.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/resize.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/restore-session.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/screenshot.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/select-all-on.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/send-to-device.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/send.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/share.svg:
--------------------------------------------------------------------------------
1 |
4 |
8 |
--------------------------------------------------------------------------------
/icons/shield-task.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/sign-out.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/sort.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/icons/star-line-horizontal.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/tab-audio-blocked-circle-12.svg:
--------------------------------------------------------------------------------
1 |
4 |
15 |
--------------------------------------------------------------------------------
/icons/tab-audio-muted-small.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/icons/tab-audio-playing-small.svg:
--------------------------------------------------------------------------------
1 |
4 |
7 |
--------------------------------------------------------------------------------
/icons/tab-bottom-corner-left-australis-clipped.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/icons/tab-bottom-corner-left-australis.svg:
--------------------------------------------------------------------------------
1 |
10 |
--------------------------------------------------------------------------------
/icons/tab-bottom-corner-left-chrome-clipped.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/icons/tab-bottom-corner-left-chrome.svg:
--------------------------------------------------------------------------------
1 |
10 |
--------------------------------------------------------------------------------
/icons/tab-bottom-corner-left-chromeLegacy-clipped.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/icons/tab-bottom-corner-left-chromeLegacy.svg:
--------------------------------------------------------------------------------
1 |
10 |
--------------------------------------------------------------------------------
/icons/tab-bottom-corner-left-edge-clipped.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/icons/tab-bottom-corner-left-edge.svg:
--------------------------------------------------------------------------------
1 |
10 |
--------------------------------------------------------------------------------
/icons/tab-bottom-corner-left-wave-clipped.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/icons/tab-bottom-corner-left-wave.svg:
--------------------------------------------------------------------------------
1 |
10 |
--------------------------------------------------------------------------------
/icons/tab-bottom-corner-left.svg:
--------------------------------------------------------------------------------
1 |
2 |
6 |
--------------------------------------------------------------------------------
/icons/tab-bottom-corner-right-australis-cilpped.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/icons/tab-bottom-corner-right-australis.svg:
--------------------------------------------------------------------------------
1 |
10 |
--------------------------------------------------------------------------------
/icons/tab-bottom-corner-right-chrome-clipped.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/icons/tab-bottom-corner-right-chrome.svg:
--------------------------------------------------------------------------------
1 |
10 |
--------------------------------------------------------------------------------
/icons/tab-bottom-corner-right-chromeLegacy-clipped.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/icons/tab-bottom-corner-right-chromeLegacy.svg:
--------------------------------------------------------------------------------
1 |
10 |
--------------------------------------------------------------------------------
/icons/tab-bottom-corner-right-edge-clipped.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/icons/tab-bottom-corner-right-edge.svg:
--------------------------------------------------------------------------------
1 |
10 |
--------------------------------------------------------------------------------
/icons/tab-bottom-corner-right-wave-clipped.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/icons/tab-bottom-corner-right-wave.svg:
--------------------------------------------------------------------------------
1 |
10 |
--------------------------------------------------------------------------------
/icons/tab-bottom-corner-right.svg:
--------------------------------------------------------------------------------
1 |
2 |
6 |
--------------------------------------------------------------------------------
/icons/tab-copy-photon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/icons/tab-copy.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/tab-desktop-multiple-bottom.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/tab-desktop-multiple.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/icons/tab-multiple.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/icons/tab-photon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/icons/tab-unload-photon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/icons/tab-unload.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/tab.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/tag-open.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/tag.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/icons/tetris-app.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/icons/text-direction-horizontal-ltr.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/text-sort-ascending.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/toolbar.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/toolbarButton-download.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/toolbarButton-editorHighlight.svg:
--------------------------------------------------------------------------------
1 |
5 |
--------------------------------------------------------------------------------
/icons/toolbarButton-upload.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/toolbox.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/translations.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/icons/undo.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/unpin-tab.svg:
--------------------------------------------------------------------------------
1 |
4 |
9 |
--------------------------------------------------------------------------------
/icons/update-circle.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/icons/vertical-line.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/video-clip.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/video-snapshot.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/video.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/weather-snowflake.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/icons/whatsnew.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/window-dev-tools.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/icons/window.svg:
--------------------------------------------------------------------------------
1 |
4 |
7 |
--------------------------------------------------------------------------------
/icons/wrench-filled.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/autohide/_back_button.scss:
--------------------------------------------------------------------------------
1 | :root:not([customizing="true"]) #back-button[disabled="true"] {
2 | margin-left: var(--uc-toolbarbutton-hide-size) !important;
3 | opacity: 0 !important;
4 | pointer-events: none;
5 | }
6 |
7 | @include Animate {
8 | #back-button {
9 | transition-property: background-color, opacity, margin-left !important;
10 | }
11 | #back-button[disabled="true"] {
12 | transition: background-color 1s var(--animation-easing-function),
13 | opacity 1s var(--animation-easing-function),
14 | margin-left 0.5s ease !important;
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/src/autohide/_forward_button.scss:
--------------------------------------------------------------------------------
1 | :root:not([customizing="true"]) #forward-button[disabled="true"] {
2 | margin-left: var(--uc-toolbarbutton-hide-size) !important;
3 | opacity: 0 !important;
4 | pointer-events: none;
5 | }
6 |
7 | @include Animate {
8 | #forward-button {
9 | transition-property: background-color, opacity, margin-left !important;
10 | }
11 | #forward-button[disabled="true"] {
12 | transition: background-color 1s var(--animation-easing-function),
13 | opacity 1s var(--animation-easing-function),
14 | margin-left 0.5s ease !important;
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/src/autohide/_sidebar.scss:
--------------------------------------------------------------------------------
1 | // Refer variable `src/sidebar/overlap`
2 |
3 | @include Option("userChrome.autohide.sidebar") {
4 | #sidebar-box {
5 | min-width: var(--uc-sidebar-width) !important;
6 | max-width: var(--uc-sidebar-width) !important;
7 | }
8 |
9 | :root[inFullscreen="true"] #sidebar-box {
10 | min-width: var(--uc-sidebar-activate-width) !important;
11 | max-width: var(--uc-sidebar-activate-width) !important;
12 | }
13 |
14 | @include Option("userChrome.sidebar.overlap") {
15 | @import "sidebar/overlap";
16 | }
17 | @include NotOption("userChrome.sidebar.overlap") {
18 | @import "sidebar/static";
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/src/autohide/_tab.scss:
--------------------------------------------------------------------------------
1 | .tabbrowser-tab:not([multiselected]) .tab-content:not(:hover):not([selected]) {
2 | @include NotOption("userChrome.autohide.tab.opacity") {
3 | @include NotOption("userChrome.autohide.tab.blur") {
4 | margin-bottom: -64px;
5 | }
6 | }
7 | @include Option("userChrome.autohide.tab.opacity") {
8 | opacity: 0%;
9 | }
10 | @include Option("userChrome.autohide.tab.blur") {
11 | filter: blur(8px);
12 | }
13 |
14 | @include Animate {
15 | transition-timing-function: var(--animation-easing-function);
16 | transition-duration: 0.2s;
17 | transition-delay: 600ms;
18 | &:is(:hover, :focus-within) {
19 | transition-delay: 0s;
20 | }
21 |
22 | @include NotOption("userChrome.autohide.tab.opacity") {
23 | @include NotOption("userChrome.autohide.tab.blur") {
24 | transition-property: margin-bottom;
25 | }
26 | }
27 | @include Option("userChrome.autohide.tab.opacity") {
28 | transition-property: opacity;
29 | }
30 | @include Option("userChrome.autohide.tab.blur") {
31 | transition-property: filter;
32 | }
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/src/bookmarkbar/_index.scss:
--------------------------------------------------------------------------------
1 | @include Option("userChrome.bookmarkbar.multi_row") {
2 | @import "_multi_row";
3 | }
4 |
--------------------------------------------------------------------------------
/src/centered/_bookmarkbar.scss:
--------------------------------------------------------------------------------
1 | #PlacesToolbarItems {
2 | display: flex !important;
3 | justify-content: safe center !important;
4 | }
5 |
--------------------------------------------------------------------------------
/src/centered/_index.scss:
--------------------------------------------------------------------------------
1 | /*= Centered - Tab ===========================================================*/
2 | @import "tab";
3 |
4 | /*= Centered - URL Bar =======================================================*/
5 | @include Option("userChrome.centered.urlbar") {
6 | @import "urlbar";
7 | }
8 |
9 | /*= Centered - Bookmark Bar ==================================================*/
10 | @include Option("userChrome.centered.bookmarkbar") {
11 | @import "bookmarkbar";
12 | }
13 |
--------------------------------------------------------------------------------
/src/centered/_tab.scss:
--------------------------------------------------------------------------------
1 | @include Option("userChrome.centered.tab") {
2 | @import "tab/layout";
3 |
4 | @include NotOption("userChrome.centered.tab.label") {
5 | @import "tab/content";
6 | }
7 | @include Option("userChrome.centered.tab.label") {
8 | @import "tab/label";
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/src/centered/_urlbar.scss:
--------------------------------------------------------------------------------
1 | // Source file https://github.com/MrOtherGuy/firefox-csshacks/tree/master/chrome/urlbar_centered_text.css made available under Mozilla Public License v. 2.0
2 | // See the above repository for updates as well as full license text.
3 |
4 | #urlbar:not([focused]) {
5 | #urlbar-input,
6 | .urlbar-input {
7 | text-align: center !important;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/src/centered/tab/_content.scss:
--------------------------------------------------------------------------------
1 | .tab-icon-stack {
2 | margin-inline-start: auto;
3 | }
4 | .tab-label-container {
5 | max-width: min-content;
6 | margin-inline-end: auto;
7 | }
8 | @include Option("userChrome.tab.close_button_at_hover") {
9 | .tabbrowser-tab:not(:hover, [pinned]) > .tab-stack > .tab-content > .tab-close-button {
10 | padding-inline-start: 6px !important; /* Original: 0px */
11 | width: 24px !important; /* Original: 17px */
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/src/centered/tab/_label.scss:
--------------------------------------------------------------------------------
1 | /* Based on https://github.com/MrOtherGuy/firefox-csshacks/blob/master/chrome/centered_tab_label.css */
2 | .tab-label-container {
3 | display: grid;
4 | }
5 | .tab-label,
6 | .tab-secondary-label {
7 | overflow: clip;
8 |
9 | // #761
10 | justify-self: safe center;
11 | align-self: safe center;
12 | }
13 |
14 | .tabbrowser-tab[selected]:not(:hover) .tab-label-container:not([textoverflow]),
15 | .tabbrowser-tab:not(:hover,[pinned]) .tab-label-container:not([textoverflow]) {
16 | margin-inline-end: 5px; // userChrome.tab.close_button_at_hover 6px - 1px
17 | }
18 |
--------------------------------------------------------------------------------
/src/centered/tab/_layout.scss:
--------------------------------------------------------------------------------
1 | @include Option("userChrome.centered.tab.label") {
2 | .tabbrowser-tab[selected]:not(:hover) .tab-label-container:not([textoverflow]),
3 | .tabbrowser-tab:not(:hover,[pinned]) .tab-label-container:not([textoverflow]) {
4 | margin-inline-end: 5px;
5 | }
6 | }
7 |
8 | @include Option("userChrome.tab.close_button_at_hover") {
9 | #tabbrowser-tabs[closebuttons="activetab"] .tabbrowser-tab:not(:hover,[pinned]) .tab-label-container:not([textoverflow]) {
10 | margin-inline-end: 1px;
11 | }
12 | #tabbrowser-tabs[closebuttons="activetab"] .tabbrowser-tab:not([selected]):not(:hover, [pinned]) .tab-label-container label {
13 | padding-inline-end: 18px;
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/src/combined/_home_button.scss:
--------------------------------------------------------------------------------
1 | @import "combined_circle_button";
2 |
3 | #nav-bar-customization-target > #home-button {
4 | position: relative;
5 | @include circle_button_shape;
6 |
7 | &:hover > .toolbarbutton-icon {
8 | @include circle_button_background_hover;
9 | }
10 | &:hover:active > .toolbarbutton-icon {
11 | @include circle_button_background_active;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/src/combined/_reload_button.scss:
--------------------------------------------------------------------------------
1 | // Source file https://github.com/MrOtherGuy/firefox-csshacks/tree/master/chrome/reload_button_in_urlbar.css made available under Mozilla Public License v. 2.0
2 | // See the above repository for updates as well as full license text.
3 | #urlbar {
4 | padding-right: calc(var(--uc-toolbarbutton-size) - (var(--urlbar-margin-inline) / 2));
5 | }
6 |
7 | #nav-bar-customization-target > #stop-reload-button {
8 | z-index: 3;
9 | position: relative;
10 |
11 | --toolbarbutton-hover-background: var(--urlbar-box-hover-bgcolor);
12 | color: var(--urlbar-box-hover-text-color) !important;
13 |
14 | margin-left: calc( -1 * (var(--uc-toolbarbutton-size) + var(--urlbar-margin-inline)));
15 | }
16 |
17 | #nav-bar-customization-target > #stop-reload-button > .toolbarbutton-1 > .toolbarbutton-icon {
18 | width: var(--uc-urlbar-icon-size) !important;
19 | height: var(--uc-urlbar-icon-size) !important;
20 |
21 | padding: var(--urlbar-icon-padding) !important;
22 | }
23 |
--------------------------------------------------------------------------------
/src/compatibility/_index.scss:
--------------------------------------------------------------------------------
1 | /*= Theme - Compatibility ====================================================*/
2 | @include Option("userChrome.compatibility.theme") {
3 | @import "theme";
4 | }
5 |
6 | /*= OS - Compatibility =======================================================*/
7 | @include Option("userChrome.compatibility.os") {
8 | @import "os";
9 | }
10 |
11 | /*= Others - Compatibility ===================================================*/
12 | @import "others";
13 |
--------------------------------------------------------------------------------
/src/compatibility/_others.scss:
--------------------------------------------------------------------------------
1 | @include Option("userChrome.compatibility.panel_cutoff") {
2 | #appMenu-popup panelview {
3 | width: 24.5em !important; /* can modify panel width, Original: 22.5em */
4 | }
5 | }
6 |
7 | @include Option("userChrome.compatibility.navbar_top_border") {
8 | #nav-bar {
9 | box-shadow: none !important;
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/src/contents/_dark_mode.scss:
--------------------------------------------------------------------------------
1 | @include Dark {
2 | @import "dark_mode/addons_org";
3 | @import "dark_mode/support_org";
4 | @import "dark_mode/accounts_com";
5 |
6 | @include Option("userContent.page.dark_mode.pdf") {
7 | @include moz-document(unobservable-document) {
8 | @include moz-document(regexp "^(?!.*\\.pdf\\?n).*") {
9 | #outerContainer {
10 | --sidebaritem-bg-color: #38383D;
11 | --uc-pdf-dark-filter: grayscale(10%) invert(90%);
12 | }
13 |
14 | #sidebarContainer > #sidebarContent > #thumbnailView .thumbnailImage {
15 | filter: var(--uc-pdf-dark-filter);
16 | box-shadow: 0 0 0 1px hsla(0, 0%, 100%, 0.5), 0 2px 8px hsla(0, 0%, 100%, 0.3) !important;
17 | }
18 | #viewerContainer > #viewer > .page > .canvasWrapper > canvas {
19 | filter: var(--uc-pdf-dark-filter);
20 | }
21 | }
22 | }
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/src/contents/_downloads.scss:
--------------------------------------------------------------------------------
1 | @include moz-document(url-prefix "about:downloads") {
2 | @include Animate {
3 | @include Option("userChrome.decoration.download_panel") {
4 | @import "../decoration/download_panel";
5 | }
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/src/contents/_monospace.scss:
--------------------------------------------------------------------------------
1 | @include moz-document(
2 | url-prefix "about:",
3 | url-prefix "chrome://",
4 | regexp "^((jar:)?file:\/\/\/).*\/$"
5 | ) {
6 | @import "../theme/monospace";
7 | }
8 |
--------------------------------------------------------------------------------
/src/contents/proton_contents/_about_cache.scss:
--------------------------------------------------------------------------------
1 | @include moz-document(url-prefix "about:cache") {
2 | table {
3 | padding: 0 !important;
4 | }
5 |
6 | th,
7 | td {
8 | padding: 4px !important;
9 | text-align: match-parent !important;
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/src/contents/proton_contents/_about_checkerboard.scss:
--------------------------------------------------------------------------------
1 | @include moz-document(url-prefix "about:checkerboard") {
2 | #canvas {
3 | border: 1px solid var(--in-content-border-color) !important;
4 | }
5 | #excludePageFromZoom {
6 | vertical-align: bottom !important;
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/src/contents/proton_contents/_about_memory.scss:
--------------------------------------------------------------------------------
1 | @include moz-document(url-prefix "about:memory") {
2 | .opsRow,
3 | .section {
4 | background-color: var(--in-content-box-background) !important;
5 | color: var(--in-content-page-color) !important;
6 | }
7 | .opsRowLabel input {
8 | vertical-align: bottom !important;
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/src/contents/proton_contents/_about_others.scss:
--------------------------------------------------------------------------------
1 | @include moz-document(url-prefix "about:support") {
2 | #reset-box-button {
3 | --in-content-focus-outline-color: var(--in-content-danger-button-background) !important;
4 | background-color: var(--in-content-danger-button-background) !important;
5 | color: var(--in-content-primary-button-text-color) !important;
6 | border-color: var(--in-content-primary-button-border-color) !important;
7 |
8 | &:enabled:hover {
9 | background-color: var(--in-content-danger-button-background-hover) !important;
10 | color: var(--in-content-primary-button-text-color-hover) !important;
11 | border-color: var(--in-content-primary-button-border-hover) !important;
12 | }
13 | &:enabled:hover:active {
14 | background-color: var(--in-content-danger-button-background-active) !important;
15 | color: var(--in-content-primary-button-text-color-active) !important;
16 | border-color: var(--in-content-primary-button-border-active) !important;
17 | }
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/src/contents/proton_contents/_about_plugins.scss:
--------------------------------------------------------------------------------
1 | @include moz-document(url-prefix "about:plugins") {
2 | .notice {
3 | background: var(--in-content-box-background) !important;
4 | border: 1px solid var(--in-content-border-color) !important;
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/src/contents/proton_contents/_about_processes.scss:
--------------------------------------------------------------------------------
1 | @include moz-document(
2 | url-prefix "about:processes",
3 | url-prefix "about:performance"
4 | ) {
5 | td.type.favicon[style*='background-image: url("chrome://global/skin/icons/link.svg");'] {
6 | background-image: url("../icons/link.svg") !important;
7 | }
8 |
9 | .profiler-icon {
10 | cursor: pointer;
11 | background-image: url("../icons/performance.svg") !important;
12 | background-repeat: no-repeat !important;
13 | background-position: center !important;
14 | @include NotOption("userChrome.rounding.square_button") {
15 | border-radius: 8px !important;
16 | }
17 |
18 | // #960
19 | color: inherit !important;
20 | }
21 | }
22 |
23 | @include moz-document(url-prefix "about:profiling") {
24 | .perf-intro-icon {
25 | background-image: url("../icons/performance.svg") !important;
26 | }
27 | }
28 |
29 |
--------------------------------------------------------------------------------
/src/contents/proton_contents/_directory_view.scss:
--------------------------------------------------------------------------------
1 | @include moz-document(
2 | url-prefix "about:sync-log",
3 | regexp "^(((jar:)?file:\/\/\/)|(chrome:\/\/)).*\/$"
4 | ) {
5 | body {
6 | background-color: var(--in-content-box-background) !important;
7 | margin: 4em auto !important; /* Override to default */
8 | }
9 | thead a {
10 | color: var(--in-content-page-color) !important;
11 | }
12 | td ::before {
13 | vertical-align: top !important;
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/src/contents/proton_contents/_field_border.scss:
--------------------------------------------------------------------------------
1 | @include moz-document(url-prefix "about:") {
2 | html|input:is([type="email"], [type="tel"], [type="text"], [type="password"], [type="url"], [type="number"]):not(#newtab-search-text):hover,
3 | html|textarea:hover,
4 | xul|search-textbox:hover {
5 | border-color: var(--in-content-focus-outline-color) !important;
6 | transition: border-color 0.5s var(--animation-easing-function);
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/src/counter/_bookmark_menu.scss:
--------------------------------------------------------------------------------
1 | menupopup[placespopup="true"] > menu.bookmark-item > .menu-right {
2 | counter-reset: bookmark-counts 0;
3 | }
4 | menupopup[placespopup="true"] > menu.bookmark-item::after {
5 | @include InlineBox;
6 | content: "(" counter(bookmark-counts) ")";
7 | }
8 |
9 | menupopup[placespopup="true"] > menu.bookmark-item > .menu-iconic-highlightable-text,
10 | menupopup[placespopup="true"] > menu.bookmark-item > .menu-accel-container,
11 | menupopup[placespopup="true"] > menu.bookmark-item > .menu-right {
12 | @include BoxOrder(2);
13 | }
14 |
15 | menu.bookmark-item > menupopup[placespopup="true"] > .bookmark-item {
16 | counter-increment: bookmark-counts;
17 | }
18 |
--------------------------------------------------------------------------------
/src/counter/_index.scss:
--------------------------------------------------------------------------------
1 | /*= Counter for Tab ==========================================================*/
2 | @include Option("userChrome.counter.tab") {
3 | @import "tab";
4 | }
5 |
6 | /*= Counter for Bookmark menu ================================================*/
7 | @include Option("userChrome.counter.bookmark_menu") {
8 | @import "bookmark_menu";
9 | }
10 |
--------------------------------------------------------------------------------
/src/decoration/_animate_common.scss:
--------------------------------------------------------------------------------
1 | $toolbox-transition-margin-top: margin-top 1s ease;
2 | $toolbox-transition-margin-top-fullscreen: margin-top 1.3s var(--animation-easing-function) 50ms;
3 | $toolbox-transition-margin-bottom: margin-bottom var(--uc-autohide-toolbar-speed) var(--animation-easing-function) var(--uc-autohide-toolbar-delay);
4 | $toolbox-transition-background-color: background-color 0.2s var(--animation-easing-function);
5 | $toolbox-transition-background-color-inactive: background-color 0.5s var(--animation-easing-function);
6 |
--------------------------------------------------------------------------------
/src/decoration/_download_panel.scss:
--------------------------------------------------------------------------------
1 | /* Accent Color for downloaded item */
2 | #downloadsListBox .download-state[exists] .downloadDetails {
3 | color: var(--button-primary-bgcolor);
4 | &.downloadDetailsHover {
5 | color: var(--button-primary-hover-bgcolor);
6 | }
7 | }
8 |
9 | /* File moved or missing */
10 | #downloadsListBox .download-state:not([exists], [state="0"]) {
11 | .downloadTarget {
12 | text-decoration: line-through;
13 | text-decoration-color: color-mix(in srgb, currentColor 65%, transparent);
14 | &:hover {
15 | text-decoration: none;
16 | }
17 | }
18 | .downloadTypeIcon {
19 | filter: grayscale(100%) !important;
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/src/decoration/_panel_arrow.scss:
--------------------------------------------------------------------------------
1 | #appMenu-popup {
2 | background-image: url("../icons/panelarrow-vertical.svg");
3 | background-repeat: no-repeat;
4 | background-position-x: right 10px;
5 | background-position-y: top;
6 |
7 | -moz-context-properties: fill, stroke;
8 | fill: var(--panel-background);
9 | stroke: var(--panel-border-color);
10 |
11 | &[side="top"] {
12 | margin-top: -8px !important; /* Original: -4px */
13 | padding-top: 4px;
14 | }
15 | &[side="bottom"] {
16 | background-image: url("../icons/panelarrow-vertical-reverse.svg");
17 | background-position-y: bottom;
18 |
19 | margin-bottom: -8px !important; /* Original: -4px */
20 | padding-bottom: 4px;
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/src/decoration/_panel_button_separator.scss:
--------------------------------------------------------------------------------
1 | :root:not([chromehidden~="toolbar"]) #PanelUI-button {
2 | // Original: not include at [uidensity=compact]
3 | margin-inline-start: 3px;
4 | padding-inline-start: 2px;
5 | border-inline-start: 1px solid;
6 | border-image: linear-gradient(
7 | transparent 4px,
8 | var(--toolbarseparator-color) 4px,
9 | var(--toolbarseparator-color) calc(100% - 4px),
10 | transparent calc(100% - 4px)
11 | );
12 | border-image-slice: 1;
13 | }
14 |
--------------------------------------------------------------------------------
/src/fullscreen/_index.scss:
--------------------------------------------------------------------------------
1 | @include Option("userChrome.fullscreen.overlap") {
2 | @include Option("browser.fullscreen.autohide") {
3 | @import "overlap";
4 | }
5 | }
6 |
7 | @include Option("userChrome.fullscreen.show_bookmarkbar") {
8 | @import "show_bookmarkbar";
9 | }
10 |
--------------------------------------------------------------------------------
/src/fullscreen/_overlap.scss:
--------------------------------------------------------------------------------
1 | :root[sizemode="fullscreen"]:not([inDOMFullscreen="true"]) #navigator-toolbox {
2 | position: fixed !important; /* Needed for content to take up entire height */
3 | z-index: 1000 !important; /* Puts the UI above the content */
4 |
5 | &:is(:hover, :focus-within) {
6 | margin-top: 0 !important;
7 | }
8 | }
9 |
10 | :root[sizemode="fullscreen"]:not([inDOMFullscreen="true"]) :-moz-any(#navigator-toolbox, #titlebar, #toolbar-menubar, #TabsToolbar, #nav-bar, #PersonalToolbar) {
11 | width: 100%; /* Makes the UI take up the entire width */
12 | }
13 |
14 | :root[sizemode="fullscreen"]:not([inDOMFullscreen="true"]) #urlbar:popover-open {
15 | // Prevent URLbar overlay #1028
16 | position: fixed !important;
17 | }
18 |
19 | @include OS($linux) {
20 | /* Fix transparent background */
21 | :root:is([tabsintitlebar], [customtitlebar])[sizemode="fullscreen"]:not([inDOMFullscreen="true"])#{$not_lwtheme} #TabsToolbar {
22 | appearance: auto !important;
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/src/fullscreen/_show_bookmarkbar.scss:
--------------------------------------------------------------------------------
1 | :root:not([sizemode="fullscreen"]) #PersonalToolbar[initialized]:not([collapsed="true"]),
2 | :root[sizemode="fullscreen"] #PersonalToolbar[initialized] {
3 | visibility: unset !important; /* Makes the bookmarks toolbar visible if enabled */
4 | }
5 |
--------------------------------------------------------------------------------
/src/icons/_1.25px_stroke.scss:
--------------------------------------------------------------------------------
1 | #firefox-view-button {
2 | list-style-image: url("../icons/firefox-view.svg") !important;
3 | }
4 | #reset-pbm-toolbar-button {
5 | list-style-image: url("../icons/flame.svg") !important;
6 | }
7 | #translations-button-icon {
8 | list-style-image: url("../icons/translations.svg") !important;
9 | }
10 |
11 | .tabbrowser-tab:is(
12 | [image="chrome://global/skin/icons/performance.svg"],
13 | [image="chrome://devtools/skin/images/tool-profiler.svg"]
14 | ) .tab-icon-image {
15 | content: url("../icons/performance.svg") !important;
16 | }
17 |
18 | .tabbrowser-tab:is(
19 | [image="chrome://global/skin/icons/developer.svg"]
20 | ) .tab-icon-image {
21 | content: url("../icons/developer.svg") !important;
22 | }
23 |
24 | .tabbrowser-tab:is(
25 | [image="chrome://browser/skin/controlcenter/dashboard.svg"]
26 | ) .tab-icon-image {
27 | content: url("../icons/dashboard.svg") !important;
28 | }
29 |
--------------------------------------------------------------------------------
/src/icons/_context_menu.scss:
--------------------------------------------------------------------------------
1 | /** Context Menu - Icons ******************************************************/
2 | @import "context_menu/tab_toolbar.scss";
3 | @import "context_menu/content_area.scss";
4 | @import "context_menu/downloads";
5 | @import "context_menu/place";
6 | @import "context_menu/others";
7 |
--------------------------------------------------------------------------------
/src/icons/_login_page.scss:
--------------------------------------------------------------------------------
1 | .menuitem-export {
2 | background-image: url("../icons/toolbarButton-download.svg") !important;
3 | }
4 |
--------------------------------------------------------------------------------
/src/icons/_shared.scss:
--------------------------------------------------------------------------------
1 | @mixin initIcons() {
2 | --uc-folder-icon: url("chrome://global/skin/icons/folder.svg");
3 | @include Option("userChrome.icon.library") {
4 | --uc-folder-icon: url("../icons/folder.svg");
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/src/icons/fork_browsers/_index.scss:
--------------------------------------------------------------------------------
1 | /*= Waterfox =================================================================*/
2 | @import "waterfox";
3 |
4 | /*= Tor Browser ==============================================================*/
5 | @import "tor_browser";
6 |
7 | /*= Floorp Browser ===========================================================*/
8 | @import "floorp";
9 |
--------------------------------------------------------------------------------
/src/icons/fork_browsers/_tor_browser.scss:
--------------------------------------------------------------------------------
1 | @include Option("userChrome.icon.panel") {
2 | #appMenuNewIdentity{
3 | list-style-image: url("chrome://browser/skin/new_identity.svg");
4 | }
5 | #appMenuNewCircuit {
6 | list-style-image: url("chrome://browser/skin/new_circuit.svg");
7 | }
8 | #appMenu_torBrowserUserManual {
9 | list-style-image: url("chrome://browser/skin/onion.svg");
10 | }
11 | }
12 |
13 | @include Option("userChrome.icon.menu") {
14 | #menu_newIdentity {
15 | --menuitem-image: url("chrome://browser/skin/new_identity.svg");
16 | }
17 | #menu_newCircuit {
18 | --menuitem-image: url("chrome://browser/skin/new_circuit.svg");
19 | }
20 | #torBrowserUserManual {
21 | --menuitem-image: url("chrome://browser/skin/onion.svg");
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/src/icons/fork_browsers/_waterfox.scss:
--------------------------------------------------------------------------------
1 | @include Option("userChrome.icon.panel") {
2 | #appMenu-restart-button {
3 | list-style-image: url("../icons/refresh-cw.svg") !important;
4 | }
5 | }
6 | @include Option("userChrome.icon.menu") {
7 | #menu_FileRestartItem {
8 | --menuitem-image: url("../icons/refresh-cw.svg");
9 | }
10 |
11 | #toggle_status-dummybar {
12 | --menuitem-image: url("../icons/pulse-square.svg");
13 | }
14 |
15 | menuitem.privatetab-icon {
16 | --menuitem-image: url("../icons/private-favicon.svg");
17 | }
18 |
19 | #sidebar_waterfox_net-menuitem-_openAllBookmarksWithStructure {
20 | --menuitem-image: url("../icons/organization-horizontal.svg");
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/src/icons/layout/_activity_stream.scss:
--------------------------------------------------------------------------------
1 | @import "./menu_common";
2 |
3 | .context-menu-list .context-menu-item button {
4 | padding-inline-start: 0 !important;
5 | }
6 |
7 | .context-menu-list .context-menu-item button span {
8 | @include _layout_icon_menus;
9 |
10 | padding-inline-start: 24px; /* 16p + (4px * 2) */
11 | background-position: var(--uc-menu-background-position, left) 4px center;
12 | &:dir(rtl) {
13 | --uc-menu-background-position: right;
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/src/leptonChromeESR.scss:
--------------------------------------------------------------------------------
1 | @use "utils/mode";
2 |
3 | @namespace xul url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");
4 | @namespace html url("http://www.w3.org/1999/xhtml");
5 |
6 | @include mode.ESR;
7 | @import "leptonChrome";
8 |
--------------------------------------------------------------------------------
/src/leptonChromeNightly.scss:
--------------------------------------------------------------------------------
1 | @use "utils/mode";
2 |
3 | @namespace xul url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");
4 | @namespace html url("http://www.w3.org/1999/xhtml");
5 |
6 | @include mode.MEDIA_PREF;
7 | @import "leptonChrome";
8 |
9 | /*@ DEPRECATED @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*/
10 | @include mode.MEDIA_BOOL_PREF;
11 | @import "leptonChrome";
12 |
--------------------------------------------------------------------------------
/src/leptonContentESR.scss:
--------------------------------------------------------------------------------
1 | @use "utils/mode";
2 |
3 | @namespace xul url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");
4 | @namespace html url("http://www.w3.org/1999/xhtml");
5 |
6 | @include mode.ESR;
7 | @import "leptonContent";
8 |
--------------------------------------------------------------------------------
/src/leptonContentNightly.scss:
--------------------------------------------------------------------------------
1 | @use "utils/mode";
2 |
3 | @namespace xul url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");
4 | @namespace html url("http://www.w3.org/1999/xhtml");
5 |
6 | @include mode.MEDIA_PREF;
7 | @import "leptonContent";
8 |
9 | /*@ DEPRECATED @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*/
10 | @include mode.MEDIA_BOOL_PREF;
11 | @import "leptonContent";
12 |
--------------------------------------------------------------------------------
/src/library/_chrome.scss:
--------------------------------------------------------------------------------
1 | @import "folder_icons";
2 |
3 | @include moz-document(url "chrome://browser/content/places/places.xhtml") {
4 | @include OS($linux) {
5 | @import "menubar";
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/src/library/_contents.scss:
--------------------------------------------------------------------------------
1 | @include moz-document(url "chrome://browser/content/places/places.xhtml") {
2 | /** Library - Icons Replace *************************************************/
3 | @include Option("userChrome.icon.library") {
4 | @import "folder_icons";
5 | @import "menubar";
6 | }
7 |
8 | @include OS($linux) {
9 | /*= Layout Fixes =========================================================*/
10 | menupopup menu {
11 | padding-block: 4px;
12 | }
13 |
14 | .menu-right {
15 | width: 16px !important; /* Original: 1ex */
16 | background-image: url("chrome://global/skin/icons/arrow-right.svg");
17 | background-position: right center;
18 | }
19 |
20 | /*= Proton ===============================================================*/
21 | @include Option("userContent.page.proton") {
22 | @import "proton";
23 | @import "proton_contents";
24 | }
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/src/navbar/_index.scss:
--------------------------------------------------------------------------------
1 | /*= Nav Bar - Navbar comabine with sidebar===================================*/
2 | @include Option("userChrome.navbar.as_sidebar") {
3 | @import "as_sidebar";
4 | }
5 |
--------------------------------------------------------------------------------
/src/others/_index.scss:
--------------------------------------------------------------------------------
1 | @include Option("userChrome.findbar.floating_on_top") {
2 | @import "findbar_floating_on_top";
3 | }
4 |
--------------------------------------------------------------------------------
/src/padding/_bookmark_menu.scss:
--------------------------------------------------------------------------------
1 | :root {
2 | --bookmark-menu-padding: 3px;
3 | }
4 | :root[uidensity="compact"] {
5 | --bookmark-menu-padding: 1.5px;
6 | }
7 | @include Option("userChrome.padding.menu_compact") {
8 | :root {
9 | --bookmark-menu-padding: 2px;
10 | }
11 | :root[uidensity=compact] {
12 | --bookmark-menu-padding: 0px;
13 | }
14 | }
15 |
16 | :root:not([uidensity="touch"]) #BMB_bookmarksPopup .subviewbutton,
17 | :root:not([uidensity="touch"]) #PlacesToolbar menupopup[placespopup] .bookmark-item,
18 | :root:not([uidensity="touch"]) #PlacesToolbar menupopup[placespopup] .openintabs-menuitem {
19 | padding-block: var(--bookmark-menu-padding) !important;
20 | }
21 |
22 | @include Option("userChrome.padding.menu_compact", "userChrome.padding.bookmark_menu.compact") {
23 | :root:not([uidensity="touch"]) #BMB_bookmarksPopup .bookmark-item,
24 | :root:not([uidensity="touch"]) #PlacesToolbar menupopup[placespopup] .bookmark-item {
25 | min-height: unset !important; /* Original: 24px */
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/src/padding/_bookmarkbar.scss:
--------------------------------------------------------------------------------
1 | :root[uidensity="compact"] #PersonalToolbar toolbarbutton {
2 | margin-top: 0px !important; /* Original: 2px */
3 | margin-bottom: 1px !important;
4 | }
5 |
--------------------------------------------------------------------------------
/src/padding/_first_tab.scss:
--------------------------------------------------------------------------------
1 | /* for First Tab Space */
2 | :root {
3 | --uc-space-left-tabbar: 8px; /* If the option is not specified, it is equivalent to 0px. */
4 | }
5 |
6 | @include NotOption("userChrome.padding.first_tab.always") {
7 | :root:not([tabsintitlebar]):not([customtitlebar]) #tabbrowser-tabs:not([positionpinnedtabs]),
8 | :root:is([sizemode="maximized"], [sizemode="fullscreen"]) #tabbrowser-tabs:not([positionpinnedtabs]) {
9 | padding-inline-start: var(--uc-space-left-tabbar) !important;
10 | }
11 | }
12 |
13 | @include Option("userChrome.padding.first_tab.always") {
14 | :root:not([tabsintitlebar]):not([customtitlebar]) #tabbrowser-tabs,
15 | :root:is([sizemode="maximized"], [sizemode="fullscreen"]) #tabbrowser-tabs {
16 | padding-inline-start: calc(var(--tab-overflow-pinned-tabs-width, 0px) + var(--uc-space-left-tabbar)) !important;
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/src/padding/_global_menubar.scss:
--------------------------------------------------------------------------------
1 | /* Vertical Align - Center & Height: 100% */
2 | #main-menubar {
3 | @include BoxFlex(1, true);
4 | }
5 |
6 | /* Rounding */
7 | #main-menubar > menu {
8 | border-radius: 4px;
9 | }
10 |
11 | /* Menubar item padding */
12 | :root {
13 | --global-menubar-padding: 2px;
14 | }
15 | :root[uidensity="compact"] {
16 | --global-menubar-padding: 1px;
17 | }
18 | :root[uidensity="touch"] {
19 | --global-menubar-padding: 4px;
20 | }
21 | #main-menubar > menu {
22 | padding-block: var(--global-menubar-padding) !important;
23 | }
24 |
25 | /* Reduce items */
26 | #main-menubar > menu > menupopup menuitem,
27 | #main-menubar > menu > menupopup menu {
28 | padding-block: var(--bookmark-menu-padding) !important;
29 | @include Option("userChrome.compatibility.os.win11") {
30 | --bookmark-menu-padding: 3px;
31 | &:is([type="checkbox"], [type="radio"]) {
32 | --bookmark-menu-padding: 0px;
33 | }
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/src/padding/_navbar.scss:
--------------------------------------------------------------------------------
1 | #nav-bar:not([customizing]) toolbarspring {
2 | min-width: 1px !important;
3 | max-width: 100px !important;
4 | }
5 |
--------------------------------------------------------------------------------
/src/padding/_panel_header.scss:
--------------------------------------------------------------------------------
1 | .panel-header{
2 | padding: unset !important;
3 | padding-top: 4px !important;
4 | }
5 |
--------------------------------------------------------------------------------
/src/padding/_tab_padding.scss:
--------------------------------------------------------------------------------
1 | @include Option("userChrome.tab.lepton_like_padding", "userChrome.tab.photon_like_padding") {
2 | :root {
3 | // --tab-block-margin: New version of --proton-tab-block-margin
4 | --proton-tab-block-margin: var(--tab-block-margin) !important; /* Original: 4px, Legacy */
5 | }
6 | :root[uidensity="touch"] {
7 | /* Like Original */
8 | --tab-block-margin: 4px !important;
9 | }
10 | }
11 |
12 | @include Option("userChrome.tab.lepton_like_padding") {
13 | :root {
14 | --tab-block-margin: 2px !important; /* New version of --proton-tab-block-margin */
15 | }
16 |
17 | // Floorp vertical tab sideeffect #766
18 | #tabbrowser-tabs[orient="vertical"] {
19 | --tab-block-margin: 4px !important;
20 |
21 | .tabbrowser-tab {
22 | margin-block: -1px !important;
23 | }
24 | }
25 | }
26 | @include Option("userChrome.tab.photon_like_padding") {
27 | :root {
28 | --tab-block-margin: 0px !important;
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/src/padding/_toolbar_button.scss:
--------------------------------------------------------------------------------
1 | :root[uidensity="compact"] {
2 | --toolbarbutton-outer-padding: 2px !important; /* Original: 3px, General is 2px */
3 | }
4 |
5 | @include Option("userChrome.padding.toolbar_button.compact") {
6 | :root {
7 | --toolbarbutton-inner-padding: var(--uc-small-toolbarbutton-inner-padding) !important;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/src/padding/_urlview_expanding.scss:
--------------------------------------------------------------------------------
1 | #urlbar[breakout][breakout-extend] > #urlbar-background {
2 | animation-name: none !important;
3 | box-shadow: 0 1px 4px rgba(0, 0, 0, .05) !important;
4 | }
5 |
--------------------------------------------------------------------------------
/src/padding/_urlview_result.scss:
--------------------------------------------------------------------------------
1 | .urlbarView {
2 | margin-inline: 0 !important;
3 | width: 100% !important;
4 | }
5 |
6 | .urlbarView-row {
7 | padding-block: 0 !important;
8 | }
9 |
--------------------------------------------------------------------------------
/src/panel/_full_width_padding.scss:
--------------------------------------------------------------------------------
1 | /* Original
2 | --arrowpanel-menuitem-margin: 0 8px;
3 | --arrowpanel-menuitem-padding-block: 8px;
4 | --arrowpanel-menuitem-padding-inline: 8px;
5 | --arrowpanel-menuitem-padding: var(--arrowpanel-menuitem-padding-block) var(--arrowpanel-menuitem-padding-inline);
6 | */
7 |
8 | :root,
9 | :root:is([uidensity="compact"], [uidensity="touch"]) {
10 | --arrowpanel-menuitem-margin: 0 !important;
11 | --arrowpanel-menuitem-margin-inline: 0 !important;
12 | --arrowpanel-menuitem-padding-inline: calc(var(--arrowpanel-menuitem-padding-block) + 8px) !important;
13 | }
14 |
--------------------------------------------------------------------------------
/src/panel/_full_width_separator.scss:
--------------------------------------------------------------------------------
1 | /* Full width separators */
2 | :root {
3 | /* Original
4 | --panel-separator-margin-vertical: 4px;
5 | --panel-separator-margin-horizontal: 8px;
6 | --panel-separator-margin: var(--panel-separator-margin-vertical) var(--panel-separator-margin-horizontal);
7 | */
8 | --panel-separator-margin-horizontal: 0 !important;
9 | }
10 |
--------------------------------------------------------------------------------
/src/panel/_index.scss:
--------------------------------------------------------------------------------
1 | @include Option("userChrome.panel.remove_strip") {
2 | @import "remove_strip";
3 | }
4 |
5 | @include Option("userChrome.panel.full_width_separator") {
6 | @import "full_width_separator";
7 | }
8 |
9 | @include Option("userChrome.panel.full_width_padding") {
10 | @import "full_width_padding";
11 | }
12 |
--------------------------------------------------------------------------------
/src/panel/_remove_strip.scss:
--------------------------------------------------------------------------------
1 | #appMenu-fxa-separator {
2 | --panel-separator-zap-gradient: none; /* Original: linear-gradient(90deg, #9059FF 0%, #FF4AA2 52.08%, #FFBD4F 100%) */
3 | }
4 |
--------------------------------------------------------------------------------
/src/rounding/_dialog.scss:
--------------------------------------------------------------------------------
1 | @include Option("userChrome.rounding.square_dialog") {
2 | dialog, .dialogBox {
3 | border-radius: 0 !important;
4 | }
5 | }
6 |
--------------------------------------------------------------------------------
/src/rounding/_index.scss:
--------------------------------------------------------------------------------
1 | /** Rounding ******************************************************************/
2 | @import "round";
3 | @import "square";
4 | @import "dialog";
5 | @import "library";
6 |
7 | /*
8 | --toolbarbutton-border-radius: 4px;
9 | */
10 |
--------------------------------------------------------------------------------
/src/rounding/_library.scss:
--------------------------------------------------------------------------------
1 | /*= Library ==============================================================*/
2 | @include Option("userChrome.rounding.square_button") {
3 | #placesToolbar > toolbarbutton,
4 | #placesMenu > menu,
5 | #editBookmarkPanelRows .expander-up,
6 | #editBookmarkPanelRows .expander-down {
7 | border-radius: 0 !important;
8 | }
9 | }
10 | @include Option("userChrome.rounding.square_field") {
11 | #searchFilter,
12 | #detailsPane html|input,
13 | #places input
14 | #editBMPanel_tagsSelectorRow > richlistbox {
15 | border-radius: 0 !important;
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/src/rounding/_round.scss:
--------------------------------------------------------------------------------
1 | // #735
2 | .unified-extensions-item-menu-button.subviewbutton {
3 | border-radius: var(--arrowpanel-menuitem-border-radius) !important;
4 | }
5 |
--------------------------------------------------------------------------------
/src/sidebar/_index.scss:
--------------------------------------------------------------------------------
1 | @import "overlap";
2 |
--------------------------------------------------------------------------------
/src/tab/_clipped_tab.scss:
--------------------------------------------------------------------------------
1 | /** Clipped tabs - Letters cleary *********************************************/
2 | @include Option("userChrome.tab.letters_cleary") {
3 | @import "clipped_tab/letters_cleary";
4 | }
5 |
6 | /** Clipped tabs - Show close button at hover *********************************/
7 | @include Option("userChrome.tab.close_button_at_hover") {
8 | @import "clipped_tab/show_close_button_at_hover";
9 | }
10 |
11 | /** Clipped tabs - Show close button at pinned tab ****************************/
12 | @include Option("userChrome.tab.close_button_at_pinned") {
13 | @include NotOption("userChrome.tabbar.as_titlebar") {
14 | @import "clipped_tab/pinned_close_button";
15 | }
16 | }
17 |
18 | /** Clipped tabs - Always show tab icon ***************************************/
19 | @include Option("userChrome.tab.always_show_tab_icon") {
20 | @import "clipped_tab/always_show_tab_icon";
21 | }
22 |
--------------------------------------------------------------------------------
/src/tab/_crashed_tab.scss:
--------------------------------------------------------------------------------
1 | .tab-icon-image[crashed] {
2 | display: none !important;
3 | }
4 |
--------------------------------------------------------------------------------
/src/tab/_newtab_button.scss:
--------------------------------------------------------------------------------
1 | /*= New tab button - Looks like tab ==========================================*/
2 | @include Option("userChrome.tab.newtab_button_like_tab") {
3 | @import "newtab_button/looks_like_tab";
4 | }
5 |
6 | /*= New tab button - Smaller button ==========================================*/
7 | @include Option("userChrome.tab.newtab_button_smaller") {
8 | @import "newtab_button/smaller_button";
9 | }
10 |
11 | /*= New tab button - Proton like button ======================================*/
12 | @include Option("userChrome.tab.newtab_button_proton") {
13 | @import "newtab_button/proton_like_button";
14 | }
15 |
--------------------------------------------------------------------------------
/src/tab/_sound_tab.scss:
--------------------------------------------------------------------------------
1 | /*= Sound Tab - Hide Label ===================================================*/
2 | @include Option("userChrome.tab.sound_hide_label") {
3 | @include NotOption("userChrome.tab.sound_show_label") {
4 | @import "sound_tab/hide_label";
5 | }
6 | }
7 |
8 | /*= Sound Tab - Show Label ===================================================*/
9 | @include Option("userChrome.tab.sound_show_label") {
10 | @import "sound_tab/show_label";
11 | }
12 |
13 | /*= Sound Tab - Show with Favicons ===========================================*/
14 | @include Option("userChrome.tab.sound_with_favicons") {
15 | @import "sound_tab/show_with_favicons";
16 | }
17 |
--------------------------------------------------------------------------------
/src/tab/_unload_tab.scss:
--------------------------------------------------------------------------------
1 | .tabbrowser-tab[pending] .tab-content {
2 | opacity: 0.7;
3 | }
4 |
--------------------------------------------------------------------------------
/src/tab/_unselected_tab.scss:
--------------------------------------------------------------------------------
1 | /*= Unselected Tab - Dynamic Separator =======================================*/
2 | @include Option("userChrome.tab.dynamic_separator") {
3 | @import "unselected_tab/dynamic_separator";
4 | }
5 |
6 | /*= Unselected Tab - Static Separator ========================================*/
7 | @include Option("userChrome.tab.static_separator") {
8 | @import "unselected_tab/static_separator";
9 | }
10 |
11 | /*= Unselected Tab - Bar Separator ===========================================*/
12 | @include Option("userChrome.tab.bar_separator") {
13 | @import "unselected_tab/bar_separator";
14 | }
15 |
--------------------------------------------------------------------------------
/src/tab/clipped_tab/_always_show_tab_icon.scss:
--------------------------------------------------------------------------------
1 | .tab-icon-image:not([src], [pinned], [crashed], [busy]) {
2 | @include InlineBox(true);
3 | }
4 |
--------------------------------------------------------------------------------
/src/tab/newtab_button/_proton_like_button.scss:
--------------------------------------------------------------------------------
1 | :root:not([uidensity="touch"]) #tabs-newtab-button > .toolbarbutton-icon {
2 | --toolbarbutton-inner-padding: calc((var(--tab-min-height) - 16px) / 2 - 1px);
3 | }
4 |
--------------------------------------------------------------------------------
/src/tab/newtab_button/_smaller_button.scss:
--------------------------------------------------------------------------------
1 | #tabs-newtab-button > .toolbarbutton-icon {
2 | // Not like tab, as button
3 | --tab-border-radius: var(--toolbarbutton-border-radius);
4 | margin-left: 1px;
5 |
6 | /* Original: calc((var(--tab-min-height) - 16px) / 2) = 10px */
7 | --toolbarbutton-inner-padding: var(--uc-small-toolbarbutton-inner-padding);
8 | }
9 |
--------------------------------------------------------------------------------
/src/tab/selected_tab/_bold.scss:
--------------------------------------------------------------------------------
1 | .tab-label:is([selected], [attention]) {
2 | @include Option("userChrome.tab.selected_bold") {
3 | font-weight: 600;
4 | }
5 | }
6 |
--------------------------------------------------------------------------------
/src/tab/sound_tab/_hide_label.scss:
--------------------------------------------------------------------------------
1 | .tab-secondary-label:is([soundplaying], [muted], [activemedia-blocked], [pictureinpicture]) {
2 | display: none !important;
3 | }
4 |
--------------------------------------------------------------------------------
/src/tab/sound_tab/_show_label.scss:
--------------------------------------------------------------------------------
1 | .tab-secondary-label:is([soundplaying], [muted], [activemedia-blocked], [pictureinpicture]){
2 | @include Box(true);
3 | }
4 |
--------------------------------------------------------------------------------
/src/tabbar/_fill_width.scss:
--------------------------------------------------------------------------------
1 | // Source file https://github.com/MrOtherGuy/firefox-csshacks/tree/master/chrome/tabs_fill_available_width.css made available under Mozilla Public License v. 2.0
2 | // See the above repository for updates as well as full license text.
3 |
4 | /* Why 100vw? Tab closing requires width animation to end and "none" can't be animated */
5 | .tabbrowser-tab[fadein]:not([style^="max-width"]) {
6 | --tab-max-width: 100vw;
7 | max-width: var(--tab-max-width) !important;
8 | }
9 |
--------------------------------------------------------------------------------
/src/theme/_built_in.scss:
--------------------------------------------------------------------------------
1 | // lwtheme-mozlightdark: Legacy - v96
2 |
3 | /*= Lightmode - Color darker =================================================*/
4 | #{built-in-light-theme()} {
5 | --lwt-accent-color: rgb(229, 229, 235) !important; /* Original: rgb(240, 240, 244) */
6 | }
7 | @include OS($win10, $mac) {
8 | #{selector.nest(built-in-light-theme(), "#navigator-toolbox")} {
9 | background-color: var(--lwt-accent-color) !important;
10 | }
11 | }
12 |
13 | /*= Darkmode - Color lighter =================================================*/
14 | #{built-in-dark-theme()} {
15 | --toolbar-bgcolor: rgba(43, 42, 51, 5) !important; /* Original: rgba(43, 42, 51, 1) */
16 | }
17 |
--------------------------------------------------------------------------------
/src/theme/_monospace.scss:
--------------------------------------------------------------------------------
1 | * {
2 | font-family: -moz-fixed;
3 | }
4 |
--------------------------------------------------------------------------------
/src/theme/_proton_chrome.scss:
--------------------------------------------------------------------------------
1 | @import "proton_chrome/proton_commons";
2 | @import "proton_chrome/cert";
3 | @import "proton_chrome/page_info";
4 | @import "proton_chrome/library_popup";
5 | @import "proton_chrome/sanitize_everything";
6 |
--------------------------------------------------------------------------------
/src/theme/_system_default_theme.scss:
--------------------------------------------------------------------------------
1 | @import "system_default_theme/urlbar_focus_color";
2 | @import "system_default_theme/win7";
3 | @import "system_default_theme/win10";
4 | @import "system_default_theme/gtk";
5 | @import "system_default_theme/mac";
6 |
--------------------------------------------------------------------------------
/src/theme/_transparent.scss:
--------------------------------------------------------------------------------
1 | @include OS($win10, $win8, $win7, $linux) {
2 | @import "transparent/general";
3 | }
4 | @include OS($win8, $win7, $linux) {
5 | @import "transparent/general_element_background";
6 | }
7 | @include OS($win10) {
8 | @import "transparent/win11";
9 | }
10 | @include OS($win8, $win7) {
11 | @import "transparent/win7_8";
12 | }
13 | @include OS($mac) {
14 | @import "transparent/mac";
15 | }
16 |
--------------------------------------------------------------------------------
/src/theme/_waterfox.scss:
--------------------------------------------------------------------------------
1 | /* New Folder Button */
2 | #editBMPanel_newFolderButton {
3 | appearance: none;
4 | border: 0;
5 | border-radius: 4px;
6 | background-color: var(--button-bgcolor);
7 | color: var(--button-color, inherit);
8 | font-weight: 600;
9 | min-width: 0;
10 | padding: 8px 16px;
11 |
12 | /* This button is deeper in the visual hierarchy than others (notably the
13 | buttons at the bottom of the panel), so it should be slightly smaller. */
14 | font-size: 90%;
15 |
16 | /* This button needs to align with the tree above it. */
17 | margin-inline-start: 4px;
18 |
19 | &:hover {
20 | background-color: var(--button-hover-bgcolor);
21 | &:active {
22 | background-color: var(--button-active-bgcolor);
23 | }
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/src/theme/proton_chrome/_library_popup.scss:
--------------------------------------------------------------------------------
1 | /*= Library Popup ============================================================*/
2 | @include moz-document(url "chrome://browser/content/places/places.xhtml") {
3 | @include OS($linux) {
4 | @import "../../library/proton";
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/src/theme/proton_chrome/_sanitize_everything.scss:
--------------------------------------------------------------------------------
1 | #sanitizeEverythingWarningIcon {
2 | list-style-image: url("chrome://global/skin/icons/warning.svg") !important;
3 | -moz-context-properties: fill;
4 | fill: var(--uc-warning-icon-bgcolor);
5 |
6 | width: 48px;
7 | height: 48px;
8 | }
9 |
--------------------------------------------------------------------------------
/src/theme/system_default_theme/_gtk.scss:
--------------------------------------------------------------------------------
1 | /*= GTK - URL View url accent color ==========================================*/
2 | @include OS($linux) {
3 | @include not_lwtheme {
4 | .urlbarView-url {
5 | @include AccentColor {
6 | --urlbar-popup-url-color: #{$accentColor};
7 | }
8 | }
9 |
10 | // Rollback to color #864
11 | --toolbar-field-background-color: Field !important;
12 | --toolbar-field-color: FieldText !important;
13 | --toolbar-field-border-color: ThreeDShadow !important;
14 |
15 | #urlbar-background, #searchbar {
16 | // Original: light-dark(rgba(0, 0, 0, .05), rgba(0, 0, 0, .3))
17 | background-color: var(--toolbar-field-background-color) !important;
18 | }
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/src/theme/system_default_theme/_urlbar_focus_color.scss:
--------------------------------------------------------------------------------
1 | /*= Common - URL Bar focus color =============================================*/
2 | // TODO: `OS` Not covered case
3 | $_urlBarFocusSelector: ":root:is([tabsintitlebar], [customtitlebar]):not(:-moz-window-inactive)#{$not_lwtheme}";
4 | $_urlBarFocusDarkSelector: ":root:is([tabsintitlebar], [customtitlebar])[lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive)";
5 |
6 | @media (-moz-windows-accent-color-in-titlebar), (-moz-gtk-csd-available) {
7 | /* URL Bar */
8 | @include AccentColor {
9 | #{$_urlBarFocusSelector},
10 | #{$_urlBarFocusDarkSelector} {
11 | --focus-outline-color: #{$accentColor} !important;
12 | }
13 |
14 | #{$_urlBarFocusSelector} #urlbar[open] > #urlbar-background,
15 | #{$_urlBarFocusDarkSelector} #urlbar[open] > #urlbar-background {
16 | border-color: color-mix(
17 | in srgb,
18 | $accentColor 50%,
19 | transparent
20 | ) !important; /* Like: --toolbar-field-focus-border-color */
21 | }
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/src/theme/transparent/_general.scss:
--------------------------------------------------------------------------------
1 | #main-window,
2 | #navigator-toolbox-background {
3 | background-color: transparent !important;
4 | appearance: auto !important;
5 | -moz-default-appearance: -moz-win-borderless-glass !important;
6 | }
7 |
8 | #navigator-toolbox {
9 | background-color: transparent !important;
10 | background-image: none !important;
11 | }
12 |
13 | #nav-bar,
14 | #PersonalToolbar {
15 | background-image: linear-gradient(
16 | var(--toolbar-bgcolor),
17 | var(--toolbar-bgcolor)
18 | ), var(--lwt-additional-images);
19 | background-repeat: repeat-x, var(--lwt-background-tiling);
20 | background-position: 0 0, var(--lwt-background-alignment);
21 | background-attachment: scroll, fixed !important;
22 | background-size: auto 100%, auto auto;
23 | }
24 |
25 | #appcontent {
26 | appearance: auto !important;
27 | -moz-default-appearance: -moz-win-exclude-glass !important;
28 | }
29 |
--------------------------------------------------------------------------------
/src/theme/transparent/_mac.scss:
--------------------------------------------------------------------------------
1 | // https://github.com/te6-in/lepton-custom/blob/26110f0de64dd70d6396b5d101e1907cf441b110/te6-custom.css#L138
2 | // https://github.com/Tnings/MacosVibrant/blob/main/userChrome.css
3 |
4 | :root:not(:-moz-window-inactive) #navigator-toolbox {
5 | background-color: transparent !important;
6 | }
7 |
8 | #TabsToolbar,
9 | #titlebar,
10 | #nav-bar,
11 | #PersonalToolbar,
12 | #tabbrowser-tabs {
13 | // Before FF v103: -moz-mac-vibrant-titlebar-light, -moz-mac-vibrant-titlebar-dark
14 | -moz-appearance: -moz-mac-source-list !important;
15 | background-color: transparent !important;
16 | }
17 |
18 | /* De-emphasize tab icons and names when window is unfocused */
19 | :root:-moz-window-inactive {
20 | .tab-content,
21 | #urlbar {
22 | opacity: 0.6;
23 | }
24 |
25 | #urlbar-background {
26 | background-color: transparent !important;
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/src/theme/transparent/_menu.scss:
--------------------------------------------------------------------------------
1 | // Menu
2 | .menupopup-arrowscrollbox[part*="content"] {
3 | background: color-mix(in srgb, var(--menu-background-color, Menu) 90%, transparent) !important;
4 | }
5 |
6 | @include NativeMenu(true) {
7 | html#main-window #mainPopupSet menupopup:not(.in-menulist) {
8 | --menu-background-color: Menu !important;
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/src/theme/transparent/_panel.scss:
--------------------------------------------------------------------------------
1 | panel[type="arrow"] {
2 | --panel-background: transparent !important;
3 | }
4 |
5 | panelview {
6 | background: color-mix(in srgb, var(--arrowpanel-background) 90%, transparent) !important;
7 | }
8 |
--------------------------------------------------------------------------------
/src/theme/transparent/_win11.scss:
--------------------------------------------------------------------------------
1 | // @media (-moz-windows-accent-color-in-titlebar: 0) {
2 | // }
3 |
4 | :root,
5 | #navigator-toolbox {
6 | --lwt-accent-color: transparent !important; // Window
7 | --lwt-text-color: WindowText !important;
8 | }
9 |
10 | #titlebar,
11 | #toolbar-menubar,
12 | #TabsToolbar {
13 | .toolbarbutton-1 {
14 | --toolbarbutton-icon-fill: var(--lwt-text-color) !important;
15 | }
16 | }
17 |
18 | :root:not([sizemode="fullscreen"]) .titlebar-buttonbox-container .titlebar-button:not(.titlebar-close:hover) {
19 | list-style-image: none !important;
20 | }
21 | :root:not([sizemode="fullscreen"]) #toolbar-menubar[autohide="true"][inactive="true"] + #TabsToolbar .titlebar-button:is(.titlebar-close:hover) .toolbarbutton-icon {
22 | transform: translateY(-7px) !important;
23 | }
24 |
--------------------------------------------------------------------------------
/src/theme/transparent/_win7_8.scss:
--------------------------------------------------------------------------------
1 | :root:not([lwtheme-image])#{$lwtheme} {
2 | background-color: transparent !important;
3 | background-image: none !important;
4 | }
5 |
6 | #main-menubar:not(:-moz-window-inactive) {
7 | color: var(--lwt-text-color) !important;
8 | }
9 |
10 | @include Dark {
11 | #toolbar-menubar:not(:-moz-window-inactive) {
12 | text-shadow: unset !important;
13 | }
14 | }
15 |
16 | @media (-moz-windows-default-theme) {
17 | #TabsToolbar {
18 | color: inherit !important;
19 | background-image: unset !important;
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/src/urlview/_always_show_page_actions.scss:
--------------------------------------------------------------------------------
1 | #urlbar:not([breakout-extend="true"]) #pageActionButton {
2 | display: block !important;
3 | visibility: visible !important;
4 | }
5 |
--------------------------------------------------------------------------------
/src/urlview/_focus_item_border.scss:
--------------------------------------------------------------------------------
1 | .urlbarView-row:not([type="tip"], [type="dynamic"])[selected] > .urlbarView-row-inner,
2 | .urlbarView-row-inner[selected] {
3 | box-shadow: 3px 0 var(--toolbar-field-focus-border-color) inset !important;
4 | }
5 |
--------------------------------------------------------------------------------
/src/urlview/_go_button_when_typing.scss:
--------------------------------------------------------------------------------
1 | #urlbar-input-container[pageproxystate="invalid"] #urlbar-go-button {
2 | display: block !important;
3 | }
4 |
--------------------------------------------------------------------------------
/src/urlview/_move_icon_to_left.scss:
--------------------------------------------------------------------------------
1 | .urlbarView-type-icon {
2 | min-width: 16px !important;
3 | height: 16px !important;
4 | margin-block: 0 !important;
5 | margin-inline-start: 0 !important;
6 | }
7 |
8 | .urlbarView-favicon {
9 | margin-inline-start: 20px !important;
10 | }
11 |
--------------------------------------------------------------------------------
/src/utils/_accent_color.scss:
--------------------------------------------------------------------------------
1 | @use "option" as *;
2 |
3 | // Compatibility for accent color
4 | // https://github.com/mozilla/gecko-dev/commit/4c5f20179e8d3b963dc588efb9dc2c7b49e7bb31
5 | //
6 | // Need to hard coded #437
7 | $accentBorder: ActiveBorder;
8 | $accentColor: AccentColor;
9 | $accentTextColor: AccentColorText;
10 |
11 | @mixin AccentColor($mode: "-moz-accent-color") {
12 | @content;
13 |
14 | @include Option("userChrome.compatibility.accent_color") {
15 | $accentBorder: -moz-accent-color !global;
16 |
17 | @if $mode == "Highlight" {
18 | $accentColor: Highlight !global;
19 | $accentTextColor: HighlightText !global;
20 | }
21 | @else {
22 | $accentColor: -moz-accent-color !global;
23 | $accentTextColor: -moz-accent-color-foreground !global;
24 | }
25 |
26 | @content;
27 | }
28 | $accentBorder: ActiveBorder !global;
29 | $accentColor: AccentColor !global;
30 | $accentTextColor: AccentColorText !global;
31 | }
32 |
--------------------------------------------------------------------------------
/src/utils/_color_scheme.scss:
--------------------------------------------------------------------------------
1 | @use "mode";
2 | // -moz-toolbar-prefers-color-scheme is removed at v95, #250
3 |
4 | @mixin Dark() {
5 | @if mode.isESR() {
6 | @media (-moz-toolbar-prefers-color-scheme: dark), (prefers-color-scheme: dark) {
7 | @content;
8 | }
9 | } @else {
10 | @media (prefers-color-scheme: dark) {
11 | @content;
12 | }
13 | }
14 | }
15 | @mixin Light() {
16 | @if mode.isESR() {
17 | @media (-moz-toolbar-prefers-color-scheme: light), (prefers-color-scheme: light) {
18 | @content;
19 | }
20 | } @else {
21 | @media (prefers-color-scheme: light) {
22 | @content;
23 | }
24 | }
25 | }
26 |
27 | @mixin Contrast() {
28 | @media (prefers-contrast) {
29 | @content;
30 | }
31 | }
32 |
33 | @mixin NotContrast() {
34 | @media not all and (prefers-contrast) {
35 | @content;
36 | }
37 | }
38 |
39 | @mixin Animate() {
40 | @media (prefers-reduced-motion: no-preference) {
41 | @content;
42 | }
43 | }
44 |
--------------------------------------------------------------------------------
/src/utils/_each.scss:
--------------------------------------------------------------------------------
1 | @use "sass:map";
2 | @use "sass:list";
3 | @use "list" as list-utils;
4 |
5 | $_defaultOption: (
6 | "separator": ", ",
7 | "quoted": false
8 | );
9 |
10 | @mixin AtEach($name, $list, $prefix: null, $option: $_defaultOption) {
11 | $option: map.merge($_defaultOption, $option);
12 | $separator: map.get($option, "separator");
13 | $quoted: map.get($option, "quoted");
14 | $quoted: if($quoted, "\"", null);
15 |
16 | $listL: list.length($list);
17 | @if $listL >= 1 {
18 | $first: list.nth($list, 1);
19 | @if $first != null and $first != () {
20 | $blocks: "#{$prefix}(#{$quoted}#{$first}#{$quoted})";
21 | @if $listL > 1 {
22 | @for $i from 2 through ($listL) {
23 | $nextBlock: list.nth($list, $i);
24 | $nextBlock: "#{$separator}#{$prefix}(#{$quoted}#{$nextBlock}#{$quoted})";
25 | $blocks: "#{$blocks}#{$nextBlock}";
26 | }
27 | }
28 | @#{$name} #{"#{$blocks}"} {
29 | @content;
30 | }
31 | }
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/src/utils/_has.scss:
--------------------------------------------------------------------------------
1 | // Need `:has selector`
2 |
3 | @mixin Has() {
4 | @supports selector(:has(a)) {
5 | @content;
6 | }
7 | }
8 |
9 | @mixin NotHas() {
10 | @supports not selector(:has(a)) {
11 | @content;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/src/utils/_media.scss:
--------------------------------------------------------------------------------
1 | @use "sass:map";
2 | @use "sass:list";
3 |
4 | @mixin each($list...) {
5 | $listL: list.length($list);
6 | @if $listL >= 1 {
7 | $first: list.nth($list, 1);
8 | @if $first != null and $first != () {
9 | $blocks: "(#{$first})";
10 | @if $listL > 1 {
11 | @for $i from 2 through ($listL) {
12 | $nextBlock: list.nth($list, $i);
13 | $nextBlock: ", (#{$nextBlock})";
14 | $blocks: "#{$blocks}#{$nextBlock}";
15 | }
16 | }
17 | @media #{"#{$blocks}"} {
18 | @content;
19 | }
20 | }
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/src/utils/_mode.scss:
--------------------------------------------------------------------------------
1 | $_osESR: false !default;
2 | $_pref: "support-bool-pref" !default; // "support-bool-pref" | "media-bool-pref" | "media-pref"
3 |
4 | @mixin ESR() {
5 | $_osESR: true !global;
6 | }
7 |
8 | @mixin STANDARD() {
9 | $_osESR: false !global;
10 | }
11 |
12 | @mixin SUPPORT_BOOL_PREF() {
13 | $_pref: "support-bool-pref" !global;
14 | }
15 |
16 | @mixin MEDIA_BOOL_PREF() {
17 | $_pref: "media-bool-pref" !global;
18 | }
19 |
20 | @mixin MEDIA_PREF() {
21 | $_pref: "media-pref" !global;
22 | }
23 |
24 | @function isESR() {
25 | @return $_osESR;
26 | }
27 |
28 | @function isSTANDARD() {
29 | @return not $_osESR;
30 | }
31 |
32 | @function isSupportBoolPref() {
33 | @return isESR() and $_pref == "support-bool-pref";
34 | }
35 |
36 | @function isMediaBoolPref() {
37 | @return isSTANDARD() and $_pref == "media-bool-pref";
38 | }
39 |
40 | @function isMediaPref() {
41 | @return isSTANDARD() and $_pref == "media-pref";
42 | }
43 |
--------------------------------------------------------------------------------
/src/utils/_moz_document.scss:
--------------------------------------------------------------------------------
1 | @mixin moz-document($urlList...) {
2 | $result: ();
3 | @each $prefix, $urlPattern in $urlList {
4 | $result: append($result, #{$prefix}(if($urlPattern, "#{$urlPattern}", null)), $separator: comma);
5 | }
6 |
7 | @#{-moz-document} #{$result} {
8 | @content;
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/src/utils/_window_control.scss:
--------------------------------------------------------------------------------
1 | @use "os" as *;
2 |
3 | @mixin WindowControl_Right() {
4 | @include OS($win) {
5 | @content;
6 | }
7 | @include OS($linux) {
8 | @media (-moz-gtk-csd-reversed-placement: 0) {
9 | @content;
10 | }
11 | }
12 | }
13 |
14 | @mixin WindowControl_Left() {
15 | @include OS($mac) {
16 | @content;
17 | }
18 | @include OS($linux) {
19 | @media (-moz-gtk-csd-reversed-placement) {
20 | @content;
21 | }
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/userChrome.css:
--------------------------------------------------------------------------------
1 | /** Import Lepton stylesheet (Chrome) *****************************************/
2 | @import url("css/leptonChrome.css");
3 |
4 |
5 | /** Add your custom styles below **********************************************/
6 |
7 | /* Enable option to edit bookmark URLs under Add Bookmark (blue star) menu */
8 | /*
9 | .editBMPanel_locationRow {
10 | display: initial !important;
11 | }
12 | */
13 |
14 | /* Disable Email Image/Audio/Video and Set as Desktop Background context menu items */
15 | /*
16 | #context-sendimage,
17 | #context-sendvideo,
18 | #context-sendaudio,
19 | #context-sep-setbackground,
20 | #context-setDesktopBackground {
21 | display: none !important;
22 | }
23 | */
24 |
--------------------------------------------------------------------------------
/userContent.css:
--------------------------------------------------------------------------------
1 | /** Import Lepton stylesheet (Content) ****************************************/
2 | @import url("css/leptonContent.css");
3 |
4 | /** Add your custom styles below **********************************************/
5 |
--------------------------------------------------------------------------------
/waterfox.sh:
--------------------------------------------------------------------------------
1 | ## Please refer to the following commit:
2 | # https://github.com/WaterfoxCo/Waterfox/commit/f92e95c09ecd98f987bf54e1e6a1cf969b683277
3 |
4 | ## Replace Path
5 | # `./icons/` to `chrome://browser/skin/lepton/`
6 | replace_icon_path() {
7 | file=$1
8 | sed -i "s/\.\.\/icons\//chrome:\/\/browser\/skin\/lepton\//g" "${file}"
9 | }
10 | replace_icon_path css/leptonChrome.css
11 | replace_icon_path css/leptonContent.css
12 |
--------------------------------------------------------------------------------