modifications mostly to awesome
|
@ -97,7 +97,8 @@ font:
|
||||||
# - (macOS) Menlo
|
# - (macOS) Menlo
|
||||||
# - (Linux/BSD) monospace
|
# - (Linux/BSD) monospace
|
||||||
# - (Windows) Consolas
|
# - (Windows) Consolas
|
||||||
family: MesloLGS NF
|
# family: MesloLGS Nerd Font
|
||||||
|
family: VictorMono Nerd Font
|
||||||
|
|
||||||
# The `style` can be specified to pick a specific face.
|
# The `style` can be specified to pick a specific face.
|
||||||
style: Regular
|
style: Regular
|
||||||
|
@ -108,7 +109,8 @@ font:
|
||||||
#
|
#
|
||||||
# If the bold family is not specified, it will fall back to the
|
# If the bold family is not specified, it will fall back to the
|
||||||
# value specified for the normal font.
|
# value specified for the normal font.
|
||||||
family: MesloLGS NF
|
# family: MesloLGS Nerd Font
|
||||||
|
family: VictorMono Nerd Font
|
||||||
|
|
||||||
# The `style` can be specified to pick a specific face.
|
# The `style` can be specified to pick a specific face.
|
||||||
style: Bold
|
style: Bold
|
||||||
|
@ -119,7 +121,8 @@ font:
|
||||||
#
|
#
|
||||||
# If the italic family is not specified, it will fall back to the
|
# If the italic family is not specified, it will fall back to the
|
||||||
# value specified for the normal font.
|
# value specified for the normal font.
|
||||||
family: MesloLGS NF
|
# family: MesloLGS Nerd Font
|
||||||
|
family: VictorMono Nerd Font
|
||||||
|
|
||||||
# The `style` can be specified to pick a specific face.
|
# The `style` can be specified to pick a specific face.
|
||||||
style: Italic
|
style: Italic
|
||||||
|
@ -136,7 +139,7 @@ font:
|
||||||
#style: Bold Italic
|
#style: Bold Italic
|
||||||
|
|
||||||
# Point size
|
# Point size
|
||||||
size: 10.0
|
size: 11.0
|
||||||
|
|
||||||
# Offset is the extra space around each character. `offset.y` can be thought of
|
# Offset is the extra space around each character. `offset.y` can be thought of
|
||||||
# as modifying the line spacing, and `offset.x` as modifying the letter spacing.
|
# as modifying the line spacing, and `offset.x` as modifying the letter spacing.
|
||||||
|
@ -315,7 +318,7 @@ colors:
|
||||||
#
|
#
|
||||||
# Window opacity as a floating point number from `0.0` to `1.0`.
|
# Window opacity as a floating point number from `0.0` to `1.0`.
|
||||||
# The value `0.0` is completely transparent and `1.0` is opaque.
|
# The value `0.0` is completely transparent and `1.0` is opaque.
|
||||||
background_opacity: 0.45
|
background_opacity: 0.70
|
||||||
|
|
||||||
#selection:
|
#selection:
|
||||||
#semantic_escape_chars: ",│`|:\"' ()[]{}<>\t"
|
#semantic_escape_chars: ",│`|:\"' ()[]{}<>\t"
|
||||||
|
|
|
@ -49,7 +49,7 @@ beautiful.init("/home/chris/.config/awesome/theme.lua")
|
||||||
|
|
||||||
-- This is used later as the default terminal and editor to run.
|
-- This is used later as the default terminal and editor to run.
|
||||||
terminal = "alacritty"
|
terminal = "alacritty"
|
||||||
editor = os.getenv("EDITOR") or "emacs"
|
editor = os.getenv("EDITOR") or "emacsclient -a emacs"
|
||||||
editor_cmd = terminal .. " -e " .. editor
|
editor_cmd = terminal .. " -e " .. editor
|
||||||
|
|
||||||
-- Default modkey.
|
-- Default modkey.
|
||||||
|
@ -58,6 +58,7 @@ editor_cmd = terminal .. " -e " .. editor
|
||||||
-- I suggest you to remap Mod4 to another key using xmodmap or other tools.
|
-- I suggest you to remap Mod4 to another key using xmodmap or other tools.
|
||||||
-- However, you can use another modifier like Mod1, but it may interact with others.
|
-- However, you can use another modifier like Mod1, but it may interact with others.
|
||||||
modkey = "Mod4"
|
modkey = "Mod4"
|
||||||
|
altkey = "Mod1"
|
||||||
|
|
||||||
-- Table of layouts to cover with awful.layout.inc, order matters.
|
-- Table of layouts to cover with awful.layout.inc, order matters.
|
||||||
awful.layout.layouts = {
|
awful.layout.layouts = {
|
||||||
|
@ -107,7 +108,10 @@ mykeyboardlayout = awful.widget.keyboardlayout()
|
||||||
|
|
||||||
-- {{{ Wibar
|
-- {{{ Wibar
|
||||||
-- Create a textclock widget
|
-- Create a textclock widget
|
||||||
mytextclock = wibox.widget.textclock()
|
mytextclock = wibox.widget.textclock(" %a %b %d, %l:%M %p ")
|
||||||
|
|
||||||
|
-- Create a volume widget
|
||||||
|
-- myvolumewidget = wibox.widget.button()
|
||||||
|
|
||||||
-- Create a wibox for each screen and add it
|
-- Create a wibox for each screen and add it
|
||||||
local taglist_buttons = gears.table.join(
|
local taglist_buttons = gears.table.join(
|
||||||
|
@ -201,6 +205,14 @@ awful.screen.connect_for_each_screen(function(s)
|
||||||
-- Create the wibox
|
-- Create the wibox
|
||||||
s.mywibox = awful.wibar({ position = "bottom", screen = s })
|
s.mywibox = awful.wibar({ position = "bottom", screen = s })
|
||||||
|
|
||||||
|
s.myrightwidgets =
|
||||||
|
{ -- Right widgets
|
||||||
|
layout = wibox.layout.ratio.horizontal,
|
||||||
|
s.mytasklist, -- Middle widget
|
||||||
|
s.mysystray,
|
||||||
|
s.mylayoutbox,
|
||||||
|
inner_fill_strategy = "right"
|
||||||
|
}
|
||||||
-- Add widgets to the wibox
|
-- Add widgets to the wibox
|
||||||
s.mywibox:setup {
|
s.mywibox:setup {
|
||||||
layout = wibox.layout.align.horizontal,
|
layout = wibox.layout.align.horizontal,
|
||||||
|
@ -209,14 +221,17 @@ awful.screen.connect_for_each_screen(function(s)
|
||||||
mylauncher,
|
mylauncher,
|
||||||
s.mytaglist,
|
s.mytaglist,
|
||||||
s.mypromptbox,
|
s.mypromptbox,
|
||||||
|
spacing = 15
|
||||||
},
|
},
|
||||||
s.mytasklist, -- Middle widget
|
|
||||||
{ -- Right widgets
|
|
||||||
layout = wibox.layout.fixed.horizontal,
|
|
||||||
s.mysystray,
|
|
||||||
mytextclock,
|
mytextclock,
|
||||||
|
{
|
||||||
|
layout = wibox.layout.ratio.horizontal,
|
||||||
|
s.mytasklist, -- Middle widget
|
||||||
|
s.mysystray,
|
||||||
s.mylayoutbox,
|
s.mylayoutbox,
|
||||||
|
inner_fill_strategy = "right"
|
||||||
},
|
},
|
||||||
|
expand = "outside"
|
||||||
}
|
}
|
||||||
end)
|
end)
|
||||||
-- }}}
|
-- }}}
|
||||||
|
@ -277,10 +292,10 @@ globalkeys = gears.table.join(
|
||||||
|
|
||||||
-- Increase-Decrease Gap
|
-- Increase-Decrease Gap
|
||||||
|
|
||||||
awful.key({ modkey, Mod1 }, "k", function () awful.tag.incgap ( 1, null) end,
|
awful.key({ modkey, altkey }, "k", function () awful.tag.incgap ( 1, null) end,
|
||||||
{description = "increase gap", group = "layout"}),
|
{description = "increase gap", group = "layout"}),
|
||||||
|
|
||||||
awful.key({ Mod1, modkey }, "j", function () awful.tag.incgap ( -1, null) end,
|
awful.key({ modkey, altkey }, "j", function () awful.tag.incgap ( -1, null) end,
|
||||||
{description = "decrease gap", group = "layout"}),
|
{description = "decrease gap", group = "layout"}),
|
||||||
|
|
||||||
|
|
||||||
|
@ -322,7 +337,7 @@ globalkeys = gears.table.join(
|
||||||
{description = "restore minimized", group = "client"}),
|
{description = "restore minimized", group = "client"}),
|
||||||
|
|
||||||
-- Prompt
|
-- Prompt
|
||||||
awful.key({ modkey }, "r", function ()
|
awful.key({ }, "Menu" , function ()
|
||||||
awful.util.spawn("/home/chris/.dotfiles/rofi/launchers-git/launcher.sh") end,
|
awful.util.spawn("/home/chris/.dotfiles/rofi/launchers-git/launcher.sh") end,
|
||||||
{description = "launch rofi", group = "launcher"}),
|
{description = "launch rofi", group = "launcher"}),
|
||||||
|
|
||||||
|
@ -486,7 +501,8 @@ awful.rules.rules = {
|
||||||
"Tor Browser", -- Needs a fixed window size to avoid fingerprinting by screen size.
|
"Tor Browser", -- Needs a fixed window size to avoid fingerprinting by screen size.
|
||||||
"Wpa_gui",
|
"Wpa_gui",
|
||||||
"veromix",
|
"veromix",
|
||||||
"xtightvncviewer"},
|
"xtightvncviewer",
|
||||||
|
"feh"},
|
||||||
|
|
||||||
-- Note that the name property shown in xprop might be set slightly after creation of the client
|
-- Note that the name property shown in xprop might be set slightly after creation of the client
|
||||||
-- and the name shown there might not match defined rules here.
|
-- and the name shown there might not match defined rules here.
|
||||||
|
@ -502,12 +518,19 @@ awful.rules.rules = {
|
||||||
|
|
||||||
-- Add titlebars to normal clients and dialogs
|
-- Add titlebars to normal clients and dialogs
|
||||||
{ rule_any = {type = { "normal", "dialog" }
|
{ rule_any = {type = { "normal", "dialog" }
|
||||||
}, properties = { titlebars_enabled = true }
|
}, properties = { titlebars_enabled = false}
|
||||||
},
|
},
|
||||||
|
|
||||||
-- Set Firefox to always map on the tag named "2" on screen 1.
|
-- Set Firefox to never have titlebars
|
||||||
-- { rule = { class = "Firefox" },
|
{ rule = { class = "Firefox" },
|
||||||
-- properties = { screen = 1, tag = "2" } },
|
properties = { requests_no_titlebar = true, titlebars_enabled = false }
|
||||||
|
},
|
||||||
|
|
||||||
|
-- Set Feh center
|
||||||
|
{ rule = {class = "feh"},
|
||||||
|
properties = {
|
||||||
|
placement = awful.placement.centered
|
||||||
|
}},
|
||||||
}
|
}
|
||||||
-- }}}
|
-- }}}
|
||||||
|
|
||||||
|
@ -578,5 +601,6 @@ client.connect_signal("unfocus", function(c) c.border_color = beautiful.border_n
|
||||||
|
|
||||||
-- Autostart Applications
|
-- Autostart Applications
|
||||||
awful.spawn.with_shell("picom")
|
awful.spawn.with_shell("picom")
|
||||||
awful.spawn.with_shell("nitrogen --restore")
|
|
||||||
-- awful.spawn.with_shell("polybarstart")
|
-- awful.spawn.with_shell("polybarstart")
|
||||||
|
awful.spawn.with_shell("feh --bg-fill ~/Pictures/wallpapers/RoyalKing.png")
|
||||||
|
awful.spawn.with_shell("/usr/lib/polkit-kde-authentication-agent-1")
|
||||||
|
|
|
@ -9,10 +9,11 @@ local gears = require('gears')
|
||||||
|
|
||||||
local gfs = require("gears.filesystem")
|
local gfs = require("gears.filesystem")
|
||||||
local themes_path = gfs.get_themes_dir()
|
local themes_path = gfs.get_themes_dir()
|
||||||
|
local wallpaperdir = "/home/chris/Pictures/wallpapers"
|
||||||
|
|
||||||
local theme = {}
|
local theme = {}
|
||||||
|
|
||||||
theme.font = "Rec Mono Linear 10"
|
theme.font = "VictorMono Nerd Font SemiBold 10"
|
||||||
|
|
||||||
theme.bg_normal = "#282a36"
|
theme.bg_normal = "#282a36"
|
||||||
theme.bg_focus = "#43454f"
|
theme.bg_focus = "#43454f"
|
||||||
|
@ -26,7 +27,7 @@ theme.fg_urgent = "#e2e4e5"
|
||||||
theme.fg_minimize = "#e2e4e5"
|
theme.fg_minimize = "#e2e4e5"
|
||||||
|
|
||||||
theme.useless_gap = dpi(8)
|
theme.useless_gap = dpi(8)
|
||||||
theme.border_width = dpi(1)
|
theme.border_width = dpi(0)
|
||||||
theme.border_normal = "#00000000"
|
theme.border_normal = "#00000000"
|
||||||
theme.border_focus = "#00000000"
|
theme.border_focus = "#00000000"
|
||||||
theme.border_marked = "#00000000"
|
theme.border_marked = "#00000000"
|
||||||
|
@ -74,8 +75,9 @@ theme.menu_width = dpi(100)
|
||||||
-- wibar
|
-- wibar
|
||||||
theme.wibar_shape = gears.shape.rounded_bar
|
theme.wibar_shape = gears.shape.rounded_bar
|
||||||
theme.wibar_bg = theme.bg_normal
|
theme.wibar_bg = theme.bg_normal
|
||||||
|
theme.wibar_fg = theme.fg_normal
|
||||||
-- theme.wibar_y = 1030
|
-- theme.wibar_y = 1030
|
||||||
theme.wibar_x = 0
|
-- theme.wibar_x = 0
|
||||||
-- theme.wibar_stretch = false
|
-- theme.wibar_stretch = false
|
||||||
theme.wibar_border_width = 3
|
theme.wibar_border_width = 3
|
||||||
theme.wibar_border_color = nil
|
theme.wibar_border_color = nil
|
||||||
|
@ -84,9 +86,8 @@ theme.wibar_border_color = nil
|
||||||
theme.wibar_opacity = 0.7
|
theme.wibar_opacity = 0.7
|
||||||
-- theme.wibar_type = nil
|
-- theme.wibar_type = nil
|
||||||
theme.wibar_width = dpi(1900)
|
theme.wibar_width = dpi(1900)
|
||||||
-- theme.wibar_height = nil
|
theme.wibar_height = dpi(30)
|
||||||
-- theme.wibar_bgimage = nil
|
-- theme.wibar_bgimage = nil
|
||||||
-- theme.wibar_fg = nil
|
|
||||||
|
|
||||||
-- Define the image to load
|
-- Define the image to load
|
||||||
theme.titlebar_bg_normal = "#282A36FF"
|
theme.titlebar_bg_normal = "#282A36FF"
|
||||||
|
@ -117,7 +118,7 @@ theme.titlebar_maximized_button_focus_inactive = themes_path.."default/titlebar
|
||||||
theme.titlebar_maximized_button_normal_active = themes_path.."default/titlebar/maximized_normal_active.png"
|
theme.titlebar_maximized_button_normal_active = themes_path.."default/titlebar/maximized_normal_active.png"
|
||||||
theme.titlebar_maximized_button_focus_active = themes_path.."default/titlebar/maximized_focus_active.png"
|
theme.titlebar_maximized_button_focus_active = themes_path.."default/titlebar/maximized_focus_active.png"
|
||||||
|
|
||||||
theme.wallpaper = themes_path.."default/background.png"
|
theme.wallpaper = wallpaperdir.."RoyalKing.png"
|
||||||
|
|
||||||
-- You can use your own layout icons like this:
|
-- You can use your own layout icons like this:
|
||||||
theme.layout_fairh = themes_path.."default/layouts/fairhw.png"
|
theme.layout_fairh = themes_path.."default/layouts/fairhw.png"
|
||||||
|
@ -137,6 +138,8 @@ theme.layout_cornerne = themes_path.."default/layouts/cornernew.png"
|
||||||
theme.layout_cornersw = themes_path.."default/layouts/cornersww.png"
|
theme.layout_cornersw = themes_path.."default/layouts/cornersww.png"
|
||||||
theme.layout_cornerse = themes_path.."default/layouts/cornersew.png"
|
theme.layout_cornerse = themes_path.."default/layouts/cornersew.png"
|
||||||
|
|
||||||
|
-- Notifications
|
||||||
|
|
||||||
-- Generate Awesome icon:
|
-- Generate Awesome icon:
|
||||||
theme.awesome_icon = theme_assets.awesome_icon(
|
theme.awesome_icon = theme_assets.awesome_icon(
|
||||||
theme.menu_height, theme.bg_focus, theme.fg_focus
|
theme.menu_height, theme.bg_focus, theme.fg_focus
|
||||||
|
|
674
firefox/chrome/LICENCE.md
Normal file
|
@ -0,0 +1,674 @@
|
||||||
|
GNU GENERAL PUBLIC LICENSE
|
||||||
|
Version 3, 29 June 2007
|
||||||
|
|
||||||
|
Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
|
||||||
|
Everyone is permitted to copy and distribute verbatim copies
|
||||||
|
of this license document, but changing it is not allowed.
|
||||||
|
|
||||||
|
Preamble
|
||||||
|
|
||||||
|
The GNU General Public License is a free, copyleft license for
|
||||||
|
software and other kinds of works.
|
||||||
|
|
||||||
|
The licenses for most software and other practical works are designed
|
||||||
|
to take away your freedom to share and change the works. By contrast,
|
||||||
|
the GNU General Public License is intended to guarantee your freedom to
|
||||||
|
share and change all versions of a program--to make sure it remains free
|
||||||
|
software for all its users. We, the Free Software Foundation, use the
|
||||||
|
GNU General Public License for most of our software; it applies also to
|
||||||
|
any other work released this way by its authors. You can apply it to
|
||||||
|
your programs, too.
|
||||||
|
|
||||||
|
When we speak of free software, we are referring to freedom, not
|
||||||
|
price. Our General Public Licenses are designed to make sure that you
|
||||||
|
have the freedom to distribute copies of free software (and charge for
|
||||||
|
them if you wish), that you receive source code or can get it if you
|
||||||
|
want it, that you can change the software or use pieces of it in new
|
||||||
|
free programs, and that you know you can do these things.
|
||||||
|
|
||||||
|
To protect your rights, we need to prevent others from denying you
|
||||||
|
these rights or asking you to surrender the rights. Therefore, you have
|
||||||
|
certain responsibilities if you distribute copies of the software, or if
|
||||||
|
you modify it: responsibilities to respect the freedom of others.
|
||||||
|
|
||||||
|
For example, if you distribute copies of such a program, whether
|
||||||
|
gratis or for a fee, you must pass on to the recipients the same
|
||||||
|
freedoms that you received. You must make sure that they, too, receive
|
||||||
|
or can get the source code. And you must show them these terms so they
|
||||||
|
know their rights.
|
||||||
|
|
||||||
|
Developers that use the GNU GPL protect your rights with two steps:
|
||||||
|
(1) assert copyright on the software, and (2) offer you this License
|
||||||
|
giving you legal permission to copy, distribute and/or modify it.
|
||||||
|
|
||||||
|
For the developers' and authors' protection, the GPL clearly explains
|
||||||
|
that there is no warranty for this free software. For both users' and
|
||||||
|
authors' sake, the GPL requires that modified versions be marked as
|
||||||
|
changed, so that their problems will not be attributed erroneously to
|
||||||
|
authors of previous versions.
|
||||||
|
|
||||||
|
Some devices are designed to deny users access to install or run
|
||||||
|
modified versions of the software inside them, although the manufacturer
|
||||||
|
can do so. This is fundamentally incompatible with the aim of
|
||||||
|
protecting users' freedom to change the software. The systematic
|
||||||
|
pattern of such abuse occurs in the area of products for individuals to
|
||||||
|
use, which is precisely where it is most unacceptable. Therefore, we
|
||||||
|
have designed this version of the GPL to prohibit the practice for those
|
||||||
|
products. If such problems arise substantially in other domains, we
|
||||||
|
stand ready to extend this provision to those domains in future versions
|
||||||
|
of the GPL, as needed to protect the freedom of users.
|
||||||
|
|
||||||
|
Finally, every program is threatened constantly by software patents.
|
||||||
|
States should not allow patents to restrict development and use of
|
||||||
|
software on general-purpose computers, but in those that do, we wish to
|
||||||
|
avoid the special danger that patents applied to a free program could
|
||||||
|
make it effectively proprietary. To prevent this, the GPL assures that
|
||||||
|
patents cannot be used to render the program non-free.
|
||||||
|
|
||||||
|
The precise terms and conditions for copying, distribution and
|
||||||
|
modification follow.
|
||||||
|
|
||||||
|
TERMS AND CONDITIONS
|
||||||
|
|
||||||
|
0. Definitions.
|
||||||
|
|
||||||
|
"This License" refers to version 3 of the GNU General Public License.
|
||||||
|
|
||||||
|
"Copyright" also means copyright-like laws that apply to other kinds of
|
||||||
|
works, such as semiconductor masks.
|
||||||
|
|
||||||
|
"The Program" refers to any copyrightable work licensed under this
|
||||||
|
License. Each licensee is addressed as "you". "Licensees" and
|
||||||
|
"recipients" may be individuals or organizations.
|
||||||
|
|
||||||
|
To "modify" a work means to copy from or adapt all or part of the work
|
||||||
|
in a fashion requiring copyright permission, other than the making of an
|
||||||
|
exact copy. The resulting work is called a "modified version" of the
|
||||||
|
earlier work or a work "based on" the earlier work.
|
||||||
|
|
||||||
|
A "covered work" means either the unmodified Program or a work based
|
||||||
|
on the Program.
|
||||||
|
|
||||||
|
To "propagate" a work means to do anything with it that, without
|
||||||
|
permission, would make you directly or secondarily liable for
|
||||||
|
infringement under applicable copyright law, except executing it on a
|
||||||
|
computer or modifying a private copy. Propagation includes copying,
|
||||||
|
distribution (with or without modification), making available to the
|
||||||
|
public, and in some countries other activities as well.
|
||||||
|
|
||||||
|
To "convey" a work means any kind of propagation that enables other
|
||||||
|
parties to make or receive copies. Mere interaction with a user through
|
||||||
|
a computer network, with no transfer of a copy, is not conveying.
|
||||||
|
|
||||||
|
An interactive user interface displays "Appropriate Legal Notices"
|
||||||
|
to the extent that it includes a convenient and prominently visible
|
||||||
|
feature that (1) displays an appropriate copyright notice, and (2)
|
||||||
|
tells the user that there is no warranty for the work (except to the
|
||||||
|
extent that warranties are provided), that licensees may convey the
|
||||||
|
work under this License, and how to view a copy of this License. If
|
||||||
|
the interface presents a list of user commands or options, such as a
|
||||||
|
menu, a prominent item in the list meets this criterion.
|
||||||
|
|
||||||
|
1. Source Code.
|
||||||
|
|
||||||
|
The "source code" for a work means the preferred form of the work
|
||||||
|
for making modifications to it. "Object code" means any non-source
|
||||||
|
form of a work.
|
||||||
|
|
||||||
|
A "Standard Interface" means an interface that either is an official
|
||||||
|
standard defined by a recognized standards body, or, in the case of
|
||||||
|
interfaces specified for a particular programming language, one that
|
||||||
|
is widely used among developers working in that language.
|
||||||
|
|
||||||
|
The "System Libraries" of an executable work include anything, other
|
||||||
|
than the work as a whole, that (a) is included in the normal form of
|
||||||
|
packaging a Major Component, but which is not part of that Major
|
||||||
|
Component, and (b) serves only to enable use of the work with that
|
||||||
|
Major Component, or to implement a Standard Interface for which an
|
||||||
|
implementation is available to the public in source code form. A
|
||||||
|
"Major Component", in this context, means a major essential component
|
||||||
|
(kernel, window system, and so on) of the specific operating system
|
||||||
|
(if any) on which the executable work runs, or a compiler used to
|
||||||
|
produce the work, or an object code interpreter used to run it.
|
||||||
|
|
||||||
|
The "Corresponding Source" for a work in object code form means all
|
||||||
|
the source code needed to generate, install, and (for an executable
|
||||||
|
work) run the object code and to modify the work, including scripts to
|
||||||
|
control those activities. However, it does not include the work's
|
||||||
|
System Libraries, or general-purpose tools or generally available free
|
||||||
|
programs which are used unmodified in performing those activities but
|
||||||
|
which are not part of the work. For example, Corresponding Source
|
||||||
|
includes interface definition files associated with source files for
|
||||||
|
the work, and the source code for shared libraries and dynamically
|
||||||
|
linked subprograms that the work is specifically designed to require,
|
||||||
|
such as by intimate data communication or control flow between those
|
||||||
|
subprograms and other parts of the work.
|
||||||
|
|
||||||
|
The Corresponding Source need not include anything that users
|
||||||
|
can regenerate automatically from other parts of the Corresponding
|
||||||
|
Source.
|
||||||
|
|
||||||
|
The Corresponding Source for a work in source code form is that
|
||||||
|
same work.
|
||||||
|
|
||||||
|
2. Basic Permissions.
|
||||||
|
|
||||||
|
All rights granted under this License are granted for the term of
|
||||||
|
copyright on the Program, and are irrevocable provided the stated
|
||||||
|
conditions are met. This License explicitly affirms your unlimited
|
||||||
|
permission to run the unmodified Program. The output from running a
|
||||||
|
covered work is covered by this License only if the output, given its
|
||||||
|
content, constitutes a covered work. This License acknowledges your
|
||||||
|
rights of fair use or other equivalent, as provided by copyright law.
|
||||||
|
|
||||||
|
You may make, run and propagate covered works that you do not
|
||||||
|
convey, without conditions so long as your license otherwise remains
|
||||||
|
in force. You may convey covered works to others for the sole purpose
|
||||||
|
of having them make modifications exclusively for you, or provide you
|
||||||
|
with facilities for running those works, provided that you comply with
|
||||||
|
the terms of this License in conveying all material for which you do
|
||||||
|
not control copyright. Those thus making or running the covered works
|
||||||
|
for you must do so exclusively on your behalf, under your direction
|
||||||
|
and control, on terms that prohibit them from making any copies of
|
||||||
|
your copyrighted material outside their relationship with you.
|
||||||
|
|
||||||
|
Conveying under any other circumstances is permitted solely under
|
||||||
|
the conditions stated below. Sublicensing is not allowed; section 10
|
||||||
|
makes it unnecessary.
|
||||||
|
|
||||||
|
3. Protecting Users' Legal Rights From Anti-Circumvention Law.
|
||||||
|
|
||||||
|
No covered work shall be deemed part of an effective technological
|
||||||
|
measure under any applicable law fulfilling obligations under article
|
||||||
|
11 of the WIPO copyright treaty adopted on 20 December 1996, or
|
||||||
|
similar laws prohibiting or restricting circumvention of such
|
||||||
|
measures.
|
||||||
|
|
||||||
|
When you convey a covered work, you waive any legal power to forbid
|
||||||
|
circumvention of technological measures to the extent such circumvention
|
||||||
|
is effected by exercising rights under this License with respect to
|
||||||
|
the covered work, and you disclaim any intention to limit operation or
|
||||||
|
modification of the work as a means of enforcing, against the work's
|
||||||
|
users, your or third parties' legal rights to forbid circumvention of
|
||||||
|
technological measures.
|
||||||
|
|
||||||
|
4. Conveying Verbatim Copies.
|
||||||
|
|
||||||
|
You may convey verbatim copies of the Program's source code as you
|
||||||
|
receive it, in any medium, provided that you conspicuously and
|
||||||
|
appropriately publish on each copy an appropriate copyright notice;
|
||||||
|
keep intact all notices stating that this License and any
|
||||||
|
non-permissive terms added in accord with section 7 apply to the code;
|
||||||
|
keep intact all notices of the absence of any warranty; and give all
|
||||||
|
recipients a copy of this License along with the Program.
|
||||||
|
|
||||||
|
You may charge any price or no price for each copy that you convey,
|
||||||
|
and you may offer support or warranty protection for a fee.
|
||||||
|
|
||||||
|
5. Conveying Modified Source Versions.
|
||||||
|
|
||||||
|
You may convey a work based on the Program, or the modifications to
|
||||||
|
produce it from the Program, in the form of source code under the
|
||||||
|
terms of section 4, provided that you also meet all of these conditions:
|
||||||
|
|
||||||
|
a) The work must carry prominent notices stating that you modified
|
||||||
|
it, and giving a relevant date.
|
||||||
|
|
||||||
|
b) The work must carry prominent notices stating that it is
|
||||||
|
released under this License and any conditions added under section
|
||||||
|
7. This requirement modifies the requirement in section 4 to
|
||||||
|
"keep intact all notices".
|
||||||
|
|
||||||
|
c) You must license the entire work, as a whole, under this
|
||||||
|
License to anyone who comes into possession of a copy. This
|
||||||
|
License will therefore apply, along with any applicable section 7
|
||||||
|
additional terms, to the whole of the work, and all its parts,
|
||||||
|
regardless of how they are packaged. This License gives no
|
||||||
|
permission to license the work in any other way, but it does not
|
||||||
|
invalidate such permission if you have separately received it.
|
||||||
|
|
||||||
|
d) If the work has interactive user interfaces, each must display
|
||||||
|
Appropriate Legal Notices; however, if the Program has interactive
|
||||||
|
interfaces that do not display Appropriate Legal Notices, your
|
||||||
|
work need not make them do so.
|
||||||
|
|
||||||
|
A compilation of a covered work with other separate and independent
|
||||||
|
works, which are not by their nature extensions of the covered work,
|
||||||
|
and which are not combined with it such as to form a larger program,
|
||||||
|
in or on a volume of a storage or distribution medium, is called an
|
||||||
|
"aggregate" if the compilation and its resulting copyright are not
|
||||||
|
used to limit the access or legal rights of the compilation's users
|
||||||
|
beyond what the individual works permit. Inclusion of a covered work
|
||||||
|
in an aggregate does not cause this License to apply to the other
|
||||||
|
parts of the aggregate.
|
||||||
|
|
||||||
|
6. Conveying Non-Source Forms.
|
||||||
|
|
||||||
|
You may convey a covered work in object code form under the terms
|
||||||
|
of sections 4 and 5, provided that you also convey the
|
||||||
|
machine-readable Corresponding Source under the terms of this License,
|
||||||
|
in one of these ways:
|
||||||
|
|
||||||
|
a) Convey the object code in, or embodied in, a physical product
|
||||||
|
(including a physical distribution medium), accompanied by the
|
||||||
|
Corresponding Source fixed on a durable physical medium
|
||||||
|
customarily used for software interchange.
|
||||||
|
|
||||||
|
b) Convey the object code in, or embodied in, a physical product
|
||||||
|
(including a physical distribution medium), accompanied by a
|
||||||
|
written offer, valid for at least three years and valid for as
|
||||||
|
long as you offer spare parts or customer support for that product
|
||||||
|
model, to give anyone who possesses the object code either (1) a
|
||||||
|
copy of the Corresponding Source for all the software in the
|
||||||
|
product that is covered by this License, on a durable physical
|
||||||
|
medium customarily used for software interchange, for a price no
|
||||||
|
more than your reasonable cost of physically performing this
|
||||||
|
conveying of source, or (2) access to copy the
|
||||||
|
Corresponding Source from a network server at no charge.
|
||||||
|
|
||||||
|
c) Convey individual copies of the object code with a copy of the
|
||||||
|
written offer to provide the Corresponding Source. This
|
||||||
|
alternative is allowed only occasionally and noncommercially, and
|
||||||
|
only if you received the object code with such an offer, in accord
|
||||||
|
with subsection 6b.
|
||||||
|
|
||||||
|
d) Convey the object code by offering access from a designated
|
||||||
|
place (gratis or for a charge), and offer equivalent access to the
|
||||||
|
Corresponding Source in the same way through the same place at no
|
||||||
|
further charge. You need not require recipients to copy the
|
||||||
|
Corresponding Source along with the object code. If the place to
|
||||||
|
copy the object code is a network server, the Corresponding Source
|
||||||
|
may be on a different server (operated by you or a third party)
|
||||||
|
that supports equivalent copying facilities, provided you maintain
|
||||||
|
clear directions next to the object code saying where to find the
|
||||||
|
Corresponding Source. Regardless of what server hosts the
|
||||||
|
Corresponding Source, you remain obligated to ensure that it is
|
||||||
|
available for as long as needed to satisfy these requirements.
|
||||||
|
|
||||||
|
e) Convey the object code using peer-to-peer transmission, provided
|
||||||
|
you inform other peers where the object code and Corresponding
|
||||||
|
Source of the work are being offered to the general public at no
|
||||||
|
charge under subsection 6d.
|
||||||
|
|
||||||
|
A separable portion of the object code, whose source code is excluded
|
||||||
|
from the Corresponding Source as a System Library, need not be
|
||||||
|
included in conveying the object code work.
|
||||||
|
|
||||||
|
A "User Product" is either (1) a "consumer product", which means any
|
||||||
|
tangible personal property which is normally used for personal, family,
|
||||||
|
or household purposes, or (2) anything designed or sold for incorporation
|
||||||
|
into a dwelling. In determining whether a product is a consumer product,
|
||||||
|
doubtful cases shall be resolved in favor of coverage. For a particular
|
||||||
|
product received by a particular user, "normally used" refers to a
|
||||||
|
typical or common use of that class of product, regardless of the status
|
||||||
|
of the particular user or of the way in which the particular user
|
||||||
|
actually uses, or expects or is expected to use, the product. A product
|
||||||
|
is a consumer product regardless of whether the product has substantial
|
||||||
|
commercial, industrial or non-consumer uses, unless such uses represent
|
||||||
|
the only significant mode of use of the product.
|
||||||
|
|
||||||
|
"Installation Information" for a User Product means any methods,
|
||||||
|
procedures, authorization keys, or other information required to install
|
||||||
|
and execute modified versions of a covered work in that User Product from
|
||||||
|
a modified version of its Corresponding Source. The information must
|
||||||
|
suffice to ensure that the continued functioning of the modified object
|
||||||
|
code is in no case prevented or interfered with solely because
|
||||||
|
modification has been made.
|
||||||
|
|
||||||
|
If you convey an object code work under this section in, or with, or
|
||||||
|
specifically for use in, a User Product, and the conveying occurs as
|
||||||
|
part of a transaction in which the right of possession and use of the
|
||||||
|
User Product is transferred to the recipient in perpetuity or for a
|
||||||
|
fixed term (regardless of how the transaction is characterized), the
|
||||||
|
Corresponding Source conveyed under this section must be accompanied
|
||||||
|
by the Installation Information. But this requirement does not apply
|
||||||
|
if neither you nor any third party retains the ability to install
|
||||||
|
modified object code on the User Product (for example, the work has
|
||||||
|
been installed in ROM).
|
||||||
|
|
||||||
|
The requirement to provide Installation Information does not include a
|
||||||
|
requirement to continue to provide support service, warranty, or updates
|
||||||
|
for a work that has been modified or installed by the recipient, or for
|
||||||
|
the User Product in which it has been modified or installed. Access to a
|
||||||
|
network may be denied when the modification itself materially and
|
||||||
|
adversely affects the operation of the network or violates the rules and
|
||||||
|
protocols for communication across the network.
|
||||||
|
|
||||||
|
Corresponding Source conveyed, and Installation Information provided,
|
||||||
|
in accord with this section must be in a format that is publicly
|
||||||
|
documented (and with an implementation available to the public in
|
||||||
|
source code form), and must require no special password or key for
|
||||||
|
unpacking, reading or copying.
|
||||||
|
|
||||||
|
7. Additional Terms.
|
||||||
|
|
||||||
|
"Additional permissions" are terms that supplement the terms of this
|
||||||
|
License by making exceptions from one or more of its conditions.
|
||||||
|
Additional permissions that are applicable to the entire Program shall
|
||||||
|
be treated as though they were included in this License, to the extent
|
||||||
|
that they are valid under applicable law. If additional permissions
|
||||||
|
apply only to part of the Program, that part may be used separately
|
||||||
|
under those permissions, but the entire Program remains governed by
|
||||||
|
this License without regard to the additional permissions.
|
||||||
|
|
||||||
|
When you convey a copy of a covered work, you may at your option
|
||||||
|
remove any additional permissions from that copy, or from any part of
|
||||||
|
it. (Additional permissions may be written to require their own
|
||||||
|
removal in certain cases when you modify the work.) You may place
|
||||||
|
additional permissions on material, added by you to a covered work,
|
||||||
|
for which you have or can give appropriate copyright permission.
|
||||||
|
|
||||||
|
Notwithstanding any other provision of this License, for material you
|
||||||
|
add to a covered work, you may (if authorized by the copyright holders of
|
||||||
|
that material) supplement the terms of this License with terms:
|
||||||
|
|
||||||
|
a) Disclaiming warranty or limiting liability differently from the
|
||||||
|
terms of sections 15 and 16 of this License; or
|
||||||
|
|
||||||
|
b) Requiring preservation of specified reasonable legal notices or
|
||||||
|
author attributions in that material or in the Appropriate Legal
|
||||||
|
Notices displayed by works containing it; or
|
||||||
|
|
||||||
|
c) Prohibiting misrepresentation of the origin of that material, or
|
||||||
|
requiring that modified versions of such material be marked in
|
||||||
|
reasonable ways as different from the original version; or
|
||||||
|
|
||||||
|
d) Limiting the use for publicity purposes of names of licensors or
|
||||||
|
authors of the material; or
|
||||||
|
|
||||||
|
e) Declining to grant rights under trademark law for use of some
|
||||||
|
trade names, trademarks, or service marks; or
|
||||||
|
|
||||||
|
f) Requiring indemnification of licensors and authors of that
|
||||||
|
material by anyone who conveys the material (or modified versions of
|
||||||
|
it) with contractual assumptions of liability to the recipient, for
|
||||||
|
any liability that these contractual assumptions directly impose on
|
||||||
|
those licensors and authors.
|
||||||
|
|
||||||
|
All other non-permissive additional terms are considered "further
|
||||||
|
restrictions" within the meaning of section 10. If the Program as you
|
||||||
|
received it, or any part of it, contains a notice stating that it is
|
||||||
|
governed by this License along with a term that is a further
|
||||||
|
restriction, you may remove that term. If a license document contains
|
||||||
|
a further restriction but permits relicensing or conveying under this
|
||||||
|
License, you may add to a covered work material governed by the terms
|
||||||
|
of that license document, provided that the further restriction does
|
||||||
|
not survive such relicensing or conveying.
|
||||||
|
|
||||||
|
If you add terms to a covered work in accord with this section, you
|
||||||
|
must place, in the relevant source files, a statement of the
|
||||||
|
additional terms that apply to those files, or a notice indicating
|
||||||
|
where to find the applicable terms.
|
||||||
|
|
||||||
|
Additional terms, permissive or non-permissive, may be stated in the
|
||||||
|
form of a separately written license, or stated as exceptions;
|
||||||
|
the above requirements apply either way.
|
||||||
|
|
||||||
|
8. Termination.
|
||||||
|
|
||||||
|
You may not propagate or modify a covered work except as expressly
|
||||||
|
provided under this License. Any attempt otherwise to propagate or
|
||||||
|
modify it is void, and will automatically terminate your rights under
|
||||||
|
this License (including any patent licenses granted under the third
|
||||||
|
paragraph of section 11).
|
||||||
|
|
||||||
|
However, if you cease all violation of this License, then your
|
||||||
|
license from a particular copyright holder is reinstated (a)
|
||||||
|
provisionally, unless and until the copyright holder explicitly and
|
||||||
|
finally terminates your license, and (b) permanently, if the copyright
|
||||||
|
holder fails to notify you of the violation by some reasonable means
|
||||||
|
prior to 60 days after the cessation.
|
||||||
|
|
||||||
|
Moreover, your license from a particular copyright holder is
|
||||||
|
reinstated permanently if the copyright holder notifies you of the
|
||||||
|
violation by some reasonable means, this is the first time you have
|
||||||
|
received notice of violation of this License (for any work) from that
|
||||||
|
copyright holder, and you cure the violation prior to 30 days after
|
||||||
|
your receipt of the notice.
|
||||||
|
|
||||||
|
Termination of your rights under this section does not terminate the
|
||||||
|
licenses of parties who have received copies or rights from you under
|
||||||
|
this License. If your rights have been terminated and not permanently
|
||||||
|
reinstated, you do not qualify to receive new licenses for the same
|
||||||
|
material under section 10.
|
||||||
|
|
||||||
|
9. Acceptance Not Required for Having Copies.
|
||||||
|
|
||||||
|
You are not required to accept this License in order to receive or
|
||||||
|
run a copy of the Program. Ancillary propagation of a covered work
|
||||||
|
occurring solely as a consequence of using peer-to-peer transmission
|
||||||
|
to receive a copy likewise does not require acceptance. However,
|
||||||
|
nothing other than this License grants you permission to propagate or
|
||||||
|
modify any covered work. These actions infringe copyright if you do
|
||||||
|
not accept this License. Therefore, by modifying or propagating a
|
||||||
|
covered work, you indicate your acceptance of this License to do so.
|
||||||
|
|
||||||
|
10. Automatic Licensing of Downstream Recipients.
|
||||||
|
|
||||||
|
Each time you convey a covered work, the recipient automatically
|
||||||
|
receives a license from the original licensors, to run, modify and
|
||||||
|
propagate that work, subject to this License. You are not responsible
|
||||||
|
for enforcing compliance by third parties with this License.
|
||||||
|
|
||||||
|
An "entity transaction" is a transaction transferring control of an
|
||||||
|
organization, or substantially all assets of one, or subdividing an
|
||||||
|
organization, or merging organizations. If propagation of a covered
|
||||||
|
work results from an entity transaction, each party to that
|
||||||
|
transaction who receives a copy of the work also receives whatever
|
||||||
|
licenses to the work the party's predecessor in interest had or could
|
||||||
|
give under the previous paragraph, plus a right to possession of the
|
||||||
|
Corresponding Source of the work from the predecessor in interest, if
|
||||||
|
the predecessor has it or can get it with reasonable efforts.
|
||||||
|
|
||||||
|
You may not impose any further restrictions on the exercise of the
|
||||||
|
rights granted or affirmed under this License. For example, you may
|
||||||
|
not impose a license fee, royalty, or other charge for exercise of
|
||||||
|
rights granted under this License, and you may not initiate litigation
|
||||||
|
(including a cross-claim or counterclaim in a lawsuit) alleging that
|
||||||
|
any patent claim is infringed by making, using, selling, offering for
|
||||||
|
sale, or importing the Program or any portion of it.
|
||||||
|
|
||||||
|
11. Patents.
|
||||||
|
|
||||||
|
A "contributor" is a copyright holder who authorizes use under this
|
||||||
|
License of the Program or a work on which the Program is based. The
|
||||||
|
work thus licensed is called the contributor's "contributor version".
|
||||||
|
|
||||||
|
A contributor's "essential patent claims" are all patent claims
|
||||||
|
owned or controlled by the contributor, whether already acquired or
|
||||||
|
hereafter acquired, that would be infringed by some manner, permitted
|
||||||
|
by this License, of making, using, or selling its contributor version,
|
||||||
|
but do not include claims that would be infringed only as a
|
||||||
|
consequence of further modification of the contributor version. For
|
||||||
|
purposes of this definition, "control" includes the right to grant
|
||||||
|
patent sublicenses in a manner consistent with the requirements of
|
||||||
|
this License.
|
||||||
|
|
||||||
|
Each contributor grants you a non-exclusive, worldwide, royalty-free
|
||||||
|
patent license under the contributor's essential patent claims, to
|
||||||
|
make, use, sell, offer for sale, import and otherwise run, modify and
|
||||||
|
propagate the contents of its contributor version.
|
||||||
|
|
||||||
|
In the following three paragraphs, a "patent license" is any express
|
||||||
|
agreement or commitment, however denominated, not to enforce a patent
|
||||||
|
(such as an express permission to practice a patent or covenant not to
|
||||||
|
sue for patent infringement). To "grant" such a patent license to a
|
||||||
|
party means to make such an agreement or commitment not to enforce a
|
||||||
|
patent against the party.
|
||||||
|
|
||||||
|
If you convey a covered work, knowingly relying on a patent license,
|
||||||
|
and the Corresponding Source of the work is not available for anyone
|
||||||
|
to copy, free of charge and under the terms of this License, through a
|
||||||
|
publicly available network server or other readily accessible means,
|
||||||
|
then you must either (1) cause the Corresponding Source to be so
|
||||||
|
available, or (2) arrange to deprive yourself of the benefit of the
|
||||||
|
patent license for this particular work, or (3) arrange, in a manner
|
||||||
|
consistent with the requirements of this License, to extend the patent
|
||||||
|
license to downstream recipients. "Knowingly relying" means you have
|
||||||
|
actual knowledge that, but for the patent license, your conveying the
|
||||||
|
covered work in a country, or your recipient's use of the covered work
|
||||||
|
in a country, would infringe one or more identifiable patents in that
|
||||||
|
country that you have reason to believe are valid.
|
||||||
|
|
||||||
|
If, pursuant to or in connection with a single transaction or
|
||||||
|
arrangement, you convey, or propagate by procuring conveyance of, a
|
||||||
|
covered work, and grant a patent license to some of the parties
|
||||||
|
receiving the covered work authorizing them to use, propagate, modify
|
||||||
|
or convey a specific copy of the covered work, then the patent license
|
||||||
|
you grant is automatically extended to all recipients of the covered
|
||||||
|
work and works based on it.
|
||||||
|
|
||||||
|
A patent license is "discriminatory" if it does not include within
|
||||||
|
the scope of its coverage, prohibits the exercise of, or is
|
||||||
|
conditioned on the non-exercise of one or more of the rights that are
|
||||||
|
specifically granted under this License. You may not convey a covered
|
||||||
|
work if you are a party to an arrangement with a third party that is
|
||||||
|
in the business of distributing software, under which you make payment
|
||||||
|
to the third party based on the extent of your activity of conveying
|
||||||
|
the work, and under which the third party grants, to any of the
|
||||||
|
parties who would receive the covered work from you, a discriminatory
|
||||||
|
patent license (a) in connection with copies of the covered work
|
||||||
|
conveyed by you (or copies made from those copies), or (b) primarily
|
||||||
|
for and in connection with specific products or compilations that
|
||||||
|
contain the covered work, unless you entered into that arrangement,
|
||||||
|
or that patent license was granted, prior to 28 March 2007.
|
||||||
|
|
||||||
|
Nothing in this License shall be construed as excluding or limiting
|
||||||
|
any implied license or other defenses to infringement that may
|
||||||
|
otherwise be available to you under applicable patent law.
|
||||||
|
|
||||||
|
12. No Surrender of Others' Freedom.
|
||||||
|
|
||||||
|
If conditions are imposed on you (whether by court order, agreement or
|
||||||
|
otherwise) that contradict the conditions of this License, they do not
|
||||||
|
excuse you from the conditions of this License. If you cannot convey a
|
||||||
|
covered work so as to satisfy simultaneously your obligations under this
|
||||||
|
License and any other pertinent obligations, then as a consequence you may
|
||||||
|
not convey it at all. For example, if you agree to terms that obligate you
|
||||||
|
to collect a royalty for further conveying from those to whom you convey
|
||||||
|
the Program, the only way you could satisfy both those terms and this
|
||||||
|
License would be to refrain entirely from conveying the Program.
|
||||||
|
|
||||||
|
13. Use with the GNU Affero General Public License.
|
||||||
|
|
||||||
|
Notwithstanding any other provision of this License, you have
|
||||||
|
permission to link or combine any covered work with a work licensed
|
||||||
|
under version 3 of the GNU Affero General Public License into a single
|
||||||
|
combined work, and to convey the resulting work. The terms of this
|
||||||
|
License will continue to apply to the part which is the covered work,
|
||||||
|
but the special requirements of the GNU Affero General Public License,
|
||||||
|
section 13, concerning interaction through a network will apply to the
|
||||||
|
combination as such.
|
||||||
|
|
||||||
|
14. Revised Versions of this License.
|
||||||
|
|
||||||
|
The Free Software Foundation may publish revised and/or new versions of
|
||||||
|
the GNU General Public License from time to time. Such new versions will
|
||||||
|
be similar in spirit to the present version, but may differ in detail to
|
||||||
|
address new problems or concerns.
|
||||||
|
|
||||||
|
Each version is given a distinguishing version number. If the
|
||||||
|
Program specifies that a certain numbered version of the GNU General
|
||||||
|
Public License "or any later version" applies to it, you have the
|
||||||
|
option of following the terms and conditions either of that numbered
|
||||||
|
version or of any later version published by the Free Software
|
||||||
|
Foundation. If the Program does not specify a version number of the
|
||||||
|
GNU General Public License, you may choose any version ever published
|
||||||
|
by the Free Software Foundation.
|
||||||
|
|
||||||
|
If the Program specifies that a proxy can decide which future
|
||||||
|
versions of the GNU General Public License can be used, that proxy's
|
||||||
|
public statement of acceptance of a version permanently authorizes you
|
||||||
|
to choose that version for the Program.
|
||||||
|
|
||||||
|
Later license versions may give you additional or different
|
||||||
|
permissions. However, no additional obligations are imposed on any
|
||||||
|
author or copyright holder as a result of your choosing to follow a
|
||||||
|
later version.
|
||||||
|
|
||||||
|
15. Disclaimer of Warranty.
|
||||||
|
|
||||||
|
THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
|
||||||
|
APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
|
||||||
|
HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
|
||||||
|
OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
|
||||||
|
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||||
|
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
|
||||||
|
IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
|
||||||
|
ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
|
||||||
|
|
||||||
|
16. Limitation of Liability.
|
||||||
|
|
||||||
|
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
|
||||||
|
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
|
||||||
|
THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
|
||||||
|
GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
|
||||||
|
USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
|
||||||
|
DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
|
||||||
|
PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
|
||||||
|
EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
|
||||||
|
SUCH DAMAGES.
|
||||||
|
|
||||||
|
17. Interpretation of Sections 15 and 16.
|
||||||
|
|
||||||
|
If the disclaimer of warranty and limitation of liability provided
|
||||||
|
above cannot be given local legal effect according to their terms,
|
||||||
|
reviewing courts shall apply local law that most closely approximates
|
||||||
|
an absolute waiver of all civil liability in connection with the
|
||||||
|
Program, unless a warranty or assumption of liability accompanies a
|
||||||
|
copy of the Program in return for a fee.
|
||||||
|
|
||||||
|
END OF TERMS AND CONDITIONS
|
||||||
|
|
||||||
|
How to Apply These Terms to Your New Programs
|
||||||
|
|
||||||
|
If you develop a new program, and you want it to be of the greatest
|
||||||
|
possible use to the public, the best way to achieve this is to make it
|
||||||
|
free software which everyone can redistribute and change under these terms.
|
||||||
|
|
||||||
|
To do so, attach the following notices to the program. It is safest
|
||||||
|
to attach them to the start of each source file to most effectively
|
||||||
|
state the exclusion of warranty; and each file should have at least
|
||||||
|
the "copyright" line and a pointer to where the full notice is found.
|
||||||
|
|
||||||
|
<one line to give the program's name and a brief idea of what it does.>
|
||||||
|
Copyright (C) <year> <name of author>
|
||||||
|
|
||||||
|
This program is free software: you can redistribute it and/or modify
|
||||||
|
it under the terms of the GNU General Public License as published by
|
||||||
|
the Free Software Foundation, either version 3 of the License, or
|
||||||
|
(at your option) any later version.
|
||||||
|
|
||||||
|
This program is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU General Public License
|
||||||
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
Also add information on how to contact you by electronic and paper mail.
|
||||||
|
|
||||||
|
If the program does terminal interaction, make it output a short
|
||||||
|
notice like this when it starts in an interactive mode:
|
||||||
|
|
||||||
|
<program> Copyright (C) <year> <name of author>
|
||||||
|
This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
|
||||||
|
This is free software, and you are welcome to redistribute it
|
||||||
|
under certain conditions; type `show c' for details.
|
||||||
|
|
||||||
|
The hypothetical commands `show w' and `show c' should show the appropriate
|
||||||
|
parts of the General Public License. Of course, your program's commands
|
||||||
|
might be different; for a GUI interface, you would use an "about box".
|
||||||
|
|
||||||
|
You should also get your employer (if you work as a programmer) or school,
|
||||||
|
if any, to sign a "copyright disclaimer" for the program, if necessary.
|
||||||
|
For more information on this, and how to apply and follow the GNU GPL, see
|
||||||
|
<http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
The GNU General Public License does not permit incorporating your program
|
||||||
|
into proprietary programs. If your program is a subroutine library, you
|
||||||
|
may consider it more useful to permit linking proprietary applications with
|
||||||
|
the library. If this is what you want to do, use the GNU Lesser General
|
||||||
|
Public License instead of this License. But first, please read
|
||||||
|
<http://www.gnu.org/philosophy/why-not-lgpl.html>.
|
68
firefox/chrome/README.md
Normal file
|
@ -0,0 +1,68 @@
|
||||||
|
# Collection of random CSS hacks for Firefox
|
||||||
|
|
||||||
|
Stylesheets in this repository are tested only on Windows 10. They should work on current Nightlies but also generally on latest release Firefox unless otherwise noted.
|
||||||
|
|
||||||
|
# Loading user*.css files
|
||||||
|
|
||||||
|
1. Find your profile folder, if Firefox is running you can find by going to about:support and there should be a button with label "Open Folder" under application basics
|
||||||
|
2. Create a new folder to the profile folder and name it "chrome"
|
||||||
|
3. userChrome.css and userContent.css files should be created inside this chrome-folder.
|
||||||
|
|
||||||
|
Clone this repository or individual files inside that newly created chrome-folder.
|
||||||
|
In the end you should have a folder structure like this:
|
||||||
|
|
||||||
|
```
|
||||||
|
<profile_folder>
|
||||||
|
|_chrome
|
||||||
|
| |_chrome
|
||||||
|
| |_content
|
||||||
|
| |_userChrome.css
|
||||||
|
| |_userContent.css
|
||||||
|
|_extensions
|
||||||
|
|_prefs.js
|
||||||
|
...
|
||||||
|
all other profile folders and files
|
||||||
|
...
|
||||||
|
```
|
||||||
|
|
||||||
|
In short, create a parent chrome folder to the same directory where prefs.js is - the main profile folder. Firefox loads userContent.css and userChrome.css files only from that non-default chrome-folder.
|
||||||
|
|
||||||
|
# Usage
|
||||||
|
|
||||||
|
Stylesheets are divided in to chrome and content folders. The difference is that styles inside "content" affect web-pages whereas styles inside "chrome" affect browser UI.
|
||||||
|
|
||||||
|
Use stylesheets under "chrome" in userChrome.css
|
||||||
|
|
||||||
|
Use stylesheets under "content" in userContent.css
|
||||||
|
|
||||||
|
You can import the stylesheets with @-rule import like this:
|
||||||
|
|
||||||
|
```css
|
||||||
|
@import url("path/filename.css");
|
||||||
|
```
|
||||||
|
|
||||||
|
## Important!
|
||||||
|
|
||||||
|
Note that all `@import` rules need to be placed before any other rules in the file, including @namespace rules. Additionally, the order of imported files is just as important as the order of rules within one file.
|
||||||
|
|
||||||
|
**Most notably, you are advised to import theme_ files before any other modules.**
|
||||||
|
|
||||||
|
# Theme
|
||||||
|
|
||||||
|
Stylesheets prefixed with `theme_` require `theme_color_variables.css` to be imported.
|
||||||
|
|
||||||
|
Example userChrome.css resulting in rather complete dark blueish-grey UI:
|
||||||
|
|
||||||
|
```css
|
||||||
|
@import url(theme_color_variables.css);
|
||||||
|
@import url(theme_sidebar.css);
|
||||||
|
@import url(theme_toolbars.css);
|
||||||
|
@import url(theme_popups_and_menus.css);
|
||||||
|
|
||||||
|
/* Your other rules here */
|
||||||
|
```
|
||||||
|
|
||||||
|
You can use individual modules from theme such as to only include popups_and_menus. But it would still be required that you import the theme_color_variables.css or you'll have to manually edit all the colors.
|
||||||
|
|
||||||
|
|
||||||
|
Example userChrome.css and userContent.css can be used as is to enable theme + certain features after /chrome and /content folders are copied into your profile.
|
26
firefox/chrome/chrome/Fx65_tabs_on_bottom.css
Normal file
|
@ -0,0 +1,26 @@
|
||||||
|
/* Modify to change window drag space width */
|
||||||
|
:root[tabsintitlebar="true"] #nav-bar{ --window-drag-space-width: 24px }
|
||||||
|
|
||||||
|
.titlebar-buttonbox-container{
|
||||||
|
position: fixed;
|
||||||
|
top:0;
|
||||||
|
right:0;
|
||||||
|
height: 40px;
|
||||||
|
}
|
||||||
|
#toolbar-menubar[inactive] > .titlebar-buttonbox-container{ opacity: 0 }
|
||||||
|
|
||||||
|
:root[sizemode="maximized"] > #navigator-toolbox{ padding-top: 8px !important; }
|
||||||
|
:root[sizemode="maximized"] .titlebar-buttonbox-container{ top: 8px }
|
||||||
|
|
||||||
|
:root[uidensity="compact"] .titlebar-buttonbox-container{ height: 32px }
|
||||||
|
.titlebar-buttonbox-container > .titlebar-buttonbox{ height: 100%; }
|
||||||
|
#titlebar{
|
||||||
|
-moz-box-ordinal-group: 2;
|
||||||
|
-moz-appearance: none !important;
|
||||||
|
}
|
||||||
|
:root[tabsintitlebar="true"] #nav-bar{
|
||||||
|
padding-right: calc(138px + var(--window-drag-space-width,0px));
|
||||||
|
padding-left: var(--window-drag-space-width,0px)
|
||||||
|
}
|
||||||
|
.titlebar-placeholder,
|
||||||
|
#TabsToolbar .titlebar-spacer{ display: none; }
|
119
firefox/chrome/chrome/autohide_sidebar.css
Normal file
|
@ -0,0 +1,119 @@
|
||||||
|
|
||||||
|
/* material firefox imports */
|
||||||
|
/* @import "../global/variables.css"; */
|
||||||
|
/* @import "../global/global.css"; */
|
||||||
|
/* @import "../icons/icons.css"; */
|
||||||
|
/* @import "../tabbar/tabbar.css"; */
|
||||||
|
/* @import "../navbar/navbar.css"; */
|
||||||
|
/* @import "../personalbar/personalbar.css"; */
|
||||||
|
/* @import "../popup/popup.css"; */
|
||||||
|
/* @import "../urlbar/urlbar.css"; */
|
||||||
|
/* @import "../findbar/findbar.css"; */
|
||||||
|
|
||||||
|
/* Show sidebar only when the cursor is over it */
|
||||||
|
/* The border controlling sidebar width will be removed so you'll need to modify these values to change width */
|
||||||
|
|
||||||
|
|
||||||
|
/* #sidebar-box{ */
|
||||||
|
/* --uc-sidebar-width: 30px; */
|
||||||
|
/* --uc-sidebar-hover-width: 210px; */
|
||||||
|
/* position: relative; */
|
||||||
|
/* min-width: var(--uc-sidebar-width) !important; */
|
||||||
|
/* width: var(--uc-sidebar-width) !important; */
|
||||||
|
/* max-width: var(--uc-sidebar-width) !important; */
|
||||||
|
/* } */
|
||||||
|
|
||||||
|
/* #sidebar-splitter{ display: none } */
|
||||||
|
|
||||||
|
/* #sidebar-header{ overflow: hidden; color: var(--chrome-color, inherit) !important} */
|
||||||
|
|
||||||
|
/* #sidebar{ */
|
||||||
|
/* transition: min-width 115ms linear !important; */
|
||||||
|
/* min-width: var(--uc-sidebar-width) !important; */
|
||||||
|
/* will-change: min-width; */
|
||||||
|
/* } */
|
||||||
|
|
||||||
|
/* #sidebar-box:hover > #sidebar{ min-width: var(--uc-sidebar-hover-width) !important; } */
|
||||||
|
|
||||||
|
/* .sidebar-panel{ */
|
||||||
|
/* background-color: transparent !important; */
|
||||||
|
/* color: var(--newtab-text-primary-color) !important; */
|
||||||
|
/* } */
|
||||||
|
|
||||||
|
/* .sidebar-panel #search-box{ */
|
||||||
|
/* -moz-appearance: none !important; */
|
||||||
|
/* background-color: rgba(249,249,250,0.1) !important; */
|
||||||
|
/* color: inherit !important; */
|
||||||
|
/* } */
|
||||||
|
|
||||||
|
/* /\* Add sidebar divider and give it background *\/ */
|
||||||
|
|
||||||
|
/* #sidebar, */
|
||||||
|
/* #sidebar-header{ */
|
||||||
|
/* background-color: var(--toolbar-non-lwt-bgcolor) !important; */
|
||||||
|
/* border-right: 1px solid rgb(80,80,80); */
|
||||||
|
/* } */
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* Made for the treestyletab stuff */
|
||||||
|
|
||||||
|
:root {
|
||||||
|
--initial-width : 50px; /* initial width of the sidebar */
|
||||||
|
--sidebar-width : 250px; /* expanded width of the sidebar */
|
||||||
|
--toolbar-height : 0;
|
||||||
|
--menubar-height : -40px;
|
||||||
|
--toolmenubar-height: -40px; /* sum of previous two */
|
||||||
|
--shadow-color : #28282F; /* shadow color. set to #00000000 for no shadow. same as folder color from hntp and tab-hover color from tst*/
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
There's two main sidebar components.
|
||||||
|
1. #sidebar-box (outer)
|
||||||
|
2. #sidebar (inner)
|
||||||
|
*/
|
||||||
|
/* lock outer to height by doing the inverse margin of the toolbar element */
|
||||||
|
/* set outer width = initial width */
|
||||||
|
#sidebar-box {
|
||||||
|
z-index : 1000 !important;
|
||||||
|
position : relative!important;
|
||||||
|
//margin-top : var(--menubar-height) !important;
|
||||||
|
padding-top : calc(-1*var(--menubar-height));
|
||||||
|
border-radius: 0 5px 0px 0;
|
||||||
|
min-width : var(--initial-width) !important;
|
||||||
|
max-width : var(--initial-width) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* inner width = expanded width & move inner to only show initial-width long section */
|
||||||
|
#sidebar-box #sidebar {
|
||||||
|
min-width : var(--sidebar-width) !important;
|
||||||
|
max-width : var(--sidebar-width) !important;
|
||||||
|
transform : translateX(calc(var(--initial-width) - var(--sidebar-width))) !important;
|
||||||
|
border-radius: 0 3px 0px 0;
|
||||||
|
transition : all 0.2s ease-in-out;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* move inner to show entire sidebar */
|
||||||
|
#sidebar-box #sidebar:hover {
|
||||||
|
transform : translateX(0) !important;
|
||||||
|
box-shadow: 2px 0 33px var(--shadow-color);
|
||||||
|
}
|
||||||
|
|
||||||
|
#main-window[title^="Firefox"] #sidebar-box {
|
||||||
|
margin-top: var(--toolmenubar-height) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* hide sidebar header for tree style tabs sidebar */
|
||||||
|
#sidebar-box[sidebarcommand="treestyletab_piro_sakura_ne_jp-sidebar-action"] #sidebar-header {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* Hide splitter, when using Tree Style Tab. */
|
||||||
|
#sidebar-box[sidebarcommand="treestyletab_piro_sakura_ne_jp-sidebar-action"] + #sidebar-splitter {
|
||||||
|
display: none !important;
|
||||||
|
}
|
6
firefox/chrome/chrome/blank_page_background.css
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
/* Set blank page background-color */
|
||||||
|
/* Uses color from theme_colors if available */
|
||||||
|
|
||||||
|
#tabbrowser-tabpanels{
|
||||||
|
background-color: var(--uc-light-bkgnd-color,rgb(46,54,69)) !important;
|
||||||
|
}
|
11
firefox/chrome/chrome/bookmarksbar_on_new_tabs_only.css
Normal file
|
@ -0,0 +1,11 @@
|
||||||
|
:root[title$=" - Mozilla Firefox"] #PersonalToolbar,
|
||||||
|
:root[title$=" - Mozilla Firefox (Private Browsing)"] #PersonalToolbar,
|
||||||
|
:root[title$=" - Firefox Nightly"] #PersonalToolbar,
|
||||||
|
:root[title$=" - Firefox Nightly (Private Browsing)"] #PersonalToolbar{ visibility: collapse; }
|
||||||
|
/* about:home or something can have a "New Tab" prefix */
|
||||||
|
:root[title="New Tab - Mozilla Firefox"] #PersonalToolbar,
|
||||||
|
:root[title="New Tab - Mozilla Firefox (Private Browsing)"] #PersonalToolbar,
|
||||||
|
:root[title="New Tab - Firefox Nightly"] #PersonalToolbar,
|
||||||
|
:root[title="New Tab - Firefox Nightly (Private Browsing)"] #PersonalToolbar{ visibility: visible; }
|
||||||
|
/* Short delay to prevent being shortly visible during tab restore */
|
||||||
|
#PersonalToolbar{ transition: visibility 0ms linear 200ms !important}
|
25
firefox/chrome/chrome/button_effect_scale_onclick.css
Normal file
|
@ -0,0 +1,25 @@
|
||||||
|
/* Effect */
|
||||||
|
|
||||||
|
:root:not([uidensity="compact"]) #back-button{ --uc-back-extra-padding: 2px }
|
||||||
|
|
||||||
|
.toolbarbutton-icon,
|
||||||
|
.menuitem-iconic .menu-iconic-icon{
|
||||||
|
transition: transform 83ms linear !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
toolbar .toolbarbutton-1 > .toolbarbutton-icon
|
||||||
|
.urlbar-icon{
|
||||||
|
transition: padding 83ms linear !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
toolbarbutton:not(.toolbarbutton-1):active > .toolbarbutton-icon,
|
||||||
|
toolbar .toolbarbutton-1:not([disabled]):active > .toolbarbutton-badge-stack > .toolbarbutton-icon,
|
||||||
|
.menuitem-iconic:active .menu-iconic-icon{
|
||||||
|
transform: scale(0.6) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
toolbar .toolbarbutton-1:not([disabled]):active > .toolbarbutton-icon{
|
||||||
|
padding: calc(var(--toolbarbutton-inner-padding) + var(--uc-back-extra-padding,0px) + 3px) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#page-action-buttons .urlbar-icon:active{ padding: calc(var(--urlbar-icon-padding) + 3px) !important; }
|
35
firefox/chrome/chrome/button_effect_scale_onhover.css
Normal file
|
@ -0,0 +1,35 @@
|
||||||
|
/* Effect */
|
||||||
|
|
||||||
|
:root:not([uidensity="compact"]) #back-button{ --uc-back-extra-padding: 2px }
|
||||||
|
|
||||||
|
.toolbarbutton-icon,
|
||||||
|
.menuitem-iconic .menu-iconic-icon{
|
||||||
|
transition: transform 83ms linear !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
toolbar .toolbarbutton-1 > .toolbarbutton-icon,
|
||||||
|
.urlbar-icon{
|
||||||
|
transition: padding 83ms linear !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
toolbarbutton:not(.toolbarbutton-1) > .toolbarbutton-icon,
|
||||||
|
toolbar .toolbarbutton-1 > .toolbarbutton-badge-stack > .toolbarbutton-icon,
|
||||||
|
.menuitem-iconic .menu-iconic-icon{
|
||||||
|
transform: scale(0.8) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
toolbar .toolbarbutton-1 > .toolbarbutton-icon{
|
||||||
|
padding: calc(var(--toolbarbutton-inner-padding) + var(--uc-back-extra-padding,0px) + 2px) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#page-action-buttons .urlbar-icon:not(:hover){ padding: calc(var(--urlbar-icon-padding) + 2px) !important; }
|
||||||
|
|
||||||
|
toolbarbutton:not(.toolbarbutton-1):not([disabled]):hover > .toolbarbutton-icon,
|
||||||
|
toolbar .toolbarbutton-1:not([disabled]):hover > .toolbarbutton-badge-stack > .toolbarbutton-icon,
|
||||||
|
.menuitem-iconic:not([disabled]):hover .menu-iconic-icon{
|
||||||
|
transform: none !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
toolbar .toolbarbutton-1:not([disabled]):hover > .toolbarbutton-icon{
|
||||||
|
padding: calc(var(--toolbarbutton-inner-padding) + var(--uc-back-extra-padding,0px)) !important;
|
||||||
|
}
|
|
@ -0,0 +1,40 @@
|
||||||
|
/* Show tab close button when cursor is over the tab icon */
|
||||||
|
|
||||||
|
.tab-close-button{
|
||||||
|
-moz-box-ordinal-group: 0;
|
||||||
|
display: -moz-box !important;
|
||||||
|
position: relative;
|
||||||
|
margin-right: -18px !important;
|
||||||
|
z-index: -1;
|
||||||
|
visibility: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tab-close-button:hover{ background-color: var(--lwt-accent-color); }
|
||||||
|
|
||||||
|
.tabbrowser-tab[selected] .tab-close-button:hover{ background-color: var(--lwt-selected-tab-background-color, var(--toolbar-bgcolor)); }
|
||||||
|
|
||||||
|
/**** ONLY USE ONE OF THE FOLLOWING ****/
|
||||||
|
/**** These select the behavior of a scenario where the page has no favicon ****/
|
||||||
|
|
||||||
|
/*** Option 1 - no favicon - no close-button ***/
|
||||||
|
|
||||||
|
/*
|
||||||
|
.tab-icon-image:hover ~ .tab-close-button, .tab-close-button:hover{ visibility: visible; z-index: 1 }
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*** Option 2 - No icon - always show close-button ***/
|
||||||
|
|
||||||
|
/*
|
||||||
|
.tab-icon-image:hover ~ .tab-close-button,
|
||||||
|
.tab-close-button:hover,
|
||||||
|
.tab-icon-image:not([src]) ~ .tab-close-button{ visibility: visible; z-index: 1 }
|
||||||
|
.tab-icon-image:not([src]) ~ .tab-close-button{ margin-right:0px !important; }
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*** Option 3 - No icon - show close-button when cursor is over the tab text ***/
|
||||||
|
|
||||||
|
.tab-icon-image:hover ~ .tab-close-button,
|
||||||
|
.tab-close-button:hover,
|
||||||
|
.tab-icon-image:not([src]) ~ .tab-label-container:hover ~ .tab-close-button{ visibility: visible; z-index: 1 }
|
||||||
|
.tab-icon-image:not([src]) ~ .tab-label-container:hover ~ .tab-close-button,
|
||||||
|
.tab-icon-image:not([src]) ~ .tab-close-button:hover {margin-right: 0px !important; }
|
45
firefox/chrome/chrome/floating_findbar_on_top.css
Normal file
|
@ -0,0 +1,45 @@
|
||||||
|
findbar{
|
||||||
|
-moz-box-ordinal-group: 0;
|
||||||
|
margin-bottom: calc(0px - 2 * var(--toolbarbutton-inner-padding) - 25px);
|
||||||
|
position: relative;
|
||||||
|
border-top: none !important;
|
||||||
|
transition: transform 82ms linear, opacity 82ms linear 32ms !important;
|
||||||
|
background: none !important;
|
||||||
|
pointer-events: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.findbar-container > .findbar-find-fast{
|
||||||
|
padding: var(--toolbarbutton-inner-padding) 1px;
|
||||||
|
margin: 0 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
findbar[hidden]{ transform: translateY(-30px);}
|
||||||
|
|
||||||
|
findbar > .findbar-container,
|
||||||
|
findbar > .close-icon{
|
||||||
|
border: 1px solid var(--chrome-content-separator-color);
|
||||||
|
border-width: 0 0 1px 0px;
|
||||||
|
background: var(--uc-light-bkgnd-color,var(--toolbar-bgcolor)) !important;
|
||||||
|
pointer-events: auto;
|
||||||
|
}
|
||||||
|
findbar > .findbar-container{
|
||||||
|
-moz-box-direction: reverse;
|
||||||
|
border-left-width: 1px;
|
||||||
|
}
|
||||||
|
|
||||||
|
findbar > .findbar-container > hbox{ margin: 0 5px }
|
||||||
|
|
||||||
|
findbar::before{
|
||||||
|
content:"";
|
||||||
|
display: -moz-box;
|
||||||
|
-moz-box-flex: 100;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
Move findbar so it isn't over the scrollbar
|
||||||
|
Delete if you want findbar to begin from right window edge
|
||||||
|
*/
|
||||||
|
findbar{
|
||||||
|
margin-right: 16px;
|
||||||
|
border-right: 1px solid var(--chrome-content-separator-color);
|
||||||
|
}
|
29
firefox/chrome/chrome/hide_tabs_toolbar.css
Normal file
|
@ -0,0 +1,29 @@
|
||||||
|
/* Hide tabs toolbar Fx65+ */
|
||||||
|
:root{--uc-toolbar-height: 32px}
|
||||||
|
:root:not([uidensity="compact"]){--uc-toolbar-height: 38px}
|
||||||
|
|
||||||
|
#TabsToolbar{visibility: collapse}
|
||||||
|
#nav-bar,
|
||||||
|
#PersonalToolbar{
|
||||||
|
background: transparent !important;
|
||||||
|
}
|
||||||
|
#navigator-toolbox{ background: var(--toolbar-bgcolor) var(--toolbar-bgimage) }
|
||||||
|
|
||||||
|
#nav-bar{margin: calc(0px - var(--uc-toolbar-height)) 138px 0 0 }
|
||||||
|
|
||||||
|
#toolbar-menubar{
|
||||||
|
min-height:unset !important;
|
||||||
|
height:var(--uc-toolbar-height) !important;
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
|
||||||
|
#main-menubar{
|
||||||
|
-moz-box-flex: 1;
|
||||||
|
background: var(--toolbar-non-lwt-bgcolor);
|
||||||
|
background-clip: padding-box;
|
||||||
|
border-right: 30px solid transparent;
|
||||||
|
border-image: linear-gradient(to left, transparent, var(--toolbar-non-lwt-bgcolor) 30px) 20 / 30px
|
||||||
|
}
|
||||||
|
|
||||||
|
#toolbar-menubar:not([inactive]){ z-index: 2 }
|
||||||
|
#toolbar-menubar[inactive] > #menubar-items { opacity: 0 }
|
39
firefox/chrome/chrome/hide_tabs_with_one_tab.css
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
/* Makes tabs toolbar items zero-height initially and sets enlarge them to fill up space equal to tab-min-height set on tabs */
|
||||||
|
/* Firefox 65+ only */
|
||||||
|
/* !!USER!! - REMOVE ALL BUTTONS you can from the tabs toolbar */
|
||||||
|
|
||||||
|
/* Configurable window drag space */
|
||||||
|
:root[sizemode="normal"] #nav-bar{ --window-drag-space-width: 20px }
|
||||||
|
|
||||||
|
#titlebar{ -moz-appearance: none !important; }
|
||||||
|
#tabbrowser-tabs, #tabbrowser-tabs > .tabbrowser-arrowscrollbox{ min-height: 0 !important; }
|
||||||
|
:root:not([customizing]) #tabbrowser-tabs .tabs-newtab-button,
|
||||||
|
:root:not([customizing]) #TabsToolbar .titlebar-button{
|
||||||
|
-moz-appearance: none !important;
|
||||||
|
height: 0px;
|
||||||
|
padding-top: 0px !important;
|
||||||
|
padding-bottom: 0px !important;
|
||||||
|
-moz-box-align: stretch;
|
||||||
|
margin: 0 !important;
|
||||||
|
}
|
||||||
|
#tabbrowser-tabs .tabbrowser-tab{ height: var(--tab-min-height) }
|
||||||
|
#tabbrowser-tabs .tabbrowser-tab[first-visible-tab="true"][last-visible-tab="true"]{
|
||||||
|
visibility: collapse !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Button re-styling */
|
||||||
|
#tabbrowser-tabs .tabs-newtab-button:hover{ background-color: var(--toolbarbutton-hover-background) }
|
||||||
|
#tabbrowser-tabs .tabs-newtab-button > .toolbarbutton-icon{
|
||||||
|
padding: 0 !important;
|
||||||
|
transform: scale(0.6);
|
||||||
|
background-color: transparent !important;
|
||||||
|
}
|
||||||
|
/* Extra top padding in maximized window */
|
||||||
|
:root[sizemode="maximized"] > #navigator-toolbox{ padding-top:7px !important; }
|
||||||
|
/* Fix window controls not being clickable */
|
||||||
|
#toolbar-menubar:hover{
|
||||||
|
min-height: calc(var(--tab-min-height) + var(--space-above-tabbar) - 1px) !important;
|
||||||
|
height: calc(var(--tab-min-height) + var(--space-above-tabbar) - 1px) !important;
|
||||||
|
-moz-appearance: initial !important;
|
||||||
|
}
|
||||||
|
#nav-bar{ padding: 0 var(--window-drag-space-width,0px) }
|
|
@ -0,0 +1,48 @@
|
||||||
|
/* Makes tabs toolbar items zero-height initially and sets enlarge them to fill up space equal to tab-min-height set on tabs */
|
||||||
|
/* Firefox 65+ only */
|
||||||
|
/* !!USER!! - REMOVE ALL BUTTONS you can from the tabs toolbar */
|
||||||
|
|
||||||
|
/* Configurable window drag space */
|
||||||
|
:root[sizemode="normal"] #nav-bar{ --window-drag-space-width: 20px }
|
||||||
|
|
||||||
|
#titlebar{ -moz-appearance: none !important; }
|
||||||
|
/* We'll use window controls from menubar instead */
|
||||||
|
#TabsToolbar > .titlebar-buttonbox-container { display: none }
|
||||||
|
#tabbrowser-tabs, #tabbrowser-tabs > .tabbrowser-arrowscrollbox{ min-height: 0 !important; }
|
||||||
|
|
||||||
|
#TabsToolbar > .titlebar-spacer[type="post-tabs"]{ width: 178px !important; }
|
||||||
|
#toolbar-menubar > spacer{ pointer-events: none }
|
||||||
|
|
||||||
|
:root:not([customizing]) #tabbrowser-tabs .tabs-newtab-button{
|
||||||
|
-moz-appearance: none !important;
|
||||||
|
height: 0px;
|
||||||
|
padding-top: 0px !important;
|
||||||
|
padding-bottom: 0px !important;
|
||||||
|
-moz-box-align: stretch;
|
||||||
|
margin: 0 !important;
|
||||||
|
}
|
||||||
|
#tabbrowser-tabs .tabbrowser-tab{ height: var(--tab-min-height) }
|
||||||
|
#tabbrowser-tabs .tabbrowser-tab[first-visible-tab="true"][last-visible-tab="true"]{
|
||||||
|
visibility: collapse;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Button re-styling */
|
||||||
|
#tabbrowser-tabs .tabs-newtab-button:hover{ background-color: var(--toolbarbutton-hover-background) }
|
||||||
|
#tabbrowser-tabs .tabs-newtab-button > .toolbarbutton-icon{
|
||||||
|
padding: 0 !important;
|
||||||
|
transform: scale(0.6);
|
||||||
|
background-color: transparent !important;
|
||||||
|
}
|
||||||
|
/* Extra top padding in maximized window */
|
||||||
|
:root[sizemode="maximized"] > #navigator-toolbox{ padding-top:7px !important; }
|
||||||
|
|
||||||
|
/* Window controls in nav-bar */
|
||||||
|
:root:not([customizing]) #toolbar-menubar[inactive]{
|
||||||
|
height: initial !important;
|
||||||
|
min-height: initial !important;
|
||||||
|
margin-bottom: -28px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
:root:not([customizing]) #toolbar-menubar[autohide][inactive] > #menubar-items{ pointer-events: none; opacity: 0 }
|
||||||
|
|
||||||
|
#nav-bar{ padding-right: calc(3 * 46px + var(--window-drag-space-width,0px)); padding-left: var(--window-drag-space-width,0px)}
|
10
firefox/chrome/chrome/hide_toolbox_top_bottom_borders.css
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
#main-window[sizemode="normal"]{ border-top: none !important }
|
||||||
|
#navigator-toolbox::after{ content: none !important }
|
||||||
|
|
||||||
|
/* OPTIONAL - uncomment to remove still remaining space atop of tabs */
|
||||||
|
/* This just increases the height of tabs by few pixels, not decrease the toolbar height */
|
||||||
|
|
||||||
|
/* Fx pre-65 */
|
||||||
|
/* #navigator-toolbox > #TabsToolbar{margin-top: -2px;} */
|
||||||
|
/* Fx65+ */
|
||||||
|
/* #TabsToolbar > .toolbar-items > spacer{ display: none; } */
|
7
firefox/chrome/chrome/menubar_in_toolbar.css
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
#toolbar-menubar:not([inactive]) ~ #TabsToolbar{
|
||||||
|
margin-left:300px !important;
|
||||||
|
margin-top: -26px !important;
|
||||||
|
}
|
||||||
|
:root[sizemode="maximized"] #toolbar-menubar:not([inactive]) ~ #TabsToolbar{
|
||||||
|
margin-top: -28px !important;
|
||||||
|
}
|
|
@ -0,0 +1,11 @@
|
||||||
|
/* Use with navbar_tabs_oneliner.css */
|
||||||
|
|
||||||
|
#toolbar-menubar:not([inactive]) ~ #TabsToolbar{
|
||||||
|
margin-left:calc(var(--uc-navigationbar-width) + 300px ) !important;
|
||||||
|
margin-top: calc(0px - var(--uc-toolbar-height)) !important;
|
||||||
|
padding-left: 0px !important;
|
||||||
|
}
|
||||||
|
#toolbar-menubar:not([inactive]){
|
||||||
|
margin-left: var(--uc-navigationbar-width);
|
||||||
|
height: var(--uc-toolbar-height);
|
||||||
|
}
|
23
firefox/chrome/chrome/minimal_text_fields.css
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
:root{
|
||||||
|
--lwt-toolbar-field-background-color: transparent !important;
|
||||||
|
--lwt-toolbar-field-border-color: transparent !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#urlbar,
|
||||||
|
.searchbar-textbox{
|
||||||
|
box-shadow: none !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#urlbar > *,
|
||||||
|
.searchbar-textbox > *{
|
||||||
|
opacity: 0;
|
||||||
|
transition: opacity 150ms linear
|
||||||
|
}
|
||||||
|
|
||||||
|
#urlbar > .urlbar-input-box,
|
||||||
|
.searchbar-textbox > moz-input-box{ opacity: 0.6 }
|
||||||
|
|
||||||
|
#urlbar:hover > *,
|
||||||
|
#urlbar:focus-within > *,
|
||||||
|
.searchbar-textbox:hover > *,
|
||||||
|
.searchbar-textbox:focus-within > *{ opacity: 1 }
|
28
firefox/chrome/chrome/minimal_toolbarbuttons.css
Normal file
|
@ -0,0 +1,28 @@
|
||||||
|
/* Create a circular placeholder for toolbarbutton and downscale to hide them */
|
||||||
|
|
||||||
|
/* Create a placeholder for buttons */
|
||||||
|
toolbar .toolbarbutton-1:not([open]),
|
||||||
|
.titlebar-button{
|
||||||
|
background-image: radial-gradient(circle at center, var(--lwt-toolbarbutton-icon-fill) 0,var(--lwt-toolbarbutton-icon-fill) 10%,transparent 15% );
|
||||||
|
}
|
||||||
|
/* Hide placeholder on hover */
|
||||||
|
toolbar:hover .toolbarbutton-1,.titlebar-buttonbox:hover > .titlebar-button{ background-image: none }
|
||||||
|
|
||||||
|
toolbar .toolbarbutton-1 > *,
|
||||||
|
.titlebar-button > *{
|
||||||
|
transform: scale(0);
|
||||||
|
transition: transform 82ms linear !important;
|
||||||
|
}
|
||||||
|
toolbar:hover .toolbarbutton-1 > *,
|
||||||
|
.toolbarbutton-1[open] > *,
|
||||||
|
.titlebar-buttonbox:hover > .titlebar-button > *{
|
||||||
|
transform: scale(1)
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Urlbar icons, this way they show colors is applicable */
|
||||||
|
.urlbar-icon{ transition: transform 82ms linear !important; }
|
||||||
|
#urlbar:not(:hover) .urlbar-icon{ transform: scale(0.3) }
|
||||||
|
|
||||||
|
/* The menu button has some margin on non-compact density which creates annnoying transitions */
|
||||||
|
/* Lets remove that as well as border since this is minimal style anyway */
|
||||||
|
#PanelUI-button{ border-left: 0px !important; margin-left: 0px !important; }
|
2
firefox/chrome/chrome/more_visible_tab_icon.css
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
/* Makes black favicons more visible on dark background, contrast will be lowered though */
|
||||||
|
.tab-icon-image{ filter: invert(40%) contrast(250%) saturate(250%) !important; }
|
27
firefox/chrome/chrome/multi-row_tabs.css
Normal file
|
@ -0,0 +1,27 @@
|
||||||
|
/* Makes tabs to appear on multiple lines */
|
||||||
|
/* Tab reordering will not work */
|
||||||
|
|
||||||
|
#tabbrowser-tabs,
|
||||||
|
#tabbrowser-tabs > .tabbrowser-arrowscrollbox{
|
||||||
|
min-height: unset !important;
|
||||||
|
}
|
||||||
|
#tabbrowser-tabs .scrollbox-innerbox{
|
||||||
|
display: flex;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
}
|
||||||
|
#tabbrowser-tabs .arrowscrollbox-scrollbox {
|
||||||
|
overflow: -moz-hidden-unscrollable;
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
.tabbrowser-tab{ max-height: 32px }
|
||||||
|
|
||||||
|
.tabbrowser-tab[fadein]{
|
||||||
|
min-width: 100px !important;
|
||||||
|
flex-grow: 1;
|
||||||
|
/*
|
||||||
|
Uncomment to enable full-width tabs, also makes tab dragging a tiny bit more sensible
|
||||||
|
Don't set to none or you'll see errors in console when closing tabs
|
||||||
|
*/
|
||||||
|
/*max-width: 100vw !important;*/
|
||||||
|
}
|
||||||
|
.tabbrowser-tab > stack{ width: 100%; height: 100% }
|
53
firefox/chrome/chrome/navbar_notabs.css
Normal file
|
@ -0,0 +1,53 @@
|
||||||
|
/* Variables */
|
||||||
|
:root {
|
||||||
|
--initial-width : 70px; /* initial width of the sidebar */
|
||||||
|
--sidebar-width : 250px; /* expanded width of the sidebar */
|
||||||
|
--toolbar-height : 0;
|
||||||
|
--menubar-height : -40px;
|
||||||
|
--toolmenubar-height: -40px; /* sum of previous two */
|
||||||
|
--shadow-color : #28282F; /* shadow color. set to #00000000 for no shadow. same as folder color from hntp and tab-hover color from tst*/
|
||||||
|
}
|
||||||
|
|
||||||
|
/* material firefox imports */
|
||||||
|
@import "../global/variables.css";
|
||||||
|
@import "../global/global.css";
|
||||||
|
@import "../icons/icons.css";
|
||||||
|
@import "../tabbar/tabbar.css";
|
||||||
|
@import "../navbar/navbar.css";
|
||||||
|
@import "../personalbar/personalbar.css";
|
||||||
|
@import "../popup/popup.css";
|
||||||
|
@import "../urlbar/urlbar.css";
|
||||||
|
@import "../findbar/findbar.css";
|
||||||
|
/* show bookmarks toolbar on new tab only */
|
||||||
|
#main-window #PersonalToolbar {
|
||||||
|
visibility : collapse !important;
|
||||||
|
z-index : 1!important;
|
||||||
|
position : relative!important;
|
||||||
|
margin-left: var(--initial-width); /* shift toolbar to the right based on initial width */
|
||||||
|
margin-top : var(--toolbar-height) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#main-window[title^="Firefox"] #PersonalToolbar {
|
||||||
|
visibility: visible !important;
|
||||||
|
margin-top: -1px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Hide the title bar */
|
||||||
|
#titlebar{ visibility: collapse; }
|
||||||
|
|
||||||
|
/* hide normal horizontal tab bar */
|
||||||
|
#TabsToolbar { visibility: collapse !important; }
|
||||||
|
|
||||||
|
#sidebar { border-right: none !important; }
|
||||||
|
|
||||||
|
toolbar#nav-bar {
|
||||||
|
padding-top : 12px;
|
||||||
|
padding-bottom: 7px;
|
||||||
|
margin-left : var(--initial-width);
|
||||||
|
padding-left : 7px;
|
||||||
|
border : none !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
toolbar{
|
||||||
|
border: none !important;
|
||||||
|
}
|
27
firefox/chrome/chrome/navbar_tabs_oneliner.css
Normal file
|
@ -0,0 +1,27 @@
|
||||||
|
/* Modify these to change relative widths or default height */
|
||||||
|
#navigator-toolbox{ --uc-navigationbar-width: 40vw; --uc-toolbar-height: 40px; --window-drag-space-width: 0px}
|
||||||
|
/* Override for other densities */
|
||||||
|
:root[uidensity="compact"] > #navigator-toolbox{ --uc-toolbar-height: 32px; }
|
||||||
|
:root[uidensity="touch"] > #navigator-toolbox{ --uc-toolbar-height: 40px; }
|
||||||
|
|
||||||
|
/* prevent urlbar overflow on narrow windows */
|
||||||
|
/* Dependent on how many items are in navigation toolbar ADJUST AS NEEDED */
|
||||||
|
@media screen and (max-width: 1200px){
|
||||||
|
#urlbar-container{ min-width:unset !important }
|
||||||
|
}
|
||||||
|
|
||||||
|
#TabsToolbar{ margin-left: var(--uc-navigationbar-width); }
|
||||||
|
#tabbrowser-tabs{ --tab-min-height: var(--uc-toolbar-height) !important; }
|
||||||
|
/* This isn't useful when tabs start in the middle of the window */
|
||||||
|
.titlebar-placeholder[type="pre-tabs"],
|
||||||
|
.titlebar-spacer[type="pre-tabs"]{ display: none }
|
||||||
|
#nav-bar{
|
||||||
|
margin-right:calc(100vw - var(--uc-navigationbar-width));
|
||||||
|
margin-top: calc(0px - var(--uc-toolbar-height));
|
||||||
|
padding-left: var(--window-drag-space-width);
|
||||||
|
}
|
||||||
|
/* 1px margin on touch density causes tabs to be too high */
|
||||||
|
.tab-close-button{ margin-top: 0 }
|
||||||
|
|
||||||
|
/* Hide dropdown placeholder */
|
||||||
|
#urlbar-container:not(:hover) .urlbar-history-dropmarker{margin-inline-start: -28px;}
|
|
@ -0,0 +1,41 @@
|
||||||
|
/* Modify these to change relative widths or default height */
|
||||||
|
#navigator-toolbox{ --uc-navigationbar-width: 50vw; --uc-toolbar-height: 40px; --window-drag-space-width: 20px}
|
||||||
|
/* reserved space for overflow + menu buttons */
|
||||||
|
#navigator-toolbox{ --uc-buttons-width: calc(56px + 4 * var(--toolbarbutton-outer-padding) + var(--uc-menubutton-padding,6px))}
|
||||||
|
#nav-bar:not([overflowing]) > #nav-bar-customization-target{ --uc-buttons-width: calc(28px + 2 * var(--toolbarbutton-outer-padding) + 6px) }
|
||||||
|
/* Override for other densities */
|
||||||
|
:root[uidensity="compact"] > #navigator-toolbox{ --uc-toolbar-height: 32px; --uc-menubutton-padding: 0px}
|
||||||
|
:root[uidensity="touch"] > #navigator-toolbox{ --uc-toolbar-height: 40px; }
|
||||||
|
|
||||||
|
/* prevent urlbar overflow on narrow windows */
|
||||||
|
/* Dependent on how many items are in navigation toolbar ADJUST AS NEEDED */
|
||||||
|
@media screen and (max-width: 1000px){
|
||||||
|
#urlbar-container{ min-width:unset !important }
|
||||||
|
}
|
||||||
|
|
||||||
|
#TabsToolbar{ margin-left: var(--uc-navigationbar-width); }
|
||||||
|
#tabbrowser-tabs{ --tab-min-height: var(--uc-toolbar-height) !important; }
|
||||||
|
/* This isn't useful when tabs start in the middle of the window */
|
||||||
|
.titlebar-placeholder[type="pre-tabs"],.titlebar-spacer[type="pre-tabs"]{ width:8px !important}
|
||||||
|
#nav-bar{
|
||||||
|
margin-right:calc(3 * 46px + var(--window-drag-space-width));
|
||||||
|
margin-top: calc(0px - var(--uc-toolbar-height));
|
||||||
|
padding-left: var(--window-drag-space-width);
|
||||||
|
}
|
||||||
|
#nav-bar-customization-target{ margin-right: calc(100vw - (var(--uc-navigationbar-width)) - var(--uc-buttons-width) - (3 * 46px) - var(--window-drag-space-width)) }
|
||||||
|
#TabsToolbar > :not(hbox){ position: relative !important; z-index: 2 }
|
||||||
|
.titlebar-placeholder[type="post-tabs"],
|
||||||
|
.titlebar-spacer[type="post-tabs"]{
|
||||||
|
width: calc(var(--uc-buttons-width) + var(--window-drag-space-width)) !important;
|
||||||
|
}
|
||||||
|
#PanelUI-button,#nav-bar-overflow-button{
|
||||||
|
margin: 0px !important;
|
||||||
|
border: 0px !important;
|
||||||
|
position: relative;
|
||||||
|
z-index: 3;
|
||||||
|
}
|
||||||
|
/* 1px margin on touch density causes tabs to be too high */
|
||||||
|
.tab-close-button{ margin-top: 0 }
|
||||||
|
|
||||||
|
/* Hide dropdown placeholder */
|
||||||
|
#urlbar-container:not(:hover) .urlbar-history-dropmarker{margin-inline-start: -28px;}
|
130
firefox/chrome/chrome/navbar_tabs_oneliner_tabs_on_left.css
Normal file
|
@ -0,0 +1,130 @@
|
||||||
|
/* Modify these to change relative widths or default height */
|
||||||
|
#navigator-toolbox{ --uc-navigationbar-width: 11vw; --uc-toolbar-height: 30px; --window-drag-space-width: 20px}
|
||||||
|
/* Override for other densities */
|
||||||
|
:root[uidensity="compact"] > #navigator-toolbox{ --uc-toolbar-height: 32px;}
|
||||||
|
:root[uidensity="touch"] > #navigator-toolbox{ --uc-toolbar-height: 40px; }
|
||||||
|
|
||||||
|
/* prevent urlbar overflow on narrow windows */
|
||||||
|
/* Dependent on how many items are in navigation toolbar and tabs-/nav-bar ratio - ADJUST AS NEEDED */
|
||||||
|
@media screen and (max-width: 1600px){
|
||||||
|
#urlbar-container{ min-width:unset !important }
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#toolbar-menubar{ height:initial !important; }
|
||||||
|
#toolbar-menubar[inactive] > #menubar-items{ opacity: 0; pointer-events: none; }
|
||||||
|
#toolbar-menubar[inactive]{
|
||||||
|
margin-bottom: calc(0px - var(--uc-toolbar-height));
|
||||||
|
margin-left: 0px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#TabsToolbar > .titlebar-buttonbox-container,
|
||||||
|
#TabsToolbar > .toolbar-items > spacer,
|
||||||
|
.titlebar-spacer[type="post-tabs"]{
|
||||||
|
display: none;
|
||||||
|
visibility: none;
|
||||||
|
max-width: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#TabsToolbar{
|
||||||
|
margin-right: calc(0px + var(--uc-navigationbar-width));
|
||||||
|
/* Remove empty space above tabs so that tabs are clickable at very top of screen */
|
||||||
|
margin-top: -2px;
|
||||||
|
margin-left: 10px;
|
||||||
|
z-index: 10;
|
||||||
|
}
|
||||||
|
#toolbar-menubar[autohide="true"] > .titlebar-buttonbox-container,
|
||||||
|
#tabbrowser-tabs,
|
||||||
|
.tabbrowser-tab[pinned]{
|
||||||
|
height: var(--uc-toolbar-height) !important;
|
||||||
|
min-height: var(--uc-toolbar-height) !important;
|
||||||
|
margin-left: -10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tabbrowser-tab[selected]{
|
||||||
|
min-width: 200px !important;
|
||||||
|
box-shadow: 0px 0px 15px 4px #111;
|
||||||
|
/*margin-top: -10px;*/
|
||||||
|
}
|
||||||
|
|
||||||
|
.tabbrowser-tab[pinned]{
|
||||||
|
max-width: 35px !important;
|
||||||
|
min-width: 0px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#nav-bar{
|
||||||
|
margin-left: calc(100vw - var(--uc-navigationbar-width));
|
||||||
|
margin-top: calc(0px - var(--uc-toolbar-height));
|
||||||
|
padding-right: calc(3 * 46px + var(--window-drag-space-width));
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Hide dropdown placeholder */
|
||||||
|
#urlbar-container:not(:hover) .urlbar-history-dropmarker{margin-inline-start: -28px;}
|
||||||
|
|
||||||
|
|
||||||
|
/* Autohide Navbar */
|
||||||
|
|
||||||
|
#nav-bar:not([customizing="true"]):not([inFullscreen]) {
|
||||||
|
/*visibility: collapse !important;*/
|
||||||
|
min-height: 0px !important;
|
||||||
|
max-height: 0px !important;
|
||||||
|
margin-top: -15px !important;
|
||||||
|
margin-bottom: 14px !important;
|
||||||
|
margin-right: 200px !important;
|
||||||
|
margin-left: 200px !important;
|
||||||
|
transition: all 300ms ease .5s !important;
|
||||||
|
z-index: -5 !important;
|
||||||
|
border-radius: 50px;
|
||||||
|
padding-left: 10px !important;
|
||||||
|
padding-right: 10px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#navigator-toolbox:hover:not([inFullscreen]) :-moz-any(#nav-bar),
|
||||||
|
#navigator-toolbox:focus-within :-moz-any(#nav-bar) {
|
||||||
|
/*visibility: visible !important;*/
|
||||||
|
min-height: 32px !important;
|
||||||
|
max-height: 32px !important;
|
||||||
|
margin-top: 5px !important;
|
||||||
|
margin-bottom: -38px !important;
|
||||||
|
transition: all 200ms ease 0s !important;
|
||||||
|
z-index: 5 !important;
|
||||||
|
border: 0px !important;
|
||||||
|
box-shadow: 3px 3px 8px 2px #111 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* make urlbar rounded */
|
||||||
|
#urlbar{
|
||||||
|
margin-top: 30px !important;
|
||||||
|
padding-right: 10px !important;
|
||||||
|
padding-left: 10px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#urlbar-background{
|
||||||
|
border-radius: 50px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#urlbar[open] > #urlbar-background{
|
||||||
|
animation-duration: 200ms !important;
|
||||||
|
border-radius: 15px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#urlbar[breakout][breakout-extend] {
|
||||||
|
margin-top: 20px !important;
|
||||||
|
top: 0px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#urlbar[breakout][breakout-extend] > #urlbar-input-container {
|
||||||
|
height: calc(var(--uc-toolbar-height) + 2 * 2px) !important;
|
||||||
|
padding-block: calc(2px + (var(--uc-toolbar-height) - var(--urlbar-height)) / 2);
|
||||||
|
padding-inline: calc(5px + 2px);
|
||||||
|
}
|
||||||
|
|
||||||
|
#nav-bar-customization-target{
|
||||||
|
margin-top: -15px;
|
||||||
|
}
|
||||||
|
#nav-bar-overflow-button{
|
||||||
|
margin-top: -15px !important;
|
||||||
|
}
|
||||||
|
#PanelUI-button{
|
||||||
|
margin-top: -15px !important;
|
||||||
|
}
|
60
firefox/chrome/chrome/navigation_buttons_inside_urlbar.css
Normal file
|
@ -0,0 +1,60 @@
|
||||||
|
/* Requires you to edit toolbar layout. Put buttons directly to the right of the urlbar in this order: <urlbar><reload-button><back-button><forward-button>*/
|
||||||
|
/* Actually, the order of reload and back-buttons doesn't matter */
|
||||||
|
|
||||||
|
#urlbar{
|
||||||
|
margin-right:0px !important;
|
||||||
|
border-right:none !important;
|
||||||
|
border-top-right-radius: 0 !important;
|
||||||
|
border-bottom-right-radius: 0 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#urlbar,
|
||||||
|
#nav-bar-customization-target > .chromeclass-toolbar-additional[overflows="false"]:not(#downloads-button){
|
||||||
|
border-color: var(--lwt-toolbar-field-border-color, hsla(240,5%,5%,.25));
|
||||||
|
}
|
||||||
|
|
||||||
|
#nav-bar-customization-target > .chromeclass-toolbar-additional[overflows="false"]:not(#downloads-button){
|
||||||
|
margin: 3px 0 !important;
|
||||||
|
padding: 0 0px !important;
|
||||||
|
background-clip: padding-box;
|
||||||
|
border-style: solid;
|
||||||
|
border-width: 1px 0;
|
||||||
|
opacity: 1 !important;
|
||||||
|
background-color: var(--lwt-toolbar-field-background-color, hsla(0,0%,100%,.8));
|
||||||
|
}
|
||||||
|
|
||||||
|
#nav-bar-customization-target > .chromeclass-toolbar-additional[overflows="false"]:not(#downloads-button) .toolbarbutton-icon{
|
||||||
|
border: none !important;
|
||||||
|
border-radius: 0 !important;
|
||||||
|
margin: -3px 0 !important;
|
||||||
|
background-color:transparent;
|
||||||
|
width: calc(2 * var(--toolbarbutton-inner-padding) + 16px) !important;
|
||||||
|
height: calc(2 * var(--toolbarbutton-inner-padding) + 16px) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#back-button{ --backbutton-background: transparent; --uc-back-extra-padding: 0px !important }
|
||||||
|
|
||||||
|
#back-button > .toolbarbutton-icon{ padding: var(--toolbarbutton-inner-padding) }
|
||||||
|
|
||||||
|
#nav-bar-customization-target > .chromeclass-toolbar-additional[overflows="false"]:not(#downloads-button):hover .toolbarbutton-icon{
|
||||||
|
background-color: transparent !important;
|
||||||
|
box-shadow: none !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#nav-bar-customization-target > .chromeclass-toolbar-additional[overflows="false"]:not(#downloads-button):not([disabled]):hover{
|
||||||
|
background-image: linear-gradient(to bottom, var(--uc-ext-active-color,hsla(0,0%,70%,.2)), var(--uc-ext-active-color,hsla(0,0%,70%,.2)))
|
||||||
|
}
|
||||||
|
|
||||||
|
#urlbar-container:focus-within ~ .chromeclass-toolbar-additional[overflows="false"]:not(#downloads-button){
|
||||||
|
border-color:Highlight !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#urlbar-container ~ .chromeclass-toolbar-additional[overflows="false"][disabled]:not(#downloads-button) .toolbarbutton-icon{ opacity: 0.4 !important }
|
||||||
|
/* Change this if you want some other button to be the right-most one */
|
||||||
|
#forward-button{
|
||||||
|
border-right-width: 1px !important;
|
||||||
|
border-radius: 0 2px 2px 0 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#back-button, #back-button > image{ border-radius: 0 !important; }
|
||||||
|
#stop-reload-button{ padding: 0 !important; }
|
14
firefox/chrome/chrome/page_action_buttons_on_hover.css
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
/* Page action-buttons "slide in" when cursor is on top of them and don't reserve space when not used */
|
||||||
|
|
||||||
|
#page-action-buttons > *[class^=urlbar-icon]{
|
||||||
|
margin-inline-end: -26px;
|
||||||
|
opacity: 0;
|
||||||
|
transition: margin-inline-end 200ms linear, opacity 200ms linear;
|
||||||
|
}
|
||||||
|
:root[uidensity="compact"] #page-action-buttons > *[class^=urlbar-icon]{ margin-inline-end: -22px; }
|
||||||
|
#page-action-buttons:hover > *[class^=urlbar-icon],
|
||||||
|
#page-action-buttons > *[class^=urlbar-icon][open],
|
||||||
|
#page-action-buttons > *[class^=urlbar-icon][open] ~ *[class^=urlbar-icon]{
|
||||||
|
opacity: 1;
|
||||||
|
margin-inline-end: 0px !important;
|
||||||
|
}
|
43
firefox/chrome/chrome/status_inside_urlbar.css
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
/* STATUSPANEL INSIDE URLBAR */
|
||||||
|
|
||||||
|
#urlbar .urlbar-input-box{ display: -moz-stack; }
|
||||||
|
/* -moz-stack causes an subtle issue where in certain scenarios a weirdly aligned "http(s)://" may show up */
|
||||||
|
|
||||||
|
#urlbar .urlbar-input-box::after{
|
||||||
|
z-index: 2;
|
||||||
|
content: "";
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
pointer-events:none;
|
||||||
|
background: -moz-element(#statuspanel) left calc(90% - var(--toolbarbutton-outer-padding)) no-repeat !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#urlbar .urlbar-input-box::after{
|
||||||
|
display: -moz-box;
|
||||||
|
}
|
||||||
|
|
||||||
|
#statuspanel-inner > #statuspanel-label{
|
||||||
|
height:23px;
|
||||||
|
min-width: 500px;
|
||||||
|
background-color: var(--lwt-toolbar-field-background-color, hsla(0,0%,100%,.8)) !important;
|
||||||
|
border: none !important;
|
||||||
|
font-size: larger;
|
||||||
|
color: inherit !important;
|
||||||
|
}
|
||||||
|
/* If you use a theme where urlbar is partially transparent you should edit this color to something that closely matches the perceived color of urlbar. Or perhaps use background-image - linear-gradient() can work well here. But keep the color or image opaque or otherwise you'll face an issue where urlbar text bleeds through */
|
||||||
|
#statuspanel-inner{ background-color: var(--toolbar-non-lwt-bgcolor) }
|
||||||
|
|
||||||
|
#statuspanel{ color: lightpink; z-index: -1; }
|
||||||
|
#statuspanel[type="status"] { color: skyblue }
|
||||||
|
|
||||||
|
/* Don't show common values to save space (useful for oneliner) - safe to delete these */
|
||||||
|
/* If you change the font size of the label then you'll have to modify these too */
|
||||||
|
/* non-https links get a slight red hue */
|
||||||
|
|
||||||
|
#statuspanel-inner > #statuspanel-label{ margin-left: -3px !important; }
|
||||||
|
#statuspanel-inner > #statuspanel-label[value^="http"]{ margin-left: -3.7ch !important; }
|
||||||
|
#statuspanel-inner > #statuspanel-label[value^="https"]{ margin-left: -6.1ch !important; color: var(--lwt-toolbar-field-color, black) !important}
|
||||||
|
#statuspanel-inner > #statuspanel-label[value^="www"]{ margin-left: -4.5ch !important; }
|
||||||
|
#statuspanel-inner > #statuspanel-label[value^="http://www"]{ margin-left: -9.7ch !important; }
|
||||||
|
#statuspanel-inner > #statuspanel-label[value^="https://www"]{ margin-left: -10.1ch !important; }
|
||||||
|
#statuspanel-inner{ margin-left: -1px; }
|
|
@ -0,0 +1,7 @@
|
||||||
|
/* Always show tab close button on hover and never otherwise */
|
||||||
|
.tabbrowser-tab .tab-close-button{
|
||||||
|
display:none;
|
||||||
|
}
|
||||||
|
.tabbrowser-tab:not([pinned]):hover .tab-close-button{
|
||||||
|
display:-moz-box !important;
|
||||||
|
}
|
44
firefox/chrome/chrome/tab_loading_progress_throbber.css
Normal file
|
@ -0,0 +1,44 @@
|
||||||
|
/* Create a circular throbber inside tabs replacing the default one */
|
||||||
|
/* Doesn't really measure loading progress but sort of looks like it */
|
||||||
|
|
||||||
|
#tabbrowser-tabs{ --tab-loader-size: 18px; }
|
||||||
|
.tabbrowser-tab .tab-throbber,
|
||||||
|
.tabbrowser-tab[bursting] .tab-icon-image{
|
||||||
|
display: none !important;
|
||||||
|
}
|
||||||
|
.tabbrowser-tab .tab-content::before{
|
||||||
|
display: -moz-box;
|
||||||
|
content: "";
|
||||||
|
width:var(--tab-loader-size);
|
||||||
|
height:var(--tab-loader-size);
|
||||||
|
margin-right:6px;
|
||||||
|
background: center no-repeat url('data:image/svg+xml,<?xml version="1.0" encoding="UTF-8" ?><svg viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg" version="1.1" stroke="url(%23gradient)" fill="none" width="100%" height="100%" stroke-width="1.7"><defs><radialGradient id="gradient" cx="50%" cy="0" r="0.6"><stop offset="0%" stop-color="lightpink"/><stop offset="100%" stop-color="red"/></radialGradient></defs><circle cx="8" cy="8" r="5.7"/></svg>') !important;
|
||||||
|
clip-path: polygon(50% 50%,50% 0%,50% 0%,50% 0%, 50% 0%,50% 0%, 50% 0%);
|
||||||
|
transition: clip-path 0.2s ease-out, opacity 0.3s linear 0.1s;
|
||||||
|
}
|
||||||
|
.tabbrowser-tab:-moz-any([busy],[bursting]) .tab-content{ padding-left: calc( 9px - (var(--tab-loader-size) - 16px)) !important; }
|
||||||
|
.tabbrowser-tab[pinned] .tab-content::before{ margin-right: 0px }
|
||||||
|
@keyframes loadprogress{
|
||||||
|
from{ clip-path: polygon(50% 50%,50% 0%,100% 0%,100% 50%, 100% 50%,100% 50%, 100% 50%); }
|
||||||
|
25%{ clip-path: polygon(50% 50%,50% 0%,100% 0%,100% 100%, 100% 100%,100% 100%, 100% 100%); }
|
||||||
|
50%{ clip-path: polygon(50% 50%,50% 0%,100% 0%,100% 100%, 0% 100%,0% 100%,0% 100%); }
|
||||||
|
75%{ clip-path: polygon(50% 50%,50% 0%,100% 0%,100% 100%, 0% 100%,0% 0%,0% 0%); }
|
||||||
|
to{ clip-path: polygon(50% 50%,50% 0%,100% 0%,100% 100%, 0% 100%, 0% 0%, 50% 0%); }
|
||||||
|
}
|
||||||
|
@keyframes rotation{
|
||||||
|
from{ transform: rotateZ(0deg) }
|
||||||
|
to{ transform: rotateZ(360deg) }
|
||||||
|
}
|
||||||
|
.tabbrowser-tab:not([busy]):not([bursting]) .tab-content::before{ visibility: collapse; }
|
||||||
|
.tabbrowser-tab:not([busy]) .tab-content::before{ opacity: 0 }
|
||||||
|
.tabbrowser-tab[busy]:not([progress]) .tab-content::before{
|
||||||
|
clip-path: polygon(50% 50%,50% 0%,100% 0%,100% 50%, 100% 50%,100% 50%, 100% 50%);
|
||||||
|
}
|
||||||
|
.tabbrowser-tab[busy][progress] .tab-content::before{
|
||||||
|
animation: loadprogress 2s linear, rotation 0.7s linear 2s infinite !important;
|
||||||
|
animation-fill-mode: forwards !important;
|
||||||
|
}
|
||||||
|
.tabbrowser-tab[bursting] .tab-content::before{
|
||||||
|
clip-path: polygon(50% 50%,50% 0%,100% 0%,100% 100%, 0% 100%,0% 0%, 50% 0%) !important;
|
||||||
|
}
|
||||||
|
#tabbrowser-tabs[schedulepressure] .tab-content::before{ display:none !important; }
|
2
firefox/chrome/chrome/tabs_fill_available_width.css
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
/* Why 100vw? Tab closing requires width animation to end and "none" can't be animated */
|
||||||
|
.tabbrowser-tab[fadein]{ max-width: 100vw !important }
|
66
firefox/chrome/chrome/theme_additional_windows.css
Normal file
|
@ -0,0 +1,66 @@
|
||||||
|
/* Color editing should generally be done in theme_color_variables.css */
|
||||||
|
|
||||||
|
/*!!! IMPORT theme_color_variables.css !!!*/
|
||||||
|
|
||||||
|
/* Library window */
|
||||||
|
@-moz-document url(chrome://browser/content/places/places.xul){
|
||||||
|
:root{ background-color: var(--uc-light-bkgnd-color,black) !important;}
|
||||||
|
#placesToolbar,
|
||||||
|
tree{
|
||||||
|
background: transparent !important;
|
||||||
|
color: var(--uc-text-color) !important;
|
||||||
|
}
|
||||||
|
textbox,
|
||||||
|
richlistbox,
|
||||||
|
treecol,
|
||||||
|
button{
|
||||||
|
-moz-appearance: none !important;
|
||||||
|
background-color: var(--uc-dark-bkgnd-color) !important;
|
||||||
|
color: var(--uc-text-color) !important;
|
||||||
|
}
|
||||||
|
treecol:not([hideheader]){ height: 24px; }
|
||||||
|
treecol:hover{ filter: brightness(160%) }
|
||||||
|
treechildren::-moz-tree-row(multicol, odd){ background-color: rgba(0,0,0,0.2) !important; }
|
||||||
|
treechildren::-moz-tree-row(hover),button:hover{ background-color: var(--uc-active-color) !important; }
|
||||||
|
treechildren::-moz-tree-row(selected){ background-color: var(--uc-border-color) !important; }
|
||||||
|
button{ padding: 3px }
|
||||||
|
#placesMenu > menu{ border: none !important; }
|
||||||
|
#detailsDeck{ color: var(--uc-text-color) }
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Page-info window */
|
||||||
|
@-moz-document url(chrome://browser/content/pageinfo/pageInfo.xul){
|
||||||
|
#main-window,
|
||||||
|
#topBar{
|
||||||
|
background-color: var(--uc-dark-bkgnd-color,black) !important;
|
||||||
|
color: var(--uc-text-color,white) !important;
|
||||||
|
}
|
||||||
|
textbox{ color: var(--uc-text-color) !important; }
|
||||||
|
|
||||||
|
richlistbox,
|
||||||
|
treecol,
|
||||||
|
button,
|
||||||
|
#permList{
|
||||||
|
-moz-appearance: none !important;
|
||||||
|
background-color: var(--uc-light-bkgnd-color) !important;
|
||||||
|
color: var(--uc-text-color) !important;
|
||||||
|
}
|
||||||
|
tree{
|
||||||
|
background: transparent !important;
|
||||||
|
color: var(--uc-text-color) !important;
|
||||||
|
}
|
||||||
|
treecol:not([hideheader]){ height: 24px; }
|
||||||
|
treecol:hover{ filter: brightness(140%) }
|
||||||
|
treechildren{ background-color: var(--uc-light-bkgnd-color) !important; }
|
||||||
|
treechildren::-moz-tree-row(multicol, odd){ background-color: rgba(0,0,0,0.2) !important; }
|
||||||
|
treechildren::-moz-tree-row(hover),
|
||||||
|
button:hover,
|
||||||
|
radiogroup > radio:hover,
|
||||||
|
#permList > .permission:hover{
|
||||||
|
background-color: var(--uc-active-color) !important;
|
||||||
|
}
|
||||||
|
treechildren::-moz-tree-row(selected),
|
||||||
|
radiogroup > radio[selected]{
|
||||||
|
background-color: var(--uc-border-color) !important;
|
||||||
|
}
|
||||||
|
}
|
8
firefox/chrome/chrome/theme_color_variables.css
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
/* Color controls for theme_***.css files */
|
||||||
|
:root{
|
||||||
|
--uc-dark-bkgnd-color: #2b2b2b;
|
||||||
|
--uc-light-bkgnd-color: rgb(24, 24, 24);
|
||||||
|
--uc-active-color: rgb(59, 59, 59);
|
||||||
|
--uc-text-color: rgb(228, 228, 228);
|
||||||
|
--uc-border-color: rgb(172, 172, 172);
|
||||||
|
}
|
135
firefox/chrome/chrome/theme_popups_and_menus.css
Normal file
|
@ -0,0 +1,135 @@
|
||||||
|
/* Makes popups, menus and context menus dark */
|
||||||
|
/* Color editing should generally be done in theme_color_variables.css */
|
||||||
|
|
||||||
|
/*!!! IMPORT theme_color_variables.css !!!*/
|
||||||
|
|
||||||
|
/* Limit popups for general browser popups so that devtools is not affected */
|
||||||
|
@-moz-document url-prefix(chrome://browser/content/){
|
||||||
|
:root{ --panel-disabled-color: #888 !important; }
|
||||||
|
|
||||||
|
.panel-arrowcontent,
|
||||||
|
#alltabs-popup .arrowscrollbox-scrollbox,
|
||||||
|
menupopup:not(#BMB_bookmarksPopup),
|
||||||
|
.textbox-contextmenu{
|
||||||
|
border: 1px solid #434850 !important;
|
||||||
|
background: var(--uc-dark-bkgnd-color) !important;
|
||||||
|
border-radius: 5px !important;
|
||||||
|
color: var(--uc-text-color) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* bookmarks menu is different from others */
|
||||||
|
#BMB_bookmarksPopup{
|
||||||
|
background-color: unset !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* GENERAL */
|
||||||
|
menupopup,
|
||||||
|
menuitem,
|
||||||
|
menu{
|
||||||
|
-moz-appearance: none !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
menupopup{
|
||||||
|
background-color:var(--uc-dark-bkgnd-color) !important;
|
||||||
|
border:none;
|
||||||
|
}
|
||||||
|
|
||||||
|
menuitem,
|
||||||
|
menu{
|
||||||
|
min-height:24px !important;
|
||||||
|
color: var(--uc-text-color) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
menuitem[disabled="true"],
|
||||||
|
menu[disabled="true"]{
|
||||||
|
color: black !important;
|
||||||
|
text-shadow: 0 0 4px silver !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
menuitem:hover,
|
||||||
|
menu:hover{
|
||||||
|
background-color:var(--uc-active-color) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
menuitem[disabled="true"]:hover,
|
||||||
|
menu[disabled="true"]:hover{
|
||||||
|
background-color: transparent !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.menu-right{ filter: invert(100%) }
|
||||||
|
#context-navigation{ background-color: transparent !important; }
|
||||||
|
|
||||||
|
/* POPUP PANELS */
|
||||||
|
|
||||||
|
.panel-subviews,
|
||||||
|
#mainPopupSet menupopup,
|
||||||
|
#main-menubar menupopup,
|
||||||
|
#bookmarks-menu-button menu menupopup > hbox,
|
||||||
|
.search-panel-header.search-panel-current-engine,
|
||||||
|
.search-panel-current-input,
|
||||||
|
panelview,
|
||||||
|
.PanelUI-subView,
|
||||||
|
.autocomplete-richlistbox{
|
||||||
|
background-color: var(--uc-dark-bkgnd-color) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.subviewbutton:hover,
|
||||||
|
#widget-overflow-mainView .toolbarbutton-1:hover,
|
||||||
|
#PopupAutoCompleteRichResult .autocomplete-richlistitem:hover,
|
||||||
|
#PopupSearchAutoComplete .autocomplete-richlistitem:hover{
|
||||||
|
background-color: var(--uc-active-color) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#widget-overflow-mainView #searchbar > .searchbar-textbox{
|
||||||
|
background-color: var(--uc-light-bkgnd-color) !important;
|
||||||
|
color: var(--uc-text-color) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
panelview toolbarbutton.subviewbutton .toolbarbutton-text,
|
||||||
|
#downloadsFooter,
|
||||||
|
#customizationui-widget-panel label,
|
||||||
|
.autocomplete-richlistitem .ac-title,
|
||||||
|
#widget-overflow-mainView toolbarbutton,
|
||||||
|
#bookmarks-menu-button menu menupopup,
|
||||||
|
#PopupSearchAutoComplete .autocomplete-tree.plain.search-panel-tree,
|
||||||
|
#PanelUI-contents toolbarbutton,
|
||||||
|
#alltabs_containersTab,
|
||||||
|
#PopupAutoCompleteRichResult .ac-title,
|
||||||
|
#PopupAutoCompleteRichResult .search-one-offs,
|
||||||
|
.search-panel-input-value{
|
||||||
|
color: var(--uc-text-color)!important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#alltabs-popup,
|
||||||
|
#alltabs_containersMenuTab{
|
||||||
|
border: none !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.search-panel-one-offs,
|
||||||
|
.downloadsPanelFooterButton:not(:hover),
|
||||||
|
#overflowMenu-customize-button:not(:hover),
|
||||||
|
#searchbar-anon-search-settings{
|
||||||
|
background-color: var(--uc-light-bkgnd-color) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#PopupAutoCompleteRichResult .ac-emphasize-text.ac-emphasize-text-title{
|
||||||
|
color: var(--uc-border-color) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#editBookmarkPanel textbox,
|
||||||
|
#editBookmarkPanel menulist,
|
||||||
|
#editBookmarkPanel button,
|
||||||
|
#editBookmarkPanel richlistbox,
|
||||||
|
#editBookmarkPanel tree{
|
||||||
|
-moz-appearance: none !important;
|
||||||
|
background-color: var(--uc-light-bkgnd-color) !important;
|
||||||
|
color: var(--uc-text-color) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#editBookmarkPanel button:hover{ filter: brightness(150%) }
|
||||||
|
#editBookmarkPanel menulist{ padding: 4px !important; }
|
||||||
|
#editBookmarkPanel button{ padding: 3px !important; }
|
||||||
|
|
||||||
|
#editBMPanel_folderTree treechildren::-moz-tree-cell(selected){ background-color: var(--uc-border-color) !important; }
|
||||||
|
#editBMPanel_folderTree treechildren::-moz-tree-cell(hover){ background-color: var(--uc-active-color) !important; }
|
||||||
|
}
|
43
firefox/chrome/chrome/theme_sidebar.css
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
/* Colors for bookmarks and history sidebars */
|
||||||
|
/* Color editing should generally be done in theme_color_variables.css */
|
||||||
|
|
||||||
|
/*!!! IMPORT theme_color_variables.css !!!*/
|
||||||
|
|
||||||
|
#sidebar-box{ --toolbar-non-lwt-bgcolor: var(--uc-light-bkgnd-color) }
|
||||||
|
|
||||||
|
#sidebar-search-container #search-box{
|
||||||
|
-moz-appearance:none !important;
|
||||||
|
background-color: var(--uc-dark-bkgnd-color) !important;
|
||||||
|
border: none !important;
|
||||||
|
color: var(--uc-text-color) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#history-panel,
|
||||||
|
#bookmarksPanel,
|
||||||
|
#sidebar-header{
|
||||||
|
background-color: var(--uc-light-bkgnd-color) !important;
|
||||||
|
color: var(--uc-text-color) !important;
|
||||||
|
border-top: none !important;
|
||||||
|
border-bottom:none !important;
|
||||||
|
scrollbar-color: rgb(210,210,210) var(--uc-light-bkgnd-color) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.sidebar-placesTreechildren,
|
||||||
|
#sidebar-box,
|
||||||
|
#sidebar-header{
|
||||||
|
color: var(--uc-text-color) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.sidebar-placesTreechildren::-moz-tree-cell{
|
||||||
|
outline:none;
|
||||||
|
border-radius:0px;
|
||||||
|
background-image:none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.sidebar-placesTreechildren::-moz-tree-cell(selected){
|
||||||
|
background-color: var(--uc-border-color) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.sidebar-placesTreechildren::-moz-tree-cell(hover){
|
||||||
|
background-color: var(--uc-active-color) !important;
|
||||||
|
}
|
118
firefox/chrome/chrome/theme_toolbars.css
Normal file
|
@ -0,0 +1,118 @@
|
||||||
|
/* General toolbar coloring - buttons, text, findbar etc. */
|
||||||
|
/* Color editing should generally be done in theme_color_variables.css */
|
||||||
|
|
||||||
|
/*!!! IMPORT theme_color_variables.css !!!*/
|
||||||
|
|
||||||
|
/* Override some default variables - stylesheet compatibility */
|
||||||
|
:root{
|
||||||
|
--lwt-toolbar-field-background-color: var(--uc-dark-bkgnd-color) !important;
|
||||||
|
--lwt-toolbar-field-border-color: transparent !important;
|
||||||
|
--toolbar-bgcolor: var(--uc-dark-bkgnd-color) !important;
|
||||||
|
}
|
||||||
|
#nav-bar{--uc-ext-active-color: var(--uc-active-color);}
|
||||||
|
|
||||||
|
#navigator-toolbox > toolbar:not(#toolbar-menubar):not(#TabsToolbar),
|
||||||
|
#browser-bottombox,
|
||||||
|
findbar{
|
||||||
|
background-color: var(--uc-light-bkgnd-color) !important;
|
||||||
|
color: var(--uc-text-color) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
findbar{ background-image: none !important; }
|
||||||
|
|
||||||
|
#TabsToolbar,
|
||||||
|
#toolbar-menubar,
|
||||||
|
.findbar-find-previous,
|
||||||
|
.findbar-find-next,
|
||||||
|
#urlbar,
|
||||||
|
.findbar-textbox,
|
||||||
|
.searchbar-textbox{
|
||||||
|
color: var(--uc-text-color) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#TabsToolbar,
|
||||||
|
#toolbar-menubar{
|
||||||
|
background-color: var(--uc-light-bkgnd-color) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.findbar-find-previous,
|
||||||
|
.findbar-find-next{
|
||||||
|
background-color: var(--lwt-toolbar-field-background-color) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#urlbar{ border-color: transparent !important; }
|
||||||
|
|
||||||
|
#urlbar[focused]{
|
||||||
|
border-color: var(--uc-border-color) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#urlbar .urlbar-icon:hover{
|
||||||
|
box-shadow: none !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#tabbrowser-tabs,
|
||||||
|
.search-panel-input-value,
|
||||||
|
.titlebar-buttonbox-container,
|
||||||
|
.tab-close-button{
|
||||||
|
color: var(--uc-text-color) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.toolbarbutton-icon:hover, toolbarbutton:hover > stack{ border-radius: 2px !important; }
|
||||||
|
:root:not([uidensity="compact"]) #back-button > .toolbarbutton-icon{ border-radius: 10000px !important; }
|
||||||
|
|
||||||
|
.toolbarbutton-1:not([disabled]):hover > .toolbarbutton-icon,
|
||||||
|
.toolbarbutton-1:not([disabled]):hover > stack,
|
||||||
|
.toolbarbutton-1[open="true"] > .toolbarbutton-icon,
|
||||||
|
.toolbarbutton-1[open="true"] > stack,
|
||||||
|
.toolbarbutton-1[checked="true"] > .toolbarbutton-icon,
|
||||||
|
.toolbarbutton-1[checked="true"] > stack,
|
||||||
|
#PlacesToolbarItems .bookmark-item:hover,
|
||||||
|
#page-action-buttons image:hover,
|
||||||
|
.urlbar-icon:hover,
|
||||||
|
#TabsToolbar .scrollbutton-down:hover,
|
||||||
|
#TabsToolbar .scrollbutton-up:hover{
|
||||||
|
background-color: var(--uc-active-color) !important;
|
||||||
|
box-shadow: inset 0 0 0px 0px var(--uc-border-color) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
findbar toolbarbutton:not([disabled]):not(.close-icon):hover,
|
||||||
|
findbar toolbarbutton[checked="true"],
|
||||||
|
findbar > .findbar-closebutton:hover > .toolbarbutton-icon{
|
||||||
|
background-color: var(--uc-active-color) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.findbar-textbox:not(.minimal){ border-right: none !important; }
|
||||||
|
.findbar-find-next{ border-left: none !important; }
|
||||||
|
.findbar-textbox:focus-within ~ toolbarbutton{ border-color: var(--toolbar-field-focus-border-color, Highlight) !important; }
|
||||||
|
|
||||||
|
/* Override some special cases */
|
||||||
|
#TabsToolbar .scrollbutton-down > .toolbarbutton-icon,
|
||||||
|
#TabsToolbar .scrollbutton-up > .toolbarbutton-icon,
|
||||||
|
#downloads-indicator-anchor,
|
||||||
|
#PersonalToolbar .bookmark-item > .toolbarbutton-icon,
|
||||||
|
#titlebar .titlebar-button > .toolbarbutton-icon,
|
||||||
|
#widget-overflow-mainView toolbarbutton > stack,
|
||||||
|
#widget-overflow-mainView toolbarbutton > .toolbarbutton-icon{
|
||||||
|
background-color: transparent !important;
|
||||||
|
box-shadow: none !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#back-button {--backbutton-background: rgb(66,74,89) }
|
||||||
|
|
||||||
|
.toolbarbutton-1{ fill: var(--uc-text-color) !important; }
|
||||||
|
|
||||||
|
.tab-line{
|
||||||
|
height:0px !important;
|
||||||
|
border-bottom: solid 1px rgb(16, 69, 87) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* commented out to remove gradient from active tab */
|
||||||
|
/*
|
||||||
|
.tabbrowser-tab[selected] .tab-background{
|
||||||
|
background-image: linear-gradient(var(--uc-active-color) 75%,var(--uc-light-bkgnd-color)) !important;
|
||||||
|
box-shadow:0 3px 1px -1px white inset,
|
||||||
|
0 10px 4px -5px var(--uc-border-color) inset,
|
||||||
|
0 -2px 0 rgba(0,0,0,.06) inset !important;
|
||||||
|
}
|
||||||
|
*/
|
13
firefox/chrome/chrome/toggle_bookmarksbar_with_alt.css
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
/* Pretty much requires either menubar_in-toolbar or the oneliner compatible one */
|
||||||
|
/* Otherwise the changing vertical position causes bookmarks to be unclickable */
|
||||||
|
/* NOT COMPATIBLE with Fx65+ */
|
||||||
|
#main-window[sizemode="normal"]:not([customizing]) #PersonalToolbar{
|
||||||
|
transition: margin 0.15s ease-in-out 50ms, z-index 16ms linear 100ms!important;
|
||||||
|
height: 28px;
|
||||||
|
position: relative;
|
||||||
|
z-index: 1;
|
||||||
|
}
|
||||||
|
:root:not([customizing]) #toolbar-menubar[inactive] ~ #PersonalToolbar:not(:hover){
|
||||||
|
margin-top:-28px;
|
||||||
|
z-index: -1;
|
||||||
|
}
|
21
firefox/chrome/chrome/urlbar_visible_on_active_tab_click.css
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
/* NOTE This only works if tabs are on top */
|
||||||
|
.urlbar-input-box::before{
|
||||||
|
content:"";
|
||||||
|
display: block;
|
||||||
|
position: fixed;
|
||||||
|
top:0;
|
||||||
|
left:0;
|
||||||
|
width:100vw;
|
||||||
|
height:32px;
|
||||||
|
}
|
||||||
|
.tabbrowser-tab,
|
||||||
|
#TabsToolbar toolbarbutton{
|
||||||
|
position: relative;
|
||||||
|
z-index: 2
|
||||||
|
}
|
||||||
|
#navigator-toolbox:not(:focus-within) .tabbrowser-tab[visuallyselected]{ z-index: 0 !important; }
|
||||||
|
|
||||||
|
:root:not([customizing]) #urlbar{ opacity: 0; transition: opacity 200ms ease-in-out }
|
||||||
|
:root:not([customizing]) #urlbar:focus-within{ opacity: 1 }
|
||||||
|
|
||||||
|
#toolbar-menubar{ position: relative; z-index:3 }
|
8
firefox/chrome/content/about_page_scrollbars.css
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
@namespace xul url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");
|
||||||
|
@-moz-document url-prefix("about:"){
|
||||||
|
xul|page,
|
||||||
|
xul|scrollbar{
|
||||||
|
scrollbar-color: rgb(210,210,210) rgb(44, 46, 49);
|
||||||
|
scrollbar-width: thin;
|
||||||
|
}
|
||||||
|
}
|
4
firefox/chrome/content/css_scrollbar_width_color.css
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
/* Scrollbar colors and width - applied globally */
|
||||||
|
@namespace url("http://www.w3.org/1999/xhtml");
|
||||||
|
:root{ scrollbar-color: rgb(210,210,210) rgb(48, 50, 53) }
|
||||||
|
*{ scrollbar-width: thin }
|
37
firefox/chrome/content/limit_css_data_leak.css
Normal file
|
@ -0,0 +1,37 @@
|
||||||
|
/* Limit CSS data leak, POTENTIALLY BREAKS SOME SITES */
|
||||||
|
@namespace html url("http://www.w3.org/1999/xhtml");
|
||||||
|
|
||||||
|
body input:not([value=""])[type],
|
||||||
|
body input:not([value=""])[type]:focus ~ *,
|
||||||
|
body input:not([value=""])[type] * {
|
||||||
|
background-image: none !important;
|
||||||
|
border-image: none !important;
|
||||||
|
font-family: inherit !important;
|
||||||
|
list-style-image: none !important;
|
||||||
|
cursor: unset !important;
|
||||||
|
content: none !important;
|
||||||
|
}
|
||||||
|
body input:not([value=""])[type]::before,
|
||||||
|
body input:not([value=""])[type]:focus ~ *::before,
|
||||||
|
body input:not([value=""])[type] *::before,
|
||||||
|
body input:not([value=""])[type]::after,
|
||||||
|
body input:not([value=""])[type]:focus ~ *::after,
|
||||||
|
body input:not([value=""])[type] *::after {
|
||||||
|
content:none !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Remove the comment to apply more strict version, causes even more trouble */
|
||||||
|
/*
|
||||||
|
body input:not([value=""])[type] ~ *{
|
||||||
|
background-image: none !important;
|
||||||
|
border-image: none !important;
|
||||||
|
font-family: inherit !important;
|
||||||
|
list-style-image: none !important;
|
||||||
|
cursor: unset !important;
|
||||||
|
content: none !important;
|
||||||
|
}
|
||||||
|
body input:not([value=""])[type] ~ *::before,
|
||||||
|
body input:not([value=""])[type] ~ *::after{
|
||||||
|
content:none !important;
|
||||||
|
}
|
||||||
|
*/
|
6
firefox/chrome/content/newtab_background_color.css
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
@namespace url("http://www.w3.org/1999/xhtml");
|
||||||
|
|
||||||
|
@-moz-document url("about:home"),url("about:blank"),url("about:newtab"),url("about:privatebrowsing"){
|
||||||
|
body{background-color: rgb(44,44,44) !important;
|
||||||
|
color:white}
|
||||||
|
}
|
12
firefox/chrome/content/transparent_reader_toolbar.css
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
/* Toolbar is invisible until hovered */
|
||||||
|
|
||||||
|
@namespace html url("http://www.w3.org/1999/xhtml");
|
||||||
|
|
||||||
|
@-moz-document url-prefix("about:reader"){
|
||||||
|
.reader-toolbar, .reader-toolbar .button:not(:hover) {
|
||||||
|
background-color: transparent !important;
|
||||||
|
border: none !important;
|
||||||
|
}
|
||||||
|
.reader-toolbar:not(:hover)>*:not([open]){ visibility:hidden; }
|
||||||
|
body{ text-align: justify; }
|
||||||
|
}
|
65
firefox/chrome/findbar/findbar.css
Executable file
|
@ -0,0 +1,65 @@
|
||||||
|
.findbar-textbox
|
||||||
|
{
|
||||||
|
background-color: transparent !important;
|
||||||
|
background-image: url(../icons/search.svg) !important;
|
||||||
|
background-repeat: no-repeat !important;
|
||||||
|
background-position: 5px center !important;
|
||||||
|
fill-opacity: 1 !important;
|
||||||
|
border: 0 !important;
|
||||||
|
box-shadow: none !important;
|
||||||
|
margin-inline-start: 2px !important;
|
||||||
|
padding-inline-start: 28px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
hbox[anonid="findbar-textbox-wrapper"]
|
||||||
|
{
|
||||||
|
background-color: var(--toolbar-field-background-color) !important;
|
||||||
|
border-radius: 16px !important;
|
||||||
|
position: relative !important;
|
||||||
|
display: flex !important;
|
||||||
|
padding: 2px !important;
|
||||||
|
transition: background-color .1s var(--ease-basic) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
hbox[anonid="findbar-textbox-wrapper"]:hover
|
||||||
|
{
|
||||||
|
background-color: var(--toolbar-field-hover-background-color) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
hbox[anonid="findbar-textbox-wrapper"]:focus-within
|
||||||
|
{
|
||||||
|
background-color: var(--toolbar-field-focus-background-color) !important;
|
||||||
|
border: 2px solid var(--toolbar-field-focus-border-color) !important;
|
||||||
|
margin: -1px !important;
|
||||||
|
padding: 1px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
hbox[anonid="findbar-textbox-wrapper"] toolbarbutton
|
||||||
|
{
|
||||||
|
border-radius: 99px !important;
|
||||||
|
border: 0 !important;
|
||||||
|
width: 24px !important;
|
||||||
|
height: 24px !important;
|
||||||
|
padding: 0 !important;
|
||||||
|
display: flex !important;
|
||||||
|
background: 0 !important;
|
||||||
|
transition: background-color .2s var(--ease-basic) !important;
|
||||||
|
margin: 0 !important;
|
||||||
|
box-shadow: none !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
hbox[anonid="findbar-textbox-wrapper"] toolbarbutton .toolbarbutton-text
|
||||||
|
{
|
||||||
|
visibility: collapse !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
hbox[anonid="findbar-textbox-wrapper"] toolbarbutton:not([disabled]):hover
|
||||||
|
{
|
||||||
|
background-color: var(--toolbarbutton-hover-background) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
hbox[anonid="findbar-textbox-wrapper"] toolbarbutton:not([disabled]):hover:active
|
||||||
|
{
|
||||||
|
background-color: var(--toolbarbutton-active-background) !important;
|
||||||
|
transition-duration: 0 !important;
|
||||||
|
}
|
3
firefox/chrome/global/circle.svg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16">
|
||||||
|
<circle fill="context-fill" fill-opacity="context-fill-opacity" cx="8" cy="8" r="8"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 177 B |
308
firefox/chrome/global/global.css
Executable file
|
@ -0,0 +1,308 @@
|
||||||
|
@media (-moz-windows-compositor)
|
||||||
|
{
|
||||||
|
@media not (-moz-os-version: windows-win7)
|
||||||
|
{
|
||||||
|
@media not (-moz-os-version: windows-win8)
|
||||||
|
{
|
||||||
|
@media (-moz-windows-default-theme)
|
||||||
|
{
|
||||||
|
:root[tabsintitlebar] .titlebar-buttonbox-container
|
||||||
|
{
|
||||||
|
height: 30px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
:root[tabsintitlebar][sizemode=normal] .titlebar-buttonbox-container
|
||||||
|
{
|
||||||
|
margin-block-start: calc(0px - (var(--space-above-tabbar) + 5px)) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
:root[tabsintitlebar][sizemode=maximized] .titlebar-buttonbox-container
|
||||||
|
{
|
||||||
|
margin-block-start: calc(2px - (var(--space-above-tabbar))) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
:root[tabsintitlebar][sizemode=maximized]:not([extradragspace]) .titlebar-buttonbox-container
|
||||||
|
{
|
||||||
|
-moz-box-align: start !important;
|
||||||
|
margin-block-start: -5px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (-moz-windows-accent-color-in-titlebar: 0)
|
||||||
|
{
|
||||||
|
:root[tabsintitlebar]:not(:-moz-lwtheme):not([privatebrowsingmode=temporary])
|
||||||
|
{
|
||||||
|
background-color: #dee1e6 !important;
|
||||||
|
color: #3c4043 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
:root[tabsintitlebar]:not(:-moz-lwtheme):not([privatebrowsingmode=temporary]):-moz-window-inactive
|
||||||
|
{
|
||||||
|
background-color: #e7eaed !important;
|
||||||
|
color: #666a6d !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#navigator-toolbox :-moz-any(toolbar, #nav-bar-customization-target):not(#toolbar-menubar)
|
||||||
|
{
|
||||||
|
-moz-box-align: center !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#navigator-toolbox :-moz-any(.toolbarbutton-1, toolbarbutton.bookmark-item:not(.subviewbutton)),
|
||||||
|
/* no ::part workaround - may have side effects */
|
||||||
|
#scrollbutton-up[part="scrollbutton-up"]:not(.menupopup-scrollbutton),
|
||||||
|
#scrollbutton-down[part="scrollbutton-down"]:not(.menupopup-scrollbutton)
|
||||||
|
{
|
||||||
|
border-radius: 99px !important;
|
||||||
|
transition-property:
|
||||||
|
background-color,
|
||||||
|
background-size,
|
||||||
|
fill-opacity !important;
|
||||||
|
transition-duration: .3s !important;
|
||||||
|
transition-timing-function:
|
||||||
|
var(--ease-basic),
|
||||||
|
var(--ease-out),
|
||||||
|
var(--ease-basic) !important;
|
||||||
|
|
||||||
|
fill: currentColor !important;
|
||||||
|
fill-opacity: 0 !important;
|
||||||
|
|
||||||
|
background-image:
|
||||||
|
url(circle.svg),
|
||||||
|
url(circle.svg) !important;
|
||||||
|
background-size: 25% !important;
|
||||||
|
background-repeat: no-repeat !important;
|
||||||
|
background-position: center !important;
|
||||||
|
background-color: transparent !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#navigator-toolbox :-moz-any(.toolbarbutton-1, toolbarbutton.bookmark-item:not(.subviewbutton)),
|
||||||
|
/* no ::part workaround - may have side effects */
|
||||||
|
#scrollbutton-up[part="scrollbutton-up"]:not(.menupopup-scrollbutton),
|
||||||
|
#scrollbutton-down[part="scrollbutton-down"]:not(.menupopup-scrollbutton)
|
||||||
|
{
|
||||||
|
font-size: 12px !important;
|
||||||
|
padding: 0 !important;
|
||||||
|
margin: 0 !important;
|
||||||
|
border: 2px solid transparent !important;
|
||||||
|
background-clip: padding-box !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#navigator-toolbox :-moz-any(.toolbarbutton-1, .scrollbutton-up, .scrollbutton-down),
|
||||||
|
/* no ::part workaround - may have side effects */
|
||||||
|
.#scrollbutton-up[part="scrollbutton-up"]:not(.menupopup-scrollbutton),
|
||||||
|
.#scrollbutton-down[part="scrollbutton-down"]:not(.menupopup-scrollbutton)
|
||||||
|
{
|
||||||
|
max-height: 32px !important;
|
||||||
|
height: 32px !important;
|
||||||
|
min-height: 32px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#navigator-toolbox :-moz-any(.toolbarbutton-1, toolbarbutton.bookmark-item:not(.subviewbutton))[disabled],
|
||||||
|
/* no ::part workaround - may have side effects */
|
||||||
|
#scrollbutton-up[part="scrollbutton-up"]:not(.menupopup-scrollbutton)[disabled],
|
||||||
|
#scrollbutton-down[part="scrollbutton-down"]:not(.menupopup-scrollbutton)[disabled]
|
||||||
|
{
|
||||||
|
opacity: .42 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#navigator-toolbox :-moz-any(.toolbarbutton-1, toolbarbutton.bookmark-item:not(.subviewbutton)):hover:not([disabled]),
|
||||||
|
#navigator-toolbox :-moz-any(.toolbarbutton-1, toolbarbutton.bookmark-item:not(.subviewbutton)):-moz-any(:hover:active, [checked], [open]):not([disabled]),
|
||||||
|
/* no ::part workaround - may have side effects */
|
||||||
|
#scrollbutton-up[part="scrollbutton-up"]:not(.menupopup-scrollbutton):hover:not([disabled]),
|
||||||
|
#scrollbutton-down[part="scrollbutton-down"]:not(.menupopup-scrollbutton):hover:not([disabled])
|
||||||
|
{
|
||||||
|
background-color: var(--toolbarbutton-hover-background) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#navigator-toolbox :-moz-any(.toolbarbutton-1, toolbarbutton.bookmark-item:not(.subviewbutton)):-moz-any(:hover:active, [checked], [open]):not([disabled]),
|
||||||
|
/* no ::part workaround - may have side effects */
|
||||||
|
#scrollbutton-up[part="scrollbutton-up"]:not(.menupopup-scrollbutton):hover:active:not([disabled]),
|
||||||
|
#scrollbutton-down[part="scrollbutton-down"]:not(.menupopup-scrollbutton):hover:active:not([disabled])
|
||||||
|
{
|
||||||
|
fill-opacity: .04 !important;
|
||||||
|
background-size: 100% !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#navigator-toolbox :-moz-any(.toolbarbutton-icon, .toolbarbutton-badge-stack),
|
||||||
|
/* no ::part workaround - may have side effects */
|
||||||
|
#scrollbutton-up[part="scrollbutton-up"]:not(.menupopup-scrollbutton) > .toolbarbutton-icon,
|
||||||
|
#scrollbutton-down[part="scrollbutton-down"]:not(.menupopup-scrollbutton) > .toolbarbutton-icon
|
||||||
|
{
|
||||||
|
fill-opacity: 1 !important;
|
||||||
|
border: 0 !important;
|
||||||
|
box-shadow: none !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#navigator-toolbox .toolbarbutton-1 > .toolbarbutton-icon
|
||||||
|
{
|
||||||
|
width: calc(2 * var(--toolbarbutton-inner-padding) + 16px) !important;
|
||||||
|
height: calc(2 * var(--toolbarbutton-inner-padding) + 16px) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#navigator-toolbox > #PersonalToolbar .toolbarbutton-1 > .toolbarbutton-icon,
|
||||||
|
#navigator-toolbox .toolbarbutton-1 > :-moz-any(.toolbarbutton-icon, .toolbarbutton-badge-stack),
|
||||||
|
/* no ::part workaround - may have side effects */
|
||||||
|
#scrollbutton-up[part="scrollbutton-up"]:not(.menupopup-scrollbutton) > .toolbarbutton-icon,
|
||||||
|
#scrollbutton-down[part="scrollbutton-down"]:not(.menupopup-scrollbutton) > .toolbarbutton-icon
|
||||||
|
{
|
||||||
|
padding: 6px !important;
|
||||||
|
background: 0 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
hack: fix customization screen popping bug when changing ui density
|
||||||
|
icon size is enforced and it doesn't like it when the normal density
|
||||||
|
nav-bar height is less than 38px (it's 36px due to smaller back icon)
|
||||||
|
*/
|
||||||
|
:root:not([uidensity=compact]) #customization-content-container
|
||||||
|
{
|
||||||
|
padding-top: 1px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
:root:not([uidensity=compact]) :-moz-any(#customization-palette-container, #customization-panel-container)
|
||||||
|
{
|
||||||
|
margin-top: -1px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.menu-iconic,
|
||||||
|
.menuitem-iconic
|
||||||
|
{
|
||||||
|
fill: currentColor !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* legacy */
|
||||||
|
#navigator-toolbox
|
||||||
|
{
|
||||||
|
border-bottom: 1px solid var(--chrome-content-separator-color, var(--toolbox-border-bottom-color)) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* legacy */
|
||||||
|
#navigator-toolbox::after
|
||||||
|
{
|
||||||
|
display: none !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pointerlockfswarning
|
||||||
|
{
|
||||||
|
display: flex !important;
|
||||||
|
border-radius: 4px !important;
|
||||||
|
padding: 6px !important;
|
||||||
|
background: #333 !important;
|
||||||
|
border: 0 !important;
|
||||||
|
font-size: 14px !important;
|
||||||
|
box-shadow:
|
||||||
|
0 3px 5px -1px rgba(0,0,0,.2),
|
||||||
|
0 6px 10px 0 rgba(0,0,0,.14),
|
||||||
|
0 1px 18px 0 rgba(0,0,0,.12) !important;
|
||||||
|
color: hsla(0,0%,100%,.87) !important;
|
||||||
|
transition-timing-function: var(--ease-out), linear !important;
|
||||||
|
transition-property: transform, top !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#fullscreen-warning
|
||||||
|
{
|
||||||
|
flex-direction: column !important;
|
||||||
|
min-width: 344px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pointerlockfswarning[hidden]
|
||||||
|
{
|
||||||
|
visibility: hidden !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* hack to keep it in same place as [ontop] */
|
||||||
|
/* probably doesn't work for single-line */
|
||||||
|
.pointerlockfswarning:not([hidden]):not([ontop])
|
||||||
|
{
|
||||||
|
top: -32px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pointerlockfswarning[ontop]
|
||||||
|
{
|
||||||
|
top: 28px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pointerlockfswarning::before
|
||||||
|
{
|
||||||
|
display: none !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pointerlockfswarning-domain-text
|
||||||
|
{
|
||||||
|
margin-block: 8px 18px !important;
|
||||||
|
margin-inline: 10px !important;
|
||||||
|
font-size: unset !important;
|
||||||
|
font-weight: unset !important;
|
||||||
|
align-self: start !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pointerlockfswarning-domain
|
||||||
|
{
|
||||||
|
font-weight: unset !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#fullscreen-exit-button
|
||||||
|
{
|
||||||
|
-moz-appearance: none !important;
|
||||||
|
border: 0 !important;
|
||||||
|
height: 32px !important;
|
||||||
|
display: flex !important;
|
||||||
|
align-items: center !important;
|
||||||
|
margin-inline: 8px 0 !important;
|
||||||
|
text-transform: uppercase !important;
|
||||||
|
font-weight: 500 !important;
|
||||||
|
letter-spacing: .0892857143em !important;
|
||||||
|
background: 0 !important;
|
||||||
|
position: relative !important;
|
||||||
|
color: var(--toolbarbutton-icon-fill-attention) !important;
|
||||||
|
align-self: end !important;
|
||||||
|
font-family: Roboto, inherit !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#fullscreen-exit-button::before
|
||||||
|
{
|
||||||
|
content: "" !important;
|
||||||
|
display: block !important;
|
||||||
|
z-index: -1 !important;
|
||||||
|
position: absolute !important;
|
||||||
|
left: 0 !important;
|
||||||
|
right: 0 !important;
|
||||||
|
top: 0 !important;
|
||||||
|
bottom: 0 !important;
|
||||||
|
border-radius: 4px !important;
|
||||||
|
background: currentColor !important;
|
||||||
|
opacity: 0 !important;
|
||||||
|
transition: opacity .3s var(--ease-basic) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#fullscreen-exit-button:hover::before
|
||||||
|
{
|
||||||
|
opacity: .12 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#fullscreen-exit-button:hover:active::before
|
||||||
|
{
|
||||||
|
opacity: .24 !important;
|
||||||
|
transition-duration: .1s !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* note: use Firefox account button instead */
|
||||||
|
#TabsToolbar .private-browsing-indicator
|
||||||
|
{
|
||||||
|
display: none !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* high DPI adjustments */
|
||||||
|
@media (min--moz-device-pixel-ratio: 2)
|
||||||
|
{
|
||||||
|
#navigator-toolbox
|
||||||
|
{
|
||||||
|
border-bottom-width: .5px !important;
|
||||||
|
padding-bottom: .5px !important;
|
||||||
|
box-shadow: inset 0 -.5px var(--toolbar-bgcolor) !important;
|
||||||
|
}
|
||||||
|
}
|
213
firefox/chrome/global/variables.css
Executable file
|
@ -0,0 +1,213 @@
|
||||||
|
/* light mode */
|
||||||
|
:root:not([style]),
|
||||||
|
:root[style*="--lwt-accent-color:rgb(227, 228, 230);"],
|
||||||
|
:root[style*="--lwt-accent-color:white;"]
|
||||||
|
{
|
||||||
|
/* accentcolor */
|
||||||
|
--lwt-accent-color: #dee1e6 !important;
|
||||||
|
|
||||||
|
/* textcolor */
|
||||||
|
--lwt-text-color: #606368 !important;
|
||||||
|
|
||||||
|
/* toolbar */
|
||||||
|
--toolbar-bgcolor: #fff !important;
|
||||||
|
|
||||||
|
/* toolbar_text */
|
||||||
|
--toolbar-color: #606368 !important;
|
||||||
|
|
||||||
|
/* toolbar_bottom_separator */
|
||||||
|
--toolbox-border-bottom-color: #b3b1b3 !important; /* legacy */
|
||||||
|
--chrome-content-separator-color: #b3b1b3 !important;
|
||||||
|
|
||||||
|
/* icons */
|
||||||
|
--lwt-toolbarbutton-icon-fill: #606368 !important;
|
||||||
|
|
||||||
|
/* icons_attention */
|
||||||
|
--lwt-toolbarbutton-icon-fill-attention: #5086ec !important;
|
||||||
|
|
||||||
|
/* button_background_hover */
|
||||||
|
--lwt-toolbarbutton-hover-background: rgba(0, 0, 0, .07) !important;
|
||||||
|
|
||||||
|
/* button_background_active */
|
||||||
|
--lwt-toolbarbutton-active-background: rgba(0, 0, 0, .11) !important;
|
||||||
|
|
||||||
|
--lwt-toolbar-field-color: #202124 !important;
|
||||||
|
|
||||||
|
/* popup_highlight */
|
||||||
|
--autocomplete-popup-highlight-background: #f2f2f2 !important;
|
||||||
|
|
||||||
|
/* popup_highlight_text */
|
||||||
|
--autocomplete-popup-highlight-color: #202124 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* don't bother with sidebar in light mode */
|
||||||
|
|
||||||
|
/* dark mode */
|
||||||
|
:root[style*="--lwt-accent-color:rgb(12, 12, 13);"],
|
||||||
|
:root[privatebrowsingmode=temporary]
|
||||||
|
{
|
||||||
|
/* accentcolor */
|
||||||
|
--lwt-accent-color: #202124 !important;
|
||||||
|
|
||||||
|
/* textcolor */
|
||||||
|
--lwt-text-color: #9ba0a5 !important;
|
||||||
|
|
||||||
|
/* toolbar */
|
||||||
|
--toolbar-bgcolor: #333639 !important;
|
||||||
|
|
||||||
|
/* toolbar_text */
|
||||||
|
--toolbar-color: #fff !important;
|
||||||
|
|
||||||
|
/* toolbar_bottom_separator */
|
||||||
|
--toolbox-border-bottom-color: #282828 !important; /* legacy */
|
||||||
|
--chrome-content-separator-color: #282828 !important;
|
||||||
|
|
||||||
|
/* icons */
|
||||||
|
--lwt-toolbarbutton-icon-fill: #fff !important;
|
||||||
|
|
||||||
|
/* icons_attention */
|
||||||
|
--lwt-toolbarbutton-icon-fill-attention: #5086ec !important;
|
||||||
|
|
||||||
|
/* button_background_hover */
|
||||||
|
--lwt-toolbarbutton-hover-background: #434649 !important;
|
||||||
|
|
||||||
|
/* button_background_active */
|
||||||
|
--lwt-toolbarbutton-active-background: #4e5153 !important;
|
||||||
|
|
||||||
|
--lwt-toolbar-field-color: #fff !important;
|
||||||
|
|
||||||
|
/* popup */
|
||||||
|
--arrowpanel-background: #373737 !important;
|
||||||
|
|
||||||
|
/* popup_text */
|
||||||
|
--arrowpanel-color: #fff !important;
|
||||||
|
--autocomplete-popup-color: #fff !important;
|
||||||
|
--panel-disabled-color: hsla(0, 0%, 100%, .5) !important;
|
||||||
|
|
||||||
|
/* popup_border */
|
||||||
|
--arrowpanel-border-color: #555 !important;
|
||||||
|
--autocomplete-popup-border-color: #555 !important;
|
||||||
|
|
||||||
|
/* popup_highlight */
|
||||||
|
--autocomplete-popup-highlight-background: #4c4f52 !important;
|
||||||
|
|
||||||
|
/* popup_highlight_text */
|
||||||
|
--autocomplete-popup-highlight-color: #fff !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
:-moz-any(#sidebar-box, #sidebar)[style*="--sidebar-background-color:rgb(56, 56, 61);"]
|
||||||
|
{
|
||||||
|
/* sidebar */
|
||||||
|
--sidebar-background-color: #333639 !important;
|
||||||
|
|
||||||
|
/* sidebar_text */
|
||||||
|
--sidebar-text-color: #f1f3ee !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
:-moz-any(.sidebar-panel, body)[style*="--lwt-sidebar-background-color:rgb(56, 56, 61);"]
|
||||||
|
{
|
||||||
|
/* sidebar */
|
||||||
|
--lwt-sidebar-background-color: #333639 !important;
|
||||||
|
|
||||||
|
/* sidebar_text */
|
||||||
|
--lwt-sidebar-text-color: #f1f3ee !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
:root
|
||||||
|
{
|
||||||
|
--ease-in: cubic-bezier(.4, 0, 1, 1);
|
||||||
|
--ease-out: cubic-bezier(0, 0, .2, 1);
|
||||||
|
--ease-basic: linear;
|
||||||
|
|
||||||
|
--button-size: 32px; /* is this used? */
|
||||||
|
--icon-size: 24px; /* is this used? */
|
||||||
|
|
||||||
|
--downloads-item-height: 48px !important;
|
||||||
|
|
||||||
|
--toolbar-non-lwt-bgcolor: var(--toolbar-bgcolor) !important;
|
||||||
|
--toolbar-non-lwt-textcolor: var(--toolbar-color) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#titlebar,
|
||||||
|
#tabbrowser-tabs
|
||||||
|
{
|
||||||
|
--tab-min-height: 34px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
@supports -moz-bool-pref("materialFox.reduceTabOverflow")
|
||||||
|
{
|
||||||
|
#tabbrowser-tabs
|
||||||
|
{
|
||||||
|
--tab-min-width: 32px !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
:root
|
||||||
|
{
|
||||||
|
--tab-separator-opacity: .35 !important;
|
||||||
|
|
||||||
|
--toolbar-field-background-color: hsl(200, 12%, 95%) !important;
|
||||||
|
--toolbar-field-hover-background-color: hsl(216, 12%, 92%) !important;
|
||||||
|
--toolbar-field-focus-background-color: hsl(0, 0%, 100%) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
:root:-moz-any(:-moz-lwtheme-brighttext, [privatebrowsingmode=temporary])
|
||||||
|
{
|
||||||
|
--toolbar-field-background-color: #202124 !important;
|
||||||
|
--toolbar-field-hover-background-color: #292a2d !important;
|
||||||
|
--toolbar-field-focus-background-color: #202124 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
:root:not(:-moz-lwtheme):not([privatebrowsingmode=temporary])
|
||||||
|
{
|
||||||
|
--toolbar-bgcolor: hsl(0, 0%, 100%) !important;
|
||||||
|
--toolbar-color: hsl(213, 5%, 39%) !important;
|
||||||
|
--toolbox-border-bottom-color: hsl(0, 0%, 70%) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (-moz-mac-yosemite-theme)
|
||||||
|
{
|
||||||
|
:root[extradragspace]
|
||||||
|
{
|
||||||
|
--space-above-tabbar: 8px !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Ubuntu */
|
||||||
|
@media (-moz-gtk-csd-available)
|
||||||
|
{
|
||||||
|
:root:not(:-moz-lwtheme):not([privatebrowsingmode=temporary])
|
||||||
|
{
|
||||||
|
--toolbar-bgcolor: -moz-dialog !important;
|
||||||
|
--toolbar-color: -moz-dialogtext !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
:root:-moz-lwtheme-darktext,
|
||||||
|
:root toolbar:not([brighttext]),
|
||||||
|
.tabbrowser-tab[visuallyselected]
|
||||||
|
{
|
||||||
|
--toolbarbutton-hover-background: var(--lwt-toolbarbutton-hover-background, hsla(0, 0%, 0%, .07)) !important;
|
||||||
|
--toolbarbutton-active-background: var(--lwt-toolbarbutton-active-background, hsla(0, 0%, 0%, .11)) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
:root:-moz-lwtheme-brighttext,
|
||||||
|
:root toolbar[brighttext],
|
||||||
|
.tabbrowser-tab[visuallyselected]:-moz-lwtheme-brighttext
|
||||||
|
{
|
||||||
|
--toolbarbutton-hover-background: var(--lwt-toolbarbutton-hover-background, hsla(0, 0%, 100%, .1)) !important;
|
||||||
|
--toolbarbutton-active-background: var(--lwt-toolbarbutton-active-background, hsla(0, 0%, 100%, .17)) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* special case for urlbar buttons */
|
||||||
|
:-moz-any(#urlbar, #searchbar)
|
||||||
|
{
|
||||||
|
--toolbarbutton-hover-background: hsl(210, 5%, 85%) !important;
|
||||||
|
--toolbarbutton-active-background: hsl(210, 4%, 80%) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
:root:-moz-any([privatebrowsingmode=temporary], :-moz-lwtheme-brighttext) :-moz-any(#urlbar, #searchbar)
|
||||||
|
{
|
||||||
|
--toolbarbutton-hover-background: hsl(206, 5%, 26%) !important;
|
||||||
|
--toolbarbutton-active-background: hsl(210, 4%, 31%) !important;
|
||||||
|
}
|
3
firefox/chrome/icons/addons.svg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 22 22">
|
||||||
|
<path fill="context-fill" fill-opacity="context-fill-opacity" transform="translate(-1 -1)" d="M20.5 11H19V7c0-1.1-.9-2-2-2h-4V3.5C13 2.12 11.88 1 10.5 1S8 2.12 8 3.5V5H4c-1.1 0-1.99.9-1.99 2v3.8H3.5c1.49 0 2.7 1.21 2.7 2.7s-1.21 2.7-2.7 2.7H2V20c0 1.1.9 2 2 2h3.8v-1.5c0-1.49 1.21-2.7 2.7-2.7 1.49 0 2.7 1.21 2.7 2.7V22H17c1.1 0 2-.9 2-2v-4h1.5c1.38 0 2.5-1.12 2.5-2.5S21.88 11 20.5 11z"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 484 B |
3
firefox/chrome/icons/arrow-back-1x.svg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16">
|
||||||
|
<path fill="context-fill" stroke-opacity="context-fill-opacity" d="M8,1A1,1,0,1,1,7,2,1,1,0,0,1,8,1ZM2,7A1,1,0,1,1,1,8,1,1,0,0,1,2,7ZM14,7a1,1,0,1,1-1,1A1,1,0,0,1,14,7ZM8,13a1,1,0,1,1-1,1A1,1,0,0,1,8,13Zm0.723,0.309L7.309,14.723l-6-6L2.723,7.309Zm-6-4.586L1.309,7.309l6-6L8.723,2.723Zm-0.707.293v-2h12v2h-12Z"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 417 B |
8
firefox/chrome/icons/arrow-back-2x.svg
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
<svg
|
||||||
|
version="1.1" xmlns="http://www.w3.org/2000/svg"
|
||||||
|
width="16" height="16" viewBox="0 0 16 16"
|
||||||
|
fill="none" stroke-opacity="context-fill-opacity" stroke="context-fill" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"
|
||||||
|
>
|
||||||
|
<path d="M2.25,7.75h11.5"/>
|
||||||
|
<path d="M7.75,13.25l-5.5-5.5,5.5-5.5"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 318 B |
3
firefox/chrome/icons/audio-muted.svg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16">
|
||||||
|
<path fill="context-fill" fill-opacity="context-fill-opacity" d="M11,9.143V5.5h1v4.639ZM9,7.149V6.5h1V8.146ZM6.672,4.828L8,3.5V6.153Zm-3.96-2.11,9.531,9.5-0.509.494L8,8.985V12.5l-3-3H3v-3H5l0.255-.255L2.218,3.212l0.5-.5h0Z"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 317 B |
3
firefox/chrome/icons/audio.svg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16">
|
||||||
|
<path fill="context-fill" fill-opacity="context-fill-opacity" d="M11,10.5v-5h1v5H11Zm-2-4h1v3H9v-3Zm-6,3v-3H5l3-3v9l-3-3H3Z"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 218 B |
3
firefox/chrome/icons/bookmark.svg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16">
|
||||||
|
<path fill="context-fill" fill-opacity="context-fill-opacity" d="M13,12.091V4.5l-0.056-.056a3,3,0,0,0-2.388-2.388L10.5,2H5A2,2,0,0,1,7,0h6a2,2,0,0,1,2,2V13ZM12,5V16L7,13.5,2,16V5A2,2,0,0,1,4,3h6A2,2,0,0,1,12,5Z"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 305 B |
3
firefox/chrome/icons/bug.svg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16">
|
||||||
|
<path fill="context-fill" fill-opacity="context-fill-opacity" d="M15,13.47H12.32a5,5,0,0,1-8.66,0H1v-2H3c0-.16,0-.33,0-.49V10H1V8H3V7a5,5,0,0,1,0-.51H1v-2H3.68A5,5,0,0,1,5,2.94l-1.5-1.5L5,0l2,2a5,5,0,0,1,2,0l2-2,1.41,1.41L10.95,2.95a5,5,0,0,1,1.36,1.52H15v2H13A5,5,0,0,1,13,7V8h2v2H13v1c0,.17,0,.33,0,.49h2Zm-5.51-7h-3V8h3Zm0,3.49h-3v1.5h3Z"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 435 B |
3
firefox/chrome/icons/close.svg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24">
|
||||||
|
<path fill="context-fill" fill-opacity="context-fill-opacity" d="M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 265 B |
3
firefox/chrome/icons/copy.svg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16">
|
||||||
|
<path fill="context-fill" fill-opacity="context-fill-opacity" d="M13.5,16h-8A1.5,1.5,0,0,1,4,14.5V4.5A1.5,1.5,0,0,1,5.5,3h8A1.5,1.5,0,0,1,15,4.5v10A1.5,1.5,0,0,1,13.5,16Zm0-11.5h-8v10h8Zm-11-3v10H1V1.5A1.5,1.5,0,0,1,2.5,0H11V1.5Z"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 324 B |
3
firefox/chrome/icons/cut.svg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16">
|
||||||
|
<path fill="context-fill" fill-opacity="context-fill-opacity" d="M6.11,4.51A3.12,3.12,0,0,0,6.4,3.2,3.2,3.2,0,1,0,3.2,6.4a3.12,3.12,0,0,0,1.31-.29L6.4,8,4.51,9.89A3.12,3.12,0,0,0,3.2,9.6a3.2,3.2,0,1,0,3.2,3.2,3.12,3.12,0,0,0-.29-1.31L8,9.6,13.4,15H16v-.6Zm-3,.24A1.62,1.62,0,1,1,4.75,3.13,1.62,1.62,0,0,1,3.13,4.75Zm0,9.74a1.62,1.62,0,1,1,1.62-1.62A1.62,1.62,0,0,1,3.13,14.49ZM8,8.49A.49.49,0,1,1,8.49,8,.49.49,0,0,1,8,8.49ZM13.41,1,8.8,5.6l1.6,1.6L16,1.6V1Z"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 554 B |
3
firefox/chrome/icons/developer.svg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 20 20">
|
||||||
|
<path fill="context-fill" fill-opacity="context-fill-opacity" transform="translate(-2 -2)" d="M9.4 16.6L4.8 12l4.6-4.6L8 6l-6 6 6 6 1.4-1.4zm5.2 0l4.6-4.6-4.6-4.6L16 6l6 6-6 6-1.4-1.4z"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 282 B |
3
firefox/chrome/icons/email.svg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16">
|
||||||
|
<path fill="context-fill" fill-opacity="context-fill-opacity" d="M14.5,14.5H1.5A1.5,1.5,0,0,1,0,13V3A1.5,1.5,0,0,1,1.5,1.5h13A1.5,1.5,0,0,1,16,3V13A1.5,1.5,0,0,1,14.5,14.5Zm0-11.25L8,7.25l-6.5-4V5L8,9l6.5-4Z"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 302 B |
3
firefox/chrome/icons/folder.svg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16">
|
||||||
|
<path fill="context-fill" fill-opacity="context-fill-opacity" d="M1.5,2H6L8,4h6.5A1.5,1.5,0,0,1,16,5.5v8A1.5,1.5,0,0,1,14.5,15H1.5A1.5,1.5,0,0,1,0,13.5V3.5A1.5,1.5,0,0,1,1.5,2Z"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 251 B |
3
firefox/chrome/icons/forget.svg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16">
|
||||||
|
<path fill="context-fill" fill-opacity="context-fill-opacity" d="M13.4,9.92A4.915,4.915,0,0,0,13.8,8,5.058,5.058,0,0,0,8.735,2.946a4.958,4.958,0,0,0-1.913.4L5.741,2.261A6.357,6.357,0,0,1,8.735,1.5,6.508,6.508,0,0,1,15.251,8a6.309,6.309,0,0,1-.77,3Zm2.476,4.1-0.884.884L12.98,12.893a6.469,6.469,0,0,1-8.851-.3l1.028-1.025a5.018,5.018,0,0,0,6.8.3l-7.1-7.1A5,5,0,0,0,3.666,8H5.838L2.913,10.91l-0.051-.1L0.046,8H2.218A6.433,6.433,0,0,1,3.84,3.752L1.214,1.126,2.1,0.242Z"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 563 B |
3
firefox/chrome/icons/globe.svg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16">
|
||||||
|
<path fill="context-fill" fill-opacity="context-fill-opacity" d="M12.72,12.31A1.61,1.61,0,0,0,11.2,11.2h-.71V8.8a.8.8,0,0,0-.8-.8H5V6.49H6.21a.8.8,0,0,0,.8-.8V4H8.8a1.6,1.6,0,0,0,1.6-1.6V2.07a6.39,6.39,0,0,1,2.32,10.24m-5.52,2A6.39,6.39,0,0,1,1.6,8a6,6,0,0,1,.17-1.43L5.6,10.4v.8a1.6,1.6,0,0,0,1.6,1.6M8,0a8,8,0,1,0,8,8A8,8,0,0,0,8,0Z"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 409 B |
3
firefox/chrome/icons/history.svg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 22 22">
|
||||||
|
<path fill="context-fill" fill-opacity="context-fill-opacity" transform="translate(-1 -1)" d="M13 3c-4.97 0-9 4.03-9 9H1l3.89 3.89.07.14L9 12H6c0-3.87 3.13-7 7-7s7 3.13 7 7-3.13 7-7 7c-1.93 0-3.68-.79-4.94-2.06l-1.42 1.42C8.27 19.99 10.51 21 13 21c4.97 0 9-4.03 9-9s-4.03-9-9-9zm-1 5v5l4.28 2.54.72-1.21-3.5-2.08V8H12z"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 416 B |
3
firefox/chrome/icons/home-1x.svg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16">
|
||||||
|
<path fill="none" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" stroke="context-fill" stroke-opacity="context-fill-opacity" d="M15,8L13,6v9H3V6L1,8,8,1l7,7"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 268 B |
3
firefox/chrome/icons/home-2x.svg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16">
|
||||||
|
<path fill="context-fill" fill-opacity="context-fill-opacity" d="M14.5,8.25a0.75,0.75,0,0,1-1.28.53h0L13,8.57V13.5a1,1,0,0,1-1,1H4a1,1,0,0,1-1-1V8.57l-0.219.211h0A0.75,0.75,0,1,1,1.72,7.72h0l5.75-5.844h0a0.749,0.749,0,0,1,1.058,0h0l5.75,5.844h0A0.747,0.747,0,0,1,14.5,8.25ZM4.5,13h7V7.124L8,3.75,4.5,7.124V13Z"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 404 B |
7
firefox/chrome/icons/hyperlink.svg
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16">
|
||||||
|
<g fill="none" stroke="context-fill" stroke-opacity="context-fill-opacity" stroke-miterlimit="10" stroke-width="2">
|
||||||
|
<path d="M9,11h3a3,3,0,0,0,0-6H9"/>
|
||||||
|
<path d="M7,11H4A3,3,0,0,1,4,5H7"/>
|
||||||
|
<line x1="5" y1="8" x2="11" y2="8"/>
|
||||||
|
</g>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 328 B |
327
firefox/chrome/icons/icons.css
Executable file
|
@ -0,0 +1,327 @@
|
||||||
|
.toolbarbutton-1:-moz-any(#back-button, #forward-button),
|
||||||
|
#context-back,
|
||||||
|
#context-forward,
|
||||||
|
.subviewbutton-back,
|
||||||
|
.identity-popup-expander
|
||||||
|
{
|
||||||
|
list-style-image: url(arrow-back-1x.svg) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#PanelUI-menu-button
|
||||||
|
{
|
||||||
|
list-style-image: url(menu.svg) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#PanelUI-menu-button[badge-status|="update"]
|
||||||
|
{
|
||||||
|
list-style-image: url(menu-update.svg) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#reload-button,
|
||||||
|
#context-reload
|
||||||
|
{
|
||||||
|
list-style-image: url(refresh-1x.svg) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#stop-button
|
||||||
|
{
|
||||||
|
list-style-image: url(stop-1x.svg) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.toolbarbutton-1#forward-button,
|
||||||
|
#context-forward
|
||||||
|
{
|
||||||
|
transform: scaleX(-1) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#home-button
|
||||||
|
{
|
||||||
|
list-style-image: url(home-1x.svg) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#star-button,
|
||||||
|
#context-bookmarkpage,
|
||||||
|
#pageAction-panel-bookmark,
|
||||||
|
#panelMenuBookmarkThisPage
|
||||||
|
{
|
||||||
|
list-style-image: url(star-1x.svg) !important;
|
||||||
|
fill-opacity: 0 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#star-button[starred],
|
||||||
|
#tracking-protection-icon-box[active]
|
||||||
|
{
|
||||||
|
fill: var(--toolbarbutton-icon-fill-attention) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#star-button[starred],
|
||||||
|
#context-bookmarkpage[starred],
|
||||||
|
#panelMenuBookmarkThisPage
|
||||||
|
{
|
||||||
|
fill-opacity: 1 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#bookmarks-menu-button,
|
||||||
|
#appMenu-library-bookmarks-button,
|
||||||
|
#panelMenu_toggleBookmarksMenu
|
||||||
|
{
|
||||||
|
list-style-image: url(bookmark.svg) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#library-button,
|
||||||
|
#appMenu-library-button
|
||||||
|
{
|
||||||
|
list-style-image: url(library-1x.svg) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#preferences-button,
|
||||||
|
#appMenu-preferences-button,
|
||||||
|
.identity-popup-preferences-button,
|
||||||
|
#urlbar-anon-search-settings-compact .button-icon
|
||||||
|
{
|
||||||
|
list-style-image: url(settings.svg) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#history-panelmenu,
|
||||||
|
#appMenu-library-history-button
|
||||||
|
{
|
||||||
|
list-style-image: url(history.svg) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#appMenu-logins-button,
|
||||||
|
richlistitem[originaltype="loginWithOrigin"] .ac-site-icon,
|
||||||
|
richlistitem[originaltype="loginsFooter"] .ac-site-icon
|
||||||
|
{
|
||||||
|
list-style-image: url(key.svg) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.subviewbutton[type="highlight-history"]::after
|
||||||
|
{
|
||||||
|
content: url(history.svg) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#panic-button
|
||||||
|
{
|
||||||
|
list-style-image: url(forget.svg) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#developer-button
|
||||||
|
{
|
||||||
|
list-style-image: url(developer.svg) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#add-ons-button,
|
||||||
|
#appMenu-addons-button
|
||||||
|
{
|
||||||
|
list-style-image: url(addons.svg) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#email-link-button,
|
||||||
|
#pageAction-panel-emailLink
|
||||||
|
{
|
||||||
|
list-style-image: url(email.svg) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#pageAction-panel-shareURL
|
||||||
|
{
|
||||||
|
list-style-image: url(share.svg) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#pageAction-panel-copyURL
|
||||||
|
{
|
||||||
|
list-style-image: url(hyperlink.svg) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#pageAction-panel-webcompat-reporter_mozilla_org
|
||||||
|
{
|
||||||
|
list-style-image: url(bug.svg) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#pageAction-panel-webcompat-reporter_mozilla_org > .toolbarbutton-icon
|
||||||
|
{
|
||||||
|
list-style-image: inherit !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#screenshots_mozilla_org-menuitem-_create-screenshot .menu-iconic-left
|
||||||
|
{
|
||||||
|
background-image: url(screenshot.svg) !important;
|
||||||
|
background-position: 4px center !important;
|
||||||
|
background-repeat: no-repeat !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#screenshots_mozilla_org-menuitem-_create-screenshot .menu-iconic-icon
|
||||||
|
{
|
||||||
|
visibility: hidden !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#tabs-newtab-button,
|
||||||
|
#new-tab-button
|
||||||
|
{
|
||||||
|
list-style-image: url(new-tab.svg) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#fxa-avatar-image
|
||||||
|
{
|
||||||
|
/* icon should be 20px, but we don't want to affect button size */
|
||||||
|
transform: scale(1.25) !important;
|
||||||
|
border-radius: 50% !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
:root:not([fxastatus=signedin]) #fxa-avatar-image
|
||||||
|
{
|
||||||
|
list-style-image: url(profile-inactive.svg) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
:root[fxastatus=signedin]:not([style*="--avatar-image-url"]) #fxa-avatar-image
|
||||||
|
{
|
||||||
|
list-style-image: url(profile.svg) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
:root[privatebrowsingmode] #fxa-avatar-image
|
||||||
|
{
|
||||||
|
list-style-image: url(incognito.svg) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#tracking-protection-icon
|
||||||
|
{
|
||||||
|
list-style-image: url(tracking-protection.svg) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#pageActionButton
|
||||||
|
{
|
||||||
|
list-style-image: url(menu.svg) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#urlbar[pageproxystate="invalid"] #identity-icon,
|
||||||
|
.searchbar-search-icon,
|
||||||
|
#PopupAutoCompleteRichResult .ac-type-icon[type="keyword"],
|
||||||
|
#PopupAutoCompleteRichResult .ac-site-icon[type="searchengine"],
|
||||||
|
#appMenu-find-button,
|
||||||
|
#panelMenu_searchBookmarks
|
||||||
|
{
|
||||||
|
list-style-image: url(search.svg) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#appMenu-cut-button
|
||||||
|
{
|
||||||
|
list-style-image: url(cut.svg) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#appMenu-copy-button
|
||||||
|
{
|
||||||
|
list-style-image: url(copy.svg) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#appMenu-paste-button
|
||||||
|
{
|
||||||
|
list-style-image: url(paste.svg) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#appMenu-fxa-label,
|
||||||
|
#PanelUI-fxa-menu-syncnow-button,
|
||||||
|
#appMenu-fxa-icon,
|
||||||
|
#PanelUI-remotetabs-syncnow
|
||||||
|
{
|
||||||
|
list-style-image: url(sync.svg) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tab-icon-image:not([src])
|
||||||
|
{
|
||||||
|
list-style-image: url(globe.svg) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tab-icon-image[src="chrome://browser/skin/settings.svg"]
|
||||||
|
{
|
||||||
|
display: none !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tab-icon-image[src="chrome://browser/skin/settings.svg"] ~ .tab-icon-overlay
|
||||||
|
{
|
||||||
|
display: -moz-box !important;
|
||||||
|
margin: 0 !important;
|
||||||
|
list-style-image: url(settings.svg) !important;
|
||||||
|
-moz-context-properties: fill, fill-opacity !important;
|
||||||
|
fill: currentColor !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tab-icon-overlay[soundplaying],
|
||||||
|
.tab-icon-sound
|
||||||
|
{
|
||||||
|
list-style-image: url(audio.svg) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tab-icon-overlay[muted],
|
||||||
|
.tab-icon-sound[muted]
|
||||||
|
{
|
||||||
|
list-style-image: url(audio-muted.svg) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tab-icon-overlay[activemedia-blocked],
|
||||||
|
.tab-icon-sound[activemedia-blocked]
|
||||||
|
{
|
||||||
|
list-style-image: url(media-blocked.svg) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.downloadIconShow .button-icon
|
||||||
|
{
|
||||||
|
list-style-image: url(folder.svg) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.panel-banner-item[notificationid^="update"]
|
||||||
|
{
|
||||||
|
list-style-image: url(menu-update.svg) !important;
|
||||||
|
-moz-context-properties: fill, fill-opacity !important;
|
||||||
|
fill: currentColor !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* high DPI adjustments */
|
||||||
|
@media (min--moz-device-pixel-ratio: 2)
|
||||||
|
{
|
||||||
|
.toolbarbutton-1:-moz-any(#back-button, #forward-button),
|
||||||
|
#context-back,
|
||||||
|
#context-forward,
|
||||||
|
.subviewbutton-back,
|
||||||
|
.identity-popup-expander
|
||||||
|
{
|
||||||
|
list-style-image: url(arrow-back-2x.svg) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#PanelUI-menu-button:not([badge-status|="update"]) .toolbarbutton-icon
|
||||||
|
{
|
||||||
|
transform: translate(-.5px, -.5px) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#stop-button
|
||||||
|
{
|
||||||
|
list-style-image: url(stop-2x.svg) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#reload-button,
|
||||||
|
#context-reload
|
||||||
|
{
|
||||||
|
list-style-image: url(refresh-2x.svg) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#home-button
|
||||||
|
{
|
||||||
|
list-style-image: url(home-2x.svg) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#star-button,
|
||||||
|
#context-bookmarkpage,
|
||||||
|
#pageAction-panel-bookmark,
|
||||||
|
#panelMenuBookmarkThisPage
|
||||||
|
{
|
||||||
|
list-style-image: url(star-2x.svg) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#bookmarks-menu-button .toolbarbutton-icon
|
||||||
|
{
|
||||||
|
transform: translateX(.5px) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#library-button
|
||||||
|
{
|
||||||
|
list-style-image: url(library-2x.svg) !important;
|
||||||
|
}
|
||||||
|
}
|
9
firefox/chrome/icons/incognito.svg
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20">
|
||||||
|
<defs>
|
||||||
|
<mask id="cutout">
|
||||||
|
<rect fill="#fff" width="100%" height="100%"/>
|
||||||
|
<path transform="translate(2 2)" fill="#000" d="M1,8L4.25,6.25h7.5L15,8H1ZM4.75,4.75l1-3L8,2.75l2.25-1,1,3H4.75ZM4.875,9.5a2.367,2.367,0,0,1,2.249,1.645A3.755,3.755,0,0,1,8,11a3.755,3.755,0,0,1,.876.145,2.374,2.374,0,1,1-.1,1.04c-0.286-.045-0.622-0.1-0.78-0.141C8.106,12.018,8.131,12,8,12s-0.106.018,0,.044c-0.158.039-.493,0.1-0.78,0.141A2.37,2.37,0,1,1,4.875,9.5Zm6.25,3.75A1.375,1.375,0,1,0,9.75,11.875,1.375,1.375,0,0,0,11.125,13.25Zm-6.25,0A1.375,1.375,0,1,0,3.5,11.875,1.375,1.375,0,0,0,4.875,13.25ZM8,12.044H8Z"/>
|
||||||
|
</mask>
|
||||||
|
</defs>
|
||||||
|
<circle mask="url(#cutout)" fill="context-fill" cx="10" cy="10" r="10"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 799 B |
3
firefox/chrome/icons/key.svg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16">
|
||||||
|
<path fill="context-fill" fill-opacity="context-fill-opacity" d="M8.47,6.48a4.36,4.36,0,1,0,0,2.91l3,0v3h3v-3H16v-3ZM4.36,9.39A1.45,1.45,0,1,1,5.82,7.93,1.46,1.46,0,0,1,4.36,9.39Z"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 275 B |
3
firefox/chrome/icons/library-1x.svg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16">
|
||||||
|
<path fill="context-fill" fill-opacity="context-fill-opacity" d="M14.5,12h-9A1.5,1.5,0,0,1,4,10.5v-9A1.5,1.5,0,0,1,5.5,0h9A1.5,1.5,0,0,1,16,1.5v9A1.5,1.5,0,0,1,14.5,12ZM14,2H10V8l2-1,2,1V2ZM13,16H1.5A1.5,1.5,0,0,1,0,14.5V3H2V14H13v2Z"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 328 B |
3
firefox/chrome/icons/library-2x.svg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16">
|
||||||
|
<path fill="context-fill" fill-opacity="context-fill-opacity" d="M14,12.5H5A1.5,1.5,0,0,1,3.5,11V2A1.5,1.5,0,0,1,5,.5h9A1.5,1.5,0,0,1,15.5,2v9A1.5,1.5,0,0,1,14,12.5ZM14,2H10.25V8l1.871-1L14,8V2ZM12.5,15.5H2A1.5,1.5,0,0,1,.5,14V3.5H2V14H12.5v1.5Z"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 340 B |
3
firefox/chrome/icons/media-blocked.svg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16">
|
||||||
|
<path fill="context-fill" fill-opacity="context-fill-opacity" d="M5.886,4.045L12,7.484,10.363,8.508ZM2.711,2.718l9.531,9.5-0.509.494L8.616,9.6,4,12.484V4.991L2.218,3.212l0.5-.5h0Zm9.537,9.495h0Z"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 289 B |
3
firefox/chrome/icons/menu-update.svg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16">
|
||||||
|
<path fill-rule="evenodd" fill="context-fill" stroke-opacity="context-fill-opacity" d="M8,0A8,8,0,1,1,0,8,8,8,0,0,1,8,0ZM6,9h4v3H6V9ZM8,4l4,5H4Z"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 253 B |
3
firefox/chrome/icons/menu.svg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16">
|
||||||
|
<path fill="context-fill" fill-opacity="context-fill-opacity" d="M8.5,2A1.5,1.5,0,1,1,7,3.5,1.5,1.5,0,0,1,8.5,2Zm0,5A1.5,1.5,0,1,1,7,8.5,1.5,1.5,0,0,1,8.5,7Zm0,5A1.5,1.5,0,1,1,7,13.5,1.5,1.5,0,0,1,8.5,12Z"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 303 B |
3
firefox/chrome/icons/new-tab.svg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16">
|
||||||
|
<path fill="context-fill" fill-opacity="context-fill-opacity" d="M8,2A1,1,0,0,1,9,3V13a1,1,0,0,1-2,0V3A1,1,0,0,1,8,2ZM3,7H13a1,1,0,0,1,0,2H3A1,1,0,0,1,3,7Z"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 250 B |
3
firefox/chrome/icons/paste.svg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16">
|
||||||
|
<path fill="context-fill" fill-opacity="context-fill-opacity" d="M13,1.5H10.29a2.5,2.5,0,0,0-4.58,0H3A1.5,1.5,0,0,0,1.5,3V14.5A1.5,1.5,0,0,0,3,16H13a1.5,1.5,0,0,0,1.5-1.5V3A1.5,1.5,0,0,0,13,1.5Zm-5,0a1,1,0,1,1-1,1A1,1,0,0,1,8,1.5Zm5,13H3V3H4.5V5h7V3H13Z"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 348 B |
4
firefox/chrome/icons/profile-inactive.svg
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20">
|
||||||
|
<rect fill="#e1e1e1" width="100%" height="100%"/>
|
||||||
|
<path fill="#a3a3a3" d="M16,13.833a7.113,7.113,0,0,1-12,0V13.75c0-1.5,3.5-3,6-3s6,1.5,6,3v0.082ZM13,6a3,3,0,1,1-3-3A3,3,0,0,1,13,6Z"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 297 B |
9
firefox/chrome/icons/profile.svg
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20">
|
||||||
|
<defs>
|
||||||
|
<mask id="cutout">
|
||||||
|
<rect fill="#fff" width="100%" height="100%"/>
|
||||||
|
<path fill="#000" d="M16,13.833a7.113,7.113,0,0,1-12,0V13.75c0-1.5,3.5-3,6-3s6,1.5,6,3v0.082ZM13,6a3,3,0,1,1-3-3A3,3,0,0,1,13,6Z"/>
|
||||||
|
</mask>
|
||||||
|
</defs>
|
||||||
|
<rect mask="url(#cutout)" fill="context-fill" width="100%" height="100%"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 449 B |
16
firefox/chrome/icons/refresh-1x.svg
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
<svg
|
||||||
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
width="16" height="16" viewBox="0 0 16 16"
|
||||||
|
fill-rule="evenodd"
|
||||||
|
>
|
||||||
|
<path
|
||||||
|
fill="none"
|
||||||
|
stroke-opacity="context-fill-opacity" stroke="context-fill" stroke-linecap="round" stroke-width="2"
|
||||||
|
d="M13.719,10.25A5.881,5.881,0,0,1,8,14,6,6,0,1,1,12.243,3.757"
|
||||||
|
/>
|
||||||
|
<path
|
||||||
|
fill-opacity="context-fill-opacity"
|
||||||
|
fill="context-fill"
|
||||||
|
d="M15,1V7H9Z"
|
||||||
|
/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 396 B |
16
firefox/chrome/icons/refresh-2x.svg
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
<svg
|
||||||
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
width="16" height="16" viewBox="0 0 16 16"
|
||||||
|
fill-rule="evenodd"
|
||||||
|
>
|
||||||
|
<path
|
||||||
|
fill="none"
|
||||||
|
stroke-opacity="context-fill-opacity" stroke="context-fill" stroke-linecap="round" stroke-width="1.5"
|
||||||
|
d="M13.292,10.25a5.752,5.752,0,1,1-.261-5.031"
|
||||||
|
/>
|
||||||
|
<path
|
||||||
|
fill-opacity="context-fill-opacity"
|
||||||
|
fill="context-fill"
|
||||||
|
d="M15,1.5V7H9.5Z"
|
||||||
|
/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 385 B |
3
firefox/chrome/icons/screenshot.svg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16">
|
||||||
|
<path fill="context-fill" fill-opacity="context-fill-opacity" d="M14.5,15H1.5A1.5,1.5,0,0,1,0,13.5V3.5A1.5,1.5,0,0,1,1.5,2h13A1.5,1.5,0,0,1,16,3.5v10A1.5,1.5,0,0,1,14.5,15Zm0-11.5H1.5v10h13ZM9,10.5h1.5V12H9Zm0-3A1.5,1.5,0,0,1,10.5,9H9Zm-3,0H7.5V9H6Zm-3,0H4.5V9H3Z"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 358 B |
10
firefox/chrome/icons/search.svg
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
<svg
|
||||||
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
width="16" height="16" viewBox="0 0 16 16"
|
||||||
|
>
|
||||||
|
<path
|
||||||
|
fill-opacity="context-fill-opacity"
|
||||||
|
fill="context-fill"
|
||||||
|
d="M10,9.5l0.75,0.25L14,13l-1,1L9.75,10.75,9.5,10,9.408,9.908a4.549,4.549,0,1,1,.5-0.5ZM6.5,3.25A3.25,3.25,0,1,0,9.75,6.5,3.25,3.25,0,0,0,6.5,3.25Z"
|
||||||
|
/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 345 B |
3
firefox/chrome/icons/settings.svg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16">
|
||||||
|
<path fill="context-fill" fill-opacity="context-fill-opacity" transform="translate(-2 -2)" d="M15.95 10.78c.03-.25.05-.51.05-.78s-.02-.53-.06-.78l1.69-1.32c.15-.12.19-.34.1-.51l-1.6-2.77c-.1-.18-.31-.24-.49-.18l-1.99.8c-.42-.32-.86-.58-1.35-.78L12 2.34c-.03-.2-.2-.34-.4-.34H8.4c-.2 0-.36.14-.39.34l-.3 2.12c-.49.2-.94.47-1.35.78l-1.99-.8c-.18-.07-.39 0-.49.18l-1.6 2.77c-.1.18-.06.39.1.51l1.69 1.32c-.04.25-.07.52-.07.78s.02.53.06.78L2.37 12.1c-.15.12-.19.34-.1.51l1.6 2.77c.1.18.31.24.49.18l1.99-.8c.42.32.86.58 1.35.78l.3 2.12c.04.2.2.34.4.34h3.2c.2 0 .37-.14.39-.34l.3-2.12c.49-.2.94-.47 1.35-.78l1.99.8c.18.07.39 0 .49-.18l1.6-2.77c.1-.18.06-.39-.1-.51l-1.67-1.32zM10 13c-1.65 0-3-1.35-3-3s1.35-3 3-3 3 1.35 3 3-1.35 3-3 3z"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 826 B |
3
firefox/chrome/icons/share.svg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 20 20">
|
||||||
|
<path fill="context-fill" fill-opacity="context-fill-opacity" transform="translate(-2 -2)" d="M18 16.08c-.76 0-1.44.3-1.96.77L8.91 12.7c.05-.23.09-.46.09-.7s-.04-.47-.09-.7l7.05-4.11c.54.5 1.25.81 2.04.81 1.66 0 3-1.34 3-3s-1.34-3-3-3-3 1.34-3 3c0 .24.04.47.09.7L8.04 9.81C7.5 9.31 6.79 9 6 9c-1.66 0-3 1.34-3 3s1.34 3 3 3c.79 0 1.5-.31 2.04-.81l7.12 4.16c-.05.21-.08.43-.08.65 0 1.61 1.31 2.92 2.92 2.92 1.61 0 2.92-1.31 2.92-2.92s-1.31-2.92-2.92-2.92z"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 551 B |
3
firefox/chrome/icons/star-1x.svg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16">
|
||||||
|
<path stroke-width="1.5" fill-rule="evenodd" fill="context-fill" fill-opacity="context-fill-opacity" stroke="context-fill" d="M6,5.547L7.5,1.688,9,5.547l4.25,0.531L10.094,8.75,11,13,7.5,10.75,4,13,4.906,8.75,1.75,6.094Z"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 315 B |
3
firefox/chrome/icons/star-2x.svg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16">
|
||||||
|
<path stroke-width="1.5" fill-rule="evenodd" fill="context-fill" fill-opacity="context-fill-opacity" stroke="context-fill" d="M6,5.547L7.5,1.688,9,5.547l4.25,0.531L10.094,8.75,11,13,7.5,10.75,4,13,4.906,8.75,1.75,6.094Z" transform="translate(.5 .5)"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 344 B |
8
firefox/chrome/icons/stop-1x.svg
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
<svg
|
||||||
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
width="16" height="16" viewBox="0 0 16 16"
|
||||||
|
fill="none" stroke="context-fill" stroke-opacity="context-fill-opacity" stroke-linecap="round" stroke-width="2"
|
||||||
|
>
|
||||||
|
<path d="M3,13L13,3"/>
|
||||||
|
<path d="M13,13L3,3"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 256 B |
8
firefox/chrome/icons/stop-2x.svg
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
<svg
|
||||||
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
width="16" height="16" viewBox="0 0 16 16"
|
||||||
|
fill="none" stroke="context-fill" stroke-opacity="context-fill-opacity" stroke-linecap="round" stroke-width="1.5"
|
||||||
|
>
|
||||||
|
<path d="M3,13L13,3"/>
|
||||||
|
<path d="M13,13L3,3"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 258 B |
3
firefox/chrome/icons/sync.svg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16">
|
||||||
|
<path fill="context-fill" fill-opacity="context-fill-opacity" d="M13.66,2.34,15.78.22H10.12V5.88l2.12-2.12a6,6,0,0,1,0,8.49,5.87,5.87,0,0,1-2.47,1.48v2.06A8,8,0,0,0,13.66,2.34Zm-9.9,9.9a6,6,0,0,1,0-8.49A5.87,5.87,0,0,1,6.23,2.27V.21A8,8,0,0,0,2.34,13.66L.22,15.78H5.88V10.12Z"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 370 B |
3
firefox/chrome/icons/tracking-protection.svg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16">
|
||||||
|
<path fill="context-fill" fill-opacity="context-fill-opacity" transform="scale(.666667)" d="M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78l3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 693 B |
3
firefox/chrome/navbar/connection-1x.svg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16">
|
||||||
|
<path fill="context-fill" fill-opacity="context-fill-opacity" d="M11,13H5a1,1,0,0,1-1-1V7A1,1,0,0,1,5,6V5a3,3,0,0,1,6,0V6a1,1,0,0,1,1,1v5A1,1,0,0,1,11,13ZM8,3A2,2,0,0,0,6,5V6h4V5A2,2,0,0,0,8,3Z"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 288 B |
3
firefox/chrome/navbar/connection-2x.svg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16">
|
||||||
|
<path fill="context-fill" fill-opacity="context-fill-opacity" d="M11,13.5H5a1,1,0,0,1-1-1v-5a1,1,0,0,1,1-1H5.5v-1a2.5,2.5,0,0,1,5,0v1H11a1,1,0,0,1,1,1v5A1,1,0,0,1,11,13.5ZM8,4A1.5,1.5,0,0,0,6.5,5.5v1h3v-1A1.5,1.5,0,0,0,8,4Z"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 318 B |
3
firefox/chrome/navbar/connection-warning-1x.svg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16">
|
||||||
|
<path fill-rule="evenodd" fill="context-fill" fill-opacity="context-fill-opacity" d="M8,1l8,13H0ZM7,6H9V9H7V6Zm0,4H9v2H7V10Z"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 219 B |
3
firefox/chrome/navbar/connection-warning-2x.svg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16">
|
||||||
|
<path fill-rule="evenodd" fill="context-fill" fill-opacity="context-fill-opacity" d="M7.75,2.5L14,13.5H1.5ZM7,6.5H8.5v3H7v-3Zm0,4H8.5V12H7V10.5Z"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 240 B |
3
firefox/chrome/navbar/identity-icons-brand.svg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32">
|
||||||
|
<path fill="context-fill" fill-opacity="context-fill-opacity" d="M31.4 14.627c-.044-.289-.088-.46-.088-.46s-.113.131-.3.379a10.8 10.8 0 0 0-.375-2.04 13.883 13.883 0 0 0-.94-2.418 10.078 10.078 0 0 0-.858-1.473q-.177-.264-.36-.512c-.571-.934-1.227-1.5-1.986-2.583a7.826 7.826 0 0 1-.993-2.692 10.88 10.88 0 0 0-.477 1.761c-.779-.786-1.458-1.345-1.866-1.726C21.133.978 21.367 0 21.367 0s-3.773 4.209-2.137 8.6a8.43 8.43 0 0 0 2.81 3.744c1.581 1.3 3.283 2.33 4.18 4.952a8.4 8.4 0 0 0-3.154-3.327 7.593 7.593 0 0 1 .6 3.006 7.145 7.145 0 0 1-8.736 6.96 6.576 6.576 0 0 1-1.77-.6 7.2 7.2 0 0 1-2.121-1.96l-.01-.017.126.046a6.517 6.517 0 0 0 .9.242 5.644 5.644 0 0 0 3.594-.424c1.129-.626 1.813-1.091 2.367-.908h.01c.542.172.969-.353.581-.9a2.949 2.949 0 0 0-2.846-1.114c-1.131.165-2.167.968-3.648.19a3.13 3.13 0 0 1-.278-.163c-.1-.058.317.088.221.022a7.351 7.351 0 0 1-.931-.555c-.022-.018.224.07.2.052a3.591 3.591 0 0 1-.971-.982 1.746 1.746 0 0 1-.066-1.559 1.376 1.376 0 0 1 .6-.566c.192.095.31.166.31.166s-.087-.16-.135-.244c.017-.006.032 0 .049-.011.168.073.539.261.734.376a1.018 1.018 0 0 1 .335.3s.067-.033.017-.173a.907.907 0 0 0-.347-.425h.016A2.952 2.952 0 0 1 12.3 15a2.085 2.085 0 0 0 .171-.906 1.181 1.181 0 0 0-.069-.5c-.054-.1.03-.14.123-.035a.977.977 0 0 0-.079-.239v-.008s.053-.069.078-.095a1.434 1.434 0 0 1 .216-.176 10 10 0 0 1 1.469-.749c.416-.181.759-.32.83-.36a2.287 2.287 0 0 0 .294-.226 1.973 1.973 0 0 0 .661-1.143 1.593 1.593 0 0 0 .017-.178v-.105c-.06-.226-.449-.395-2.483-.586a1.778 1.778 0 0 1-1.454-1.364v.009c-.029.075-.055.15-.081.225.026-.075.052-.151.081-.225v-.016a5.153 5.153 0 0 1 1.992-2.474c.052-.043-.208.011-.156-.032a5.18 5.18 0 0 1 .532-.225c.091-.039-.391-.222-.818-.178a2.2 2.2 0 0 0-.758.178c.1-.086.4-.2.33-.2a4.877 4.877 0 0 0-1.547.585.315.315 0 0 1 .03-.14 2.407 2.407 0 0 0-.966.746 1.286 1.286 0 0 0 .01-.174 2.883 2.883 0 0 0-.475.446l-.009.007a6.3 6.3 0 0 0-3.527-.3l-.01-.009h.012a2.953 2.953 0 0 1-.627-.7l-.008-.012-.014-.021a5.48 5.48 0 0 1-.237-.388 5.527 5.527 0 0 1-.176-.339c0-.008-.009-.011-.013-.012-.024 0-.041.111-.061.082v-.006a4.322 4.322 0 0 1-.309-1.697l-.016.008a1.89 1.89 0 0 0-.716.937c-.062.137-.1.213-.14.288v-.035c.009-.069.039-.212.032-.2s-.013.019-.02.029a1.741 1.741 0 0 0-.252.373 2.366 2.366 0 0 0-.15.383c-.006.021 0-.018 0-.064s.009-.128 0-.111l-.022.043a9.526 9.526 0 0 0-.806 3.044 3.038 3.038 0 0 0-.023.54v.016a6.641 6.641 0 0 0-.819 1.1 15.65 15.65 0 0 0-1.731 4.246 10.379 10.379 0 0 1 .928-1.626 15.041 15.041 0 0 0-1.049 5.514 14.264 14.264 0 0 1 .451-1.634 13.848 13.848 0 0 0 1.25 6.489 15.08 15.08 0 0 0 5.968 6.768 13.057 13.057 0 0 0 3.478 1.667c.163.059.327.117.5.173-.053-.021-.1-.044-.153-.067a15.752 15.752 0 0 0 4.506.659c5.41 0 7.2-2.06 7.36-2.266a2.739 2.739 0 0 0 .639-.858q.156-.064.316-.137l.067-.03.122-.057a11.349 11.349 0 0 0 2.284-1.43 5.511 5.511 0 0 0 2.129-3.11 1.944 1.944 0 0 0 .029-1.433q.083-.132.171-.28a12.743 12.743 0 0 0 1.913-6.2v-.184a7.76 7.76 0 0 0-.115-1.388z"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 3 KiB |
3
firefox/chrome/navbar/info-1x.svg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16">
|
||||||
|
<path fill-rule="evenodd" fill="context-fill" fill-opacity="context-fill-opacity" d="M8,1A7,7,0,1,1,1,8,7,7,0,0,1,8,1ZM8,3A5,5,0,1,1,3,8,5,5,0,0,1,8,3ZM7,4H9V6H7V4ZM7,7H9v4H7V7Z"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 272 B |
3
firefox/chrome/navbar/info-2x.svg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16">
|
||||||
|
<path fill-rule="evenodd" fill="context-fill" fill-opacity="context-fill-opacity" d="M7.75,1A6.75,6.75,0,1,1,1,7.75,6.75,6.75,0,0,1,7.75,1Zm0,1.5A5.25,5.25,0,1,1,2.5,7.75,5.25,5.25,0,0,1,7.75,2.5ZM7,4.5H8.5V6H7V4.5ZM7,7H8.5v4H7V7Z"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 325 B |
4
firefox/chrome/navbar/naughty-shield-1x.svg
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16">
|
||||||
|
<path fill="context-fill" fill-opacity="context-fill-opacity" d="M12.7,7h-0.92A28.263,28.263,0,0,0,12,3.5l-4.5-2V7.153A0.986,0.986,0,0,0,7,8v5.794A7.942,7.942,0,0,1,3.554,11C1.994,8.647,2,2.5,2,2.5L7.531,0,13,2.5A34.541,34.541,0,0,1,12.7,7Z"/>
|
||||||
|
<path fill="#cc4f40" fill-opacity="context-fill-opacity" d="M14,15H9a1,1,0,0,1-1-1V9A1,1,0,0,1,9,8h5a1,1,0,0,1,1,1v5A1,1,0,0,1,14,15Zm-1.139-2.846-0.646-.646,0.646-.646-0.008-.008A0.5,0.5,0,0,0,12.5,10a0.491,0.491,0,0,0-.386.194l-0.606.606-0.646-.646,0,0a0.5,0.5,0,1,0-.7.7l0,0L10.8,11.508l-0.606.606A0.491,0.491,0,0,0,10,12.5a0.5,0.5,0,0,0,.854.354l0.008,0.008,0.646-.646,0.646,0.646,0,0a0.5,0.5,0,0,0,.7-0.7Z"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 750 B |