Merge branch 'custom' into dev #352

This commit is contained in:
alstjr7375 2022-04-23 17:44:02 +09:00
commit 5a8d6392df
32 changed files with 11020 additions and 10565 deletions

View file

@ -73,7 +73,7 @@ It's in beta testing, and I'am looking forward to hearing from you.
- Unselect:
- Divide Line: React to hover like chrome
- Unloaded:
- Dimmed: Looks like inactive
- Dimmed: Looks like inactive
- Clipped:
- Clearer Text: Adjusted clipped gradation
- Closed Button: Visible on hover
@ -114,7 +114,7 @@ It's in beta testing, and I'am looking forward to hearing from you.
bash -c "$(curl -fsSL https://raw.githubusercontent.com/black7375/Firefox-UI-Fix/master/install.sh)"
#+END_SRC
Windows users: Run with powershell
Windows users: Run with powershell ([[https://github.com/black7375/Firefox-UI-Fix/wiki/Compatibility-Issues-Solution#windows-7-powershell-script-not-works][Does not work at Win7?]])
#+BEGIN_SRC powershell
Powershell -c "Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iwr https://raw.githubusercontent.com/black7375/Firefox-UI-Fix/master/install.ps1 -useb | iex"
#+END_SRC

7468
css/leptonChrome.css Normal file

File diff suppressed because it is too large Load diff

2898
css/leptonContent.css Normal file

File diff suppressed because it is too large Load diff

View file

@ -18,10 +18,11 @@ The overall structure of this project.
root
|- __tests__/: Mixin spec test
|- icons/: Icons, illustrations
|- css/: Build result of SCSS Files
|- docs/: Development Documents
|- src/: Source files
|- src/userChrome.scss: Entry of SCSS for Browser UI
|- src/userContent.scss: Entry of SCSS for Web pages
|- src/leptonChrome.scss: Entry of SCSS for Browser UI
|- src/leptonContent.scss: Entry of SCSS for Web pages
|- .gitattributes: Exclude at `Download Zip`
|- .github: Issue/PR Template, Github Actions
|- .prettierignore: Exclude coding style
@ -31,8 +32,8 @@ root
|- package.json: Build setup, package dependency
|- LEPTON: Meta infos (branch, version)
|- user.js: about:config settings
|- userChrome.css: Build result of src/userChrome.scss (Don't modify directly!!)
|- userContent.css: Build result of src/userContent.scss (Don't modify directly!!)
|- userChrome.css: Entry of css for Browser UI (Don't modify directly!!)
|- userContent.css: Entry of css for Web pages (Don't modify directly!!)
|- yarn.lock: Auto generated dependency (Don't modify directly!!)
```
@ -43,7 +44,8 @@ Most of them are made in SVG.
Except for illustrations, there must be an `fill="context-fill" fill-opacity="context-fill-opacity"` property to dynamically determine color and transparency.
Icons are mainly [FirefoxUX/photon-icons](https://github.com/FirefoxUX/photon-icons)
or [microsoft/fluentui-system-icons](https://github.com/microsoft/fluentui-system-icons).
or [microsoft/fluentui-system-icons](https://github.com/microsoft/fluentui-system-icons).
Although not yet used, [tabler/tabler-icons](https://github.com/tabler/tabler-icons) and [feathericons/feather](https://github.com/feathericons/feather) can also be referred to.
You can see more in the issue, [Unify icon design langauge #213](https://github.com/black7375/Firefox-UI-Fix/issues/213).
@ -89,12 +91,6 @@ CSS settings are relatively simple.
- `userChrome-overrides.css` at `<Firefox_Profile>/chrome/`
- `userContent-overrides.css` at `<Firefox_Profile>/chrome/`
Then, activate the following options:
- `userChrome.overrides` to `true`
- `userContent.overrides` to `true`
It is now loading, and there is no need to manage the version control to the `userChrome.css` and `userContents.css` file.
`user-overrides.js` needs to use a shell script and has some priorities.
- `<Firefox_Profile>/user-overrides.js`
- `./user-overrides.js` (Will be copied `<Firefox_Profile>/chrome/`)

View file

@ -11,6 +11,8 @@
* [DOM structure cannot be modified](#dom-structure-cannot-be-modified)
* [Shadow DOM](#shadow-dom)
* [XUL](#xul)
* [Namespace](#namespace)
* [Import](#import)
<!-- markdown-toc end -->
@ -121,4 +123,73 @@ Example of legacy documents that will help.
- [UDN: ::-moz-tree-cell-text](https://udn.realityripple.com/docs/Mozilla/Gecko/Chrome/CSS/::-moz-tree-cell-text)
Another case.
Like [`<toolbar align="end"></toolbar>`](https://udn.realityripple.com/docs/Archive/Mozilla/XUL/Attribute/align), [`attributes`] is set and CSS of same property may not be appplied. (Ex. [`box-align: start`](https://udn.realityripple.com/docs/Web/CSS/box-align))
Like [`<toolbar align="end"></toolbar>`](https://udn.realityripple.com/docs/Archive/Mozilla/XUL/Attribute/align), [`attributes`](https://udn.realityripple.com/docs/Archive/Mozilla/XUL/Attribute) is set and CSS of same property may not be appplied. (Ex. [`box-align: start`](https://udn.realityripple.com/docs/Web/CSS/box-align))
### Namespace
In older codes, the following [namespace](https://developer.mozilla.org/en-US/docs/Web/CSS/@namespace) is commonly seen:
```css
@namespace url(http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul);
```
However, it is [only applicable to XUL](https://www.userchrome.org/adding-style-recipes-userchrome-css.html#namespaces), so it is recommended to use with `prefix`.
```css
@namespace xul url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");
@namespace html url("http://www.w3.org/1999/xhtml");
/* Use */
xul|search-textbox {
border: 2px solid red !important;
}
html|input {
border: 2px solid green !important;
}
```
If you want to limit the coverage to some pages, you can use [`@-moz-document`](https://developer.mozilla.org/en-US/docs/Web/CSS/@document):
```css
/* Main browser UI */
@-moz-document url(chrome://browser/content/browser.xhtml) {
/* Your CSS */
}
/* Library UI */
@-moz-document url("chrome://browser/content/places/places.xhtml") {
/* Your CSS */
}
/* PageInfo UI */
@-moz-document url("chrome://browser/content/pageinfo/pageInfo.xhtml") {
/* Your CSS */
}
```
### Import
There are a few caveats when you [`@import`](https://developer.mozilla.org/en-US/docs/Web/CSS/@import) the CSS.
It's because of specification definition, not Firefox design, but to prevent some mistakes.
`@import` rule is not a [nested statement](https://developer.mozilla.org/en-US/docs/Web/CSS/Syntax#nested_statements). Therefore, it cannot be used inside [conditional group at-rules](https://developer.mozilla.org/en-US/docs/Web/CSS/At-rule#conditional_group_rules).
```css
/* Precede */
@import url("YourFile.css"); /* Works */
/* Nested */
@supports -moz-bool-pref("userChrome.test.pref") {
@import url("AnotherFile.css"); /* Not Works */
}
```
Any [`@namespace`](https://developer.mozilla.org/en-US/docs/Web/CSS/@namespace) rules must follow all `@charset` and @import rules, and precede all other at-rules and style declarations in a style sheet.
```css
/* Before - Namespace */
@import url("YourFile.css"); /* Works */
/* Declare - Namespace */
@namespace xul url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");
@namespace html url("http://www.w3.org/1999/xhtml");
/* After - Namespace */
@import url("YourFile.css"); /* Not Works */
```

View file

@ -49,13 +49,13 @@ https://github.com/black7375/Firefox-UI-Fix#readme
param(
[Alias("u")]
[Switch]$updateMode,
[switch]$updateMode,
[Alias("f")]
[string]$profileDir,
[Alias("p")]
[string]$profileName,
[Alias("h")]
[Switch]$help = $false
[switch]$help = $false
)
#** Helper Utils ***************************************************************
@ -92,25 +92,33 @@ function Verify-PowerShellVersion {
#== Required Tools =============================================================
function Install-Choco() {
# https://chocolatey.org/install
# https://docs.chocolatey.org/en-us/choco/setup#non-administrative-install
$InstallDir='C:\ProgramData\chocoportable'
$env:ChocolateyInstall="$InstallDir"
Set-ExecutionPolicy Bypass -Scope Process -Force
[System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072
iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
$env:Path += ";C:\ProgramData\chocolatey"
$env:Path += ";C:\ProgramData\chocoportable" # Adimin: ";C:\ProgramData\chocolatey"
refreshenv
}
function Check-Git() {
if( -Not (Get-Command git) ) {
if ( -Not (Get-Command choco)) {
if ( -Not (Get-Command git -errorAction SilentlyContinue) ) {
if ( -Not (Get-Command choco -errorAction SilentlyContinue) ) {
Install-Choco
}
choco install git -y
$env:Path += ";C:\Program Files\Git\bin"
choco install git.commandline -y
$env:Path += ";C:\tools\git\bin" # Adimin: ";C:\Program Files\Git\bin"
refreshenv
}
Lepton-OKMessage "Required - git"
}
#== PATH / File ================================================================
$PSDefaultParameterValues['Out-File:Encoding'] = 'utf8'
$currentDir = (Get-Location).path
function Filter-Path() {
@ -634,6 +642,147 @@ function Check-InstallTypes() {
}
}
#== Custom Install =============================================================
$customFiles = @(
"user-overrides.js",
"userChrome-overrides.css",
"userContent-overrides.css"
)
$localCustomFiles = $customFiles.Clone()
$customFileExist = $false
function Check-CustomFiles() {
$global:localCustomFiles = Filter-Path $localCustomFiles
if ( $global:localCustomFiles.Length -gt 0 ) {
$global:customFileExist = $true
Lepton-OKMessage "Check custom file detected"
foreach ( $customFile in $global:localCustomFiles ) {
Write-Host "- ${customFile}"
}
}
}
function Copy-CustomFiles() {
if ( "${customFileExist}" -eq $true ) {
# If Release or Network mode, Local is passed (Already copied)
if ( "${leptonInstallType}" -ne "Local" ) {
foreach ( $profilePath in $global:firefoxProfilePaths ) {
foreach ( $customFile in $global:localCustomFiles ) {
if ( "${customFile}" -eq "user-overrides.js" ) {
Copy-Auto "${customFile}" "${profilePath}\${customFile}"
}
else {
Copy-Auto "${customFile}" "${profilePath}\chrome\${customFile}"
}
}
}
}
Lepton-OKMessage "End custom file copy"
}
}
$customMethod = ""
$customReset = $false
$customAppend = $false
function Set-CustomMethod() {
$local:menuAppend="Append - Maintain changes in existing files and apply custom"
$local:menuOverwrite="Overwrite - After initializing the change, apply only custom"
$local:menuNone="None - Maintain changes in existing files"
$local:menuReset="Reset- Reset to pure lepton theme without custom"
Write-Host "Select custom method"
while ( "${customMethod}" -eq "" ) {
$local:applyMethod = Menu @("${menuAppend}", "${menuOverwrite}", "${menuNone}", "${menuReset}")
switch ( $applyMethod ) {
"${menuAppend}" {
$global:customMethod = "Append"
$global:customAppend = $true
}
"${menuOverwrite}" {
$global:customMethod = "Overwrite"
$global:customReset = $true
$global:customAppend = $true
}
"${menuNone}" {
$global:customMethod = "None"
}
"${menuReset}" {
$global:customMethod = "Reset"
$global:customReset = $true
}
default { Write-Host "Invalid option, reselect please." }
}
}
Lepton-OKMessage "Selected ${customMethod}"
}
$customFileApplied = $false
function Apply-CustomFile() {
Param (
[Parameter(Mandatory=$true, Position=0)]
[string] $profilePath,
[Parameter(Mandatory=$true, Position=1)]
[string] $targetPath,
[Parameter(Mandatory=$true, Position=2)]
[string] $customPath,
[Parameter(Position=3)]
[string] $otherCustomPath = ""
)
$local:leptonDir = "${profilePath}\chrome"
$local:gitDir = "${leptonDir}\.git"
if ( Test-Path -Path "${customPath}" -PathType leaf ) {
$global:customFileApplied = $true
if ( "${customMethod}" -eq "" ) {
Set-CustomMethod
}
if ( "${customReset}" -eq $true ) {
if ( "${targetPath}" -like "*user.js" ) {
Copy-Item -Path "${leptonDir}\user.js" -Destination "${targetPath}" -Force
}
else {
git --git-dir "${gitDir}" --work-tree "${leptonDir}" checkout HEAD -- "${targetPath}"
}
}
if ( "${customAppend}" -eq $true ) {
# Apply without duplication
if ( -not (Write-Output "$(Write-Output $(Get-Content -Path "${targetPath}"))" | Select-String -Pattern "$(Write-Output $(Get-Content -Path "${customPath}"))" -SimpleMatch -Quiet) ) {
Get-Content -Path "${customPath}" | Out-File -FilePath "${targetPath}" -Append
}
}
}
elseif ( "${otherCustomPath}" -ne "" ) {
Apply-CustomFile "${profilePath}" "${targetPath}" "${otherCustomPath}"
}
}
function Apply-CustomFiles() {
foreach ( $profilePath in $global:firefoxProfilePaths ) {
foreach ( $customFile in $global:customFiles ) {
$local:targetFile = $customFile.Replace("-overrides", "")
if ( "${customFile}" -eq "user-overrides.js" ) {
$local:targetPath = "${profilePath}\${targetFile}"
$local:customPath = "${profilePath}\user-overrides.js"
$local:otherCustomPath = "${profilePath}\chrome\user-overrides.js"
Apply-CustomFile "${profilePath}" "${targetPath}" "${customPath}" "${otherCustomPath}"
}
else {
Apply-CustomFile "${profilePath}" "${profilePath}\chrome\${targetFile}" "${profilePath}\chrome\${customFile}"
}
}
}
if ( "${customFileApplied}" -eq $true ) {
Lepton-OKMessage "End custom file applied"
}
}
#== Install Helpers ============================================================
$chromeDuplicate = $false
function Check-ChromeExist() {
@ -692,10 +841,16 @@ function Copy-Lepton() {
#== Each Install ===============================================================
function Install-Local() {
Copy-Lepton "${currentDir}" "user.js"
Copy-CustomFiles
Apply-CustomFiles
}
function Install-Release() {
Copy-Lepton "chrome" "user.js"
Copy-CustomFiles
Apply-CustomFiles
}
function Install-Network() {
@ -704,9 +859,12 @@ function Install-Network() {
Clone-Lepton
Copy-Lepton
Copy-CustomFiles
Clean-Lepton
Check-ChromeRestore
Apply-CustomFiles
}
function Install-Profile() {
@ -722,6 +880,35 @@ function Install-Profile() {
}
#** Update *********************************************************************
function Stash-File() {
Param (
[Parameter(Mandatory=$true, Position=0)]
[string] $leptonDir,
[Parameter(Mandatory=$true, Position=1)]
[string] $gitDir
)
if ( "$(git --git-dir "${gitDir}" --work-tree "${leptonDir}" diff --stat)" -ne '' ) {
git --git-dir "${gitDir}" --work-tree "${leptonDir}" checkout stash
return $true
}
return $false
}
function Restore-File() {
Param (
[Parameter(Mandatory=$true, Position=0)]
[string] $leptonDir,
[Parameter(Mandatory=$true, Position=1)]
[string] $gitDir,
[Parameter(Position=2)]
[switch] $gitDirty = $false
)
if ( "${gitDirty}" -eq $true ) {
git --git-dir "${gitDir}" --work-tree "${leptonDir}" checkout stash pop --quiet
}
}
function Update-Profile() {
Check-Git
foreach ( $profileDir in $global:firefoxProfileDirPaths ) {
@ -734,10 +921,15 @@ function Update-Profile() {
$local:Branch = $LEPTONINFO["${section}"]["Branch"]
$local:Path = $LEPTONINFO["${section}"]["Path"]
$local:LEPTONGITPATH="${Path}\chrome\.git"
if ( "${Type}" -eq "Git" ){
git --git-dir "${LEPTONGITPATH}" checkout "${Branch}"
git --git-dir "${LEPTONGITPATH}" pull --no-edit
$local:leptonDir = "${Path}\chrome"
$local:gitDir = "${leptonDir}\.git"
if ( "${Type}" -eq "Git" ) {
$local:gitDirty = $(Stash-File "${leptonDir}" "${gitDir}")
git --git-dir "${gitDir}" --work-tree "${leptonDir}" checkout "${Branch}"
git --git-dir "${gitDir}" --work-tree "${leptonDir}" pull --no-edit
Restore-File "${leptonDir}" "${gitDir}" $gitDirty
}
elseif ( "${Type}" -eq "Local" -or "${Type}" -eq "Release" ) {
Check-ChromeExist
@ -749,12 +941,15 @@ function Update-Profile() {
if ( "${Branch}" -eq $null ) {
$Branch = "${leptonBranch}"
}
git --git-dir "${LEPTONGITPATH}" checkout "${Branch}"
git --git-dir "${gitDir}" --work-tree "${leptonDir}" checkout "${Branch}"
if ( "${Type}" -eq "Release" ) {
$local:Ver=$(git --git-dir "${LEPTONINFOFILE}" describe --tags --abbrev=0)
git --git-dir "${LEPTONGITPATH}" checkout "tags/${Ver}"
$local:Ver=$(git --git-dir "${gitDir}" describe --tags --abbrev=0)
git --git-dir "${gitDir}" --work-tree "${leptonDir}" checkout "tags/${Ver}"
}
Clean-Lepton
Check-ChromeRestore
}
else {
Lepton-ErrorMessage "Unable to find update type, ${Type} at ${section}"
@ -762,8 +957,8 @@ function Update-Profile() {
}
}
}
Clean-Lepton
Check-ChromeRestore
Apply-CustomFiles
}
#** Main ***********************************************************************
@ -784,6 +979,8 @@ function Install-Lepton {
Update-ProfilePaths
Write-LeptonInfo
Check-CustomFiles
if ( $updateMode ) {
Update-Profile
}

View file

@ -616,6 +616,137 @@ check_install_types() {
fi
}
#== Custom Install =============================================================
customFiles=(
user-overrides.js
userChrome-overrides.css
userContent-overrides.css
)
localCustomFiles=("${customFiles[@]}")
customFileExist=""
check_custom_files() {
paths_filter localCustomFiles
if [ "${#localCustomFiles[@]}" -gt 0 ]; then
customFileExist="true"
lepton_ok_message "Check custom file detected"
for customFile in "${localCustomFiles[@]}"; do
echo "- ${customFile}"
done
fi
}
copy_custom_files() {
if [ "${customFileExist}" == "true" ]; then
# If Release or Network mode, Local is passed (Already copied)
if [ "${leptonInstallType}" != "Local" ]; then
for profilePath in "${firefoxProfilePaths[@]}"; do
for customFile in "${localCustomFiles[@]}"; do
if [ "${customFile}" == "user-overrides.js" ]; then
autocp "${customFile}" "${profilePath}/${customFile}"
else
autocp "${customFile}" "${profilePath}/chrome/${customFile}"
fi
done
done
fi
lepton_ok_message "End custom file copy"
fi
}
customMethod=""
customReset=""
customAppend=""
set_custom_method() {
local menuAppend="Append - Maintain changes in existing files and apply custom"
local menuOverwrite="Overwrite - After initializing the change, apply only custom"
local menuNone="None - Maintain changes in existing files"
local menuReset="Reset- Reset to pure lepton theme without custom"
echo "Select custom method"
select applyMethod in "${menuAppend}" "${menuOverwrite}" "${menuNone}" "${menuReset}"; do
case "${applyMethod}" in
"${menuAppend}")
customMethod="Append"
customAppend="true"
break;;
"${menuOverwrite}")
customMethod="Overwrite"
customReset="true"
customAppend="true"
break;;
"${menuNone}")
customMethod="None"
break;;
"${menuReset}")
customMethod="Reset"
customReset="true"
break;;
*)
echo "Invalid option, reselect please.";;
esac
done
lepton_ok_message "Selected ${customMethod}"
}
customFileApplied=""
apply_custom_file() {
local profilePath=$1
local targetPath=$2
local customPath=$3
local otherCustomPath=$4
local leptonDir="${profilePath}/chrome"
local gitDir="${leptonDir}/.git"
if [ -f "${customPath}" ]; then
customPathApplied="true"
if [ -z "${customMethod}" ]; then
set_custom_method
fi
if [ "${customReset}" == "true" ]; then
if [[ "${targetPath}" == *"user.js" ]]; then
\cp -f "${leptonDir}/user.js" "${targetPath}"
else
git --git-dir "${gitDir}" --work-tree "${leptonDir}" checkout HEAD -- "${targetPath}"
fi
fi
if [ "${customAppend}" == "true" ]; then
# Apply without duplication
if ! grep -Fq "$(echo $(cat "${customPath}"))" <(echo "$(echo $(cat "${targetPath}"))"); then
cat "${customPath}" >> "${targetPath}"
fi
fi
elif [ -n "${otherCustomPath}" ]; then
apply_custom_file "${profilePath}" "${targetPath}" "${otherCustomPath}"
fi
}
apply_custom_files() {
for profilePath in "${firefoxProfilePaths[@]}"; do
for customFile in "${customFiles[@]}"; do
local targetFile="${customFile//-overrides/}"
if [ "${customFile}" == "user-overrides.js" ]; then
local targetPath="${profilePath}/${targetFile}"
local customPath="${profilePath}/user-overrides.js"
local otherCustomPath="${profilePath}/chrome/user-overrides.js"
apply_custom_file "${profilePath}" "${targetPath}" "${customPath}" "${otherCustomPath}"
else
apply_custom_file "${profilePath}" "${profilePath}/chrome/${targetFile}" "${profilePath}/chrome/${customFile}"
fi
done
done
if [ "${customFileApplied}" == "true" ]; then
lepton_ok_message "End custom file applied"
fi
}
#== Install Helpers ============================================================
chromeDuplicate=""
check_chrome_exist() {
@ -673,10 +804,16 @@ copy_lepton() {
#== Each Install ===============================================================
install_local() {
copy_lepton "${currentDir}" "user.js"
copy_custom_files
apply_custom_files
}
install_release() {
copy_lepton "chrome" "user.js"
copy_custom_files
apply_custom_files
}
install_network() {
@ -685,9 +822,11 @@ install_network() {
clone_lepton
copy_lepton
copy_custom_files
clean_lepton
check_chrome_restore
apply_custom_files
}
install_profile() {
@ -703,6 +842,22 @@ install_profile() {
}
#** Update *********************************************************************
file_stash() {
local leptonDir=$1
local gitDir=$2
if [[ $(git --git-dir "${gitDir}" --work-tree "${leptonDir}" diff --stat) != '' ]]; then
git --git-dir "${gitDir}" --work-tree "${leptonDir}" stash
fi
}
file_restore() {
local leptonDir=$1
local gitDir=$2
local gitDirty=$3
if [ -n "${gitDirty}" ]; then
git --git-dir "${gitDir}" --work-tree "${leptonDir}" stash pop --quiet
fi
}
update_profile() {
check_git
for profileDir in "${firefoxProfileDirPaths[@]}"; do
@ -714,10 +869,15 @@ update_profile() {
local Branch=$(get_ini_value "${LEPTONINFOPATH}" "Branch" "${section}")
local Path=$( get_ini_value "${LEPTONINFOPATH}" "Path" "${section}")
local LEPTONGITPATH="${Path}/chrome/.git"
local leptonDir="${Path}/chrome"
local gitDir="${leptonDir}/.git"
if [ "${Type}" == "Git" ]; then
git --git-dir "${LEPTONGITPATH}" checkout "${Branch}"
git --git-dir "${LEPTONGITPATH}" pull --no-edit
local gitDirty=$(file_stash "${leptonDir}" "${gitDir}")
git --git-dir "${gitDir}" --work-tree "${leptonDir}" checkout "${Branch}"
git --git-dir "${gitDir}" --work-tree "${leptonDir}" pull --no-edit
file_restore "${leptonDir}" "${gitDir}" "${gitDirty}"
elif [ "${Type}" == "Local" ] || [ "${Type}" == "Release" ]; then
check_chrome_exist
clone_lepton
@ -728,20 +888,23 @@ update_profile() {
if [ -z "${Branch}" ]; then
Branch="${leptonBranch}"
fi
git --git-dir "${LEPTONGITPATH}" checkout "${Branch}"
git --git-dir "${gitDir}" --work-tree "${leptonDir}" checkout "${Branch}"
if [ "${Type}" == "Release" ]; then
local Ver=$(git --git-dir "${LEPTONINFOFILE}" describe --tags --abbrev=0)
git --git-dir "${LEPTONGITPATH}" checkout "tags/${Ver}"
git --git-dir "${gitDir}" --work-tree "${leptonDir}" checkout "tags/${Ver}"
fi
clean_lepton
check_chrome_restore
else
lepton_error_message "Unable to find update type, ${Type} at ${section}"
fi
done
fi
done
clean_lepton
check_chrome_restore
apply_custom_files
}
#** Main ***********************************************************************
@ -773,6 +936,8 @@ install_lepton() {
update_profile_paths
write_lepton_info
check_custom_files
# Install Mode
if [ "${updateMode}" == true ]; then
update_profile

View file

@ -14,10 +14,10 @@
},
"homepage": "https://github.com/black7375/Firefox-UI-Fix#readme",
"scripts": {
"build": "sass --no-source-map src/userChrome.scss ./userChrome.css && sass --no-source-map src/userContent.scss ./userContent.css && prettier --write userChrome.css userContent.css",
"build": "sass --no-source-map src/leptonChrome.scss css/leptonChrome.css && sass --no-source-map src/leptonContent.scss css/leptonContent.css && prettier --write css/leptonChrome.css css/leptonContent.css",
"format": "prettier --write .",
"test": "jest",
"validate": "csstree-validator userChrome.css; csstree-validator userContent.css"
"validate": "csstree-validator css/leptonChrome.css; csstree-validator css/leptonContent.css"
},
"devDependencies": {
"csstree-validator": "^3.0.0",

View file

@ -40,12 +40,12 @@
url("about:restartrequired"), url("chrome://browser/content/aboutRestartRequired.xhtml")
{
#errorPageContainer {
background-image: url("./icons/error-connection-failure.svg");
background-image: url("../icons/error-connection-failure.svg");
}
}
@-moz-document url-prefix("about:neterror?e=dnsNotFound") {
#errorPageContainer {
background-image: url("./icons/error-server-not-found.svg");
background-image: url("../icons/error-server-not-found.svg");
}
}
@-moz-document url-prefix("about:neterror?e=malformedURI") {
@ -56,7 +56,7 @@
@-moz-document url-prefix("about:neterror?e=clockSkewError"),
url-prefix("about:neterror?e=nssFailure") {
#errorPageContainer {
background-image: url("./icons/blue-berror.svg");
background-image: url("../icons/blue-berror.svg");
background-size: 18.5em;
}
}
@ -64,7 +64,7 @@
@-moz-document url("about:sessionrestore"), url("chrome://browser/content/aboutSessionRestore.xhtml")
{
.description-wrapper {
background-image: url("./icons/error-session-restore.svg");
background-image: url("../icons/error-session-restore.svg");
}
}
@ -98,7 +98,7 @@
{
@media (min-width: 970px) {
.title {
background-image: url("./icons/welcome-back.svg") !important;
background-image: url("../icons/welcome-back.svg") !important;
}
}
}

View file

@ -173,10 +173,10 @@
@include Option("userContent.player.icon") {
#controlsContainer .fullscreenButton {
background-image: url("./icons/enter-fullscreen.svg") !important;
background-image: url("../icons/enter-fullscreen.svg") !important;
}
#controlsContainer .fullscreenButton[fullscreened] {
background-image: url("./icons/exit-fullscreen.svg") !important;
background-image: url("../icons/exit-fullscreen.svg") !important;
}
}

View file

@ -45,7 +45,7 @@
#goOfflineMenuitem {
}
#menu_FileQuitItem {
--menuitem-image: url("./icons/quit.svg");
--menuitem-image: url("../icons/quit.svg");
}
/* Mange Containers */
@ -55,7 +55,7 @@
/*= menu_EditPopup ===========================================================*/
#menu_undo {
--menuitem-image: url("./icons/undo.svg");
--menuitem-image: url("../icons/undo.svg");
}
#menu_redo {
}
@ -64,7 +64,7 @@
--menuitem-image: url("chrome://browser/skin/edit-cut.svg");
}
#menu_copy {
--menuitem-image: url("./icons/edit-copy.svg");
--menuitem-image: url("../icons/edit-copy.svg");
}
#menu_paste {
--menuitem-image: url("chrome://browser/skin/edit-paste.svg");
@ -74,7 +74,7 @@
}
#menu_selectAll {
--menuitem-image: url("./icons/select-all-on.svg");
--menuitem-image: url("../icons/select-all-on.svg");
}
#menu_find {
@ -92,17 +92,17 @@
/*= menu_viewPopup ===========================================================*/
#viewToolbarsMenu {
--menuitem-image: url("./icons/toolbar.svg");
--menuitem-image: url("../icons/toolbar.svg");
}
#viewSidebarMenuMenu {
--menuitem-image: url("chrome://browser/skin/sidebars.svg");
}
#viewFullZoomMenu {
--menuitem-image: url("./icons/screenshot.svg");
--menuitem-image: url("../icons/screenshot.svg");
}
#pageStyleMenu {
--menuitem-image: url("./icons/document-css.svg");
--menuitem-image: url("../icons/document-css.svg");
}
#repair-text-encoding {
--menuitem-image: url("chrome://browser/skin/characterEncoding.svg");
@ -118,7 +118,7 @@
}
#documentDirection-swap {
--menuitem-image: url("./icons/text-direction-horizontal-ltr.svg");
--menuitem-image: url("../icons/text-direction-horizontal-ltr.svg");
}
/* view-menu-popup sub menu */
@ -134,7 +134,7 @@
--menuitem-image: url("chrome://browser/skin/subtract-circle-fill.svg");
}
#menu_zoomReset {
--menuitem-image: url("./icons/resize.svg");
--menuitem-image: url("../icons/resize.svg");
}
/*= goPopup ==================================================================*/
@ -149,7 +149,7 @@
--menuitem-image: url("chrome://browser/skin/sync.svg");
}
#historyRestoreLastSession {
--menuitem-image: url("./icons/restore-session.svg");
--menuitem-image: url("../icons/restore-session.svg");
}
#hiddenTabsMenu {
}
@ -162,10 +162,10 @@
/* sub menu */
#historyUndoPopup .restoreallitem {
--menuitem-image: url("./icons/movetowindow-16.svg");
--menuitem-image: url("../icons/movetowindow-16.svg");
}
#historyUndoWindowPopup .restoreallitem {
--menuitem-image: url("./icons/restore-session.svg");
--menuitem-image: url("../icons/restore-session.svg");
}
/*= bookmarksMenuPopup =======================================================*/
@ -210,10 +210,10 @@
#webDeveloperMenu, /* Legacy */
#browserToolsMenu {
--menuitem-image: url("./icons/developer.svg");
--menuitem-image: url("../icons/developer.svg");
}
#menu_pageInfo {
--menuitem-image: url("./icons/document-endnote.svg");
--menuitem-image: url("../icons/document-endnote.svg");
}
/* menuWebDeveloperPopup sub menu */
@ -222,16 +222,16 @@
#menu_devToolbox {
}
#menu_taskManager {
--menuitem-image: url("./icons/performance.svg");
--menuitem-image: url("../icons/performance.svg");
}
#menu_devtools_remotedebugging {
--menuitem-image: url("./icons/bug.svg");
--menuitem-image: url("../icons/bug.svg");
}
#menu_browserToolbox {
--menuitem-image: url("./icons/window-dev-tools.svg");
--menuitem-image: url("../icons/window-dev-tools.svg");
}
#menu_browserContentToolbox {
--menuitem-image: url("./icons/command-frames.svg");
--menuitem-image: url("../icons/command-frames.svg");
}
#menu_browserConsole {
--menuitem-image: url("chrome://devtools/skin/images/command-console.svg");
@ -241,7 +241,7 @@
#menu_eyedropper {
}
#menu_pageSource {
--menuitem-image: url("./icons/document-search.svg");
--menuitem-image: url("../icons/document-search.svg");
}
#extensionsForDevelopers {
--menuitem-image: url("chrome://devtools/skin/images/debugging-addons.svg");
@ -252,7 +252,7 @@
--menuitem-image: url("chrome://global/skin/icons/help.svg");
}
#feedbackPage {
--menuitem-image: url("./icons/send.svg");
--menuitem-image: url("../icons/send.svg");
}
#helpSafeMode {
--menuitem-image: url("chrome://devtools/skin/images/debugging-workers.svg");

View file

@ -5,15 +5,15 @@
#newfolder {
--menuitem-image: url("chrome://global/skin/icons/folder.svg");
@include Option("userChrome.icon.library") {
--menuitem-image: url("./icons/folder.svg");
--menuitem-image: url("../icons/folder.svg");
}
}
#newseparator {
--menuitem-image: url("./icons/vertical-line.svg");
--menuitem-image: url("../icons/vertical-line.svg");
}
#orgUndo {
--menuitem-image: url("./icons/undo.svg");
--menuitem-image: url("../icons/undo.svg");
}
#orgRedo {
}
@ -22,7 +22,7 @@
--menuitem-image: url("chrome://browser/skin/edit-cut.svg");
}
#orgCopy {
--menuitem-image: url("./icons/edit-copy.svg");
--menuitem-image: url("../icons/edit-copy.svg");
}
#orgPaste {
--menuitem-image: url("chrome://browser/skin/edit-paste.svg");
@ -32,7 +32,7 @@
}
#orgSelectAll {
--menuitem-image: url("./icons/select-all-on.svg");
--menuitem-image: url("../icons/select-all-on.svg");
}
#orgClose {
@ -44,7 +44,7 @@
--menuitem-image: url("chrome://global/skin/icons/columnpicker.svg");
}
#viewSort {
--menuitem-image: url("./icons/text-sort-ascending.svg");
--menuitem-image: url("../icons/text-sort-ascending.svg");
}
/*= maintenanceButtonPopup ===================================================*/

View file

@ -1,12 +1,12 @@
/*= main-menubar =============================================================*/
#file-menu {
--menuitem-image: url("./icons/mail-inbox-all.svg");
--menuitem-image: url("../icons/mail-inbox-all.svg");
}
#edit-menu {
--menuitem-image: url("chrome://global/skin/icons/edit.svg");
}
#view-menu {
--menuitem-image: url("./icons/content-view.svg");
--menuitem-image: url("../icons/content-view.svg");
}
#history-menu {
--menuitem-image: url("chrome://browser/skin/history.svg");
@ -15,7 +15,7 @@
--menuitem-image: url("chrome://browser/skin/bookmark.svg");
}
#tools-menu {
--menuitem-image: url("./icons/toolbox.svg");
--menuitem-image: url("../icons/toolbox.svg");
}
#helpMenu {
--menuitem-image: url("chrome://global/skin/icons/help.svg");

View file

@ -6,7 +6,7 @@
}
#appMenu-proton-update-banner::before {
content: url("./icons/whatsnew.svg");
content: url("../icons/whatsnew.svg");
}
#appMenu-fxa-status2::before {
/* Don't exist img tag */
@ -92,7 +92,7 @@
list-style-image: url("chrome://global/skin/icons/search-glass.svg");
}
#appMenu-zoom-controls2::before {
content: url("./icons/screenshot.svg");
content: url("../icons/screenshot.svg");
}
}
@ -110,7 +110,7 @@
}
#appMenu-quit-button2 {
list-style-image: url("./icons/quit.svg");
list-style-image: url("../icons/quit.svg");
}
}
@ -155,13 +155,13 @@
list-style-image: url("chrome://browser/skin/fxa/add-device.svg");
}
#PanelUI-fxa-menu-sendtab-button {
list-style-image: url("./icons/send-to-device.svg");
list-style-image: url("../icons/send-to-device.svg");
}
#PanelUI-fxa-menu-sync-prefs-button {
list-style-image: url("chrome://global/skin/icons/settings.svg");
}
#PanelUI-fxa-menu-account-signout-button {
list-style-image: url("./icons/sign-out.svg");
list-style-image: url("../icons/sign-out.svg");
}
#PanelUI-remotetabs-view-managedevices::before {
/* Box */
@ -202,7 +202,7 @@
}
.pageAction-sendToDevice-device.subviewbutton.sync-menuitem.sendtab-target[clientType=""], /* Legacy */
.sendToDevice-device.subviewbutton.sync-menuitem.sendtab-target[clientType=""] {
list-style-image: url("./icons/send-to-device.svg");
list-style-image: url("../icons/send-to-device.svg");
}
.pageAction-sendToDevice-device.subviewbutton.sync-menuitem.sendtab-target:not([clientType]), /* Legacy */
.sendToDevice-device.subviewbutton.sync-menuitem.sendtab-target:not([clientType]) {
@ -236,7 +236,7 @@ panelMenuBookmarkThisPage[starred] {
list-style-image: url("chrome://browser/skin/window.svg");
}
#appMenuRestoreSession {
list-style-image: url("./icons/restore-session.svg");
list-style-image: url("../icons/restore-session.svg");
}
#appMenuClearRecentHistory {
list-style-image: url("chrome://browser/skin/forget.svg");
@ -247,10 +247,10 @@ panelMenuBookmarkThisPage[starred] {
}
#appMenu-library-recentlyClosedTabs {
list-style-image: url("./icons/movetowindow-16.svg");
list-style-image: url("../icons/movetowindow-16.svg");
}
#appMenu-library-recentlyClosedWindows {
list-style-image: url("./icons/restore-session.svg");
list-style-image: url("../icons/restore-session.svg");
}
/*= Panel - More tools =======================================================*/
@ -261,27 +261,27 @@ panelMenuBookmarkThisPage[starred] {
/* Web Developer Tools */
#appmenu-developer-tools-view .subviewbutton:nth-child(1),
#PanelUI-developer-tools-view .subviewbutton:nth-child(1) {
list-style-image: url("./icons/developer.svg");
list-style-image: url("../icons/developer.svg");
}
/* Task Manager */
#appmenu-developer-tools-view .subviewbutton:nth-child(2),
#PanelUI-developer-tools-view .subviewbutton:nth-child(2) {
list-style-image: url("./icons/performance.svg");
list-style-image: url("../icons/performance.svg");
}
/* Remote Debugging - Edge bug.svg */
#appmenu-developer-tools-view .subviewbutton:nth-child(3),
#PanelUI-developer-tools-view .subviewbutton:nth-child(3) {
list-style-image: url("./icons/bug.svg");
list-style-image: url("../icons/bug.svg");
}
/* Browser Toolbox - Edge webdeveloper.svg */
#appmenu-developer-tools-view .subviewbutton:nth-child(4),
#PanelUI-developer-tools-view .subviewbutton:nth-child(4) {
list-style-image: url("./icons/window-dev-tools.svg");
list-style-image: url("../icons/window-dev-tools.svg");
}
/* Browser Content Toolbaox - */
#appmenu-developer-tools-view .subviewbutton:nth-child(5),
#PanelUI-developer-tools-view .subviewbutton:nth-child(5) {
list-style-image: url("./icons/command-frames.svg");
list-style-image: url("../icons/command-frames.svg");
}
/* Browser Console */
#appmenu-developer-tools-view .subviewbutton:nth-last-child(5),
@ -291,7 +291,7 @@ panelMenuBookmarkThisPage[starred] {
/* Responsive Design Mode */
#appmenu-developer-tools-view .subviewbutton:nth-last-child(4),
#PanelUI-developer-tools-view .subviewbutton:nth-last-child(4) {
list-style-image: url("./icons/command-responsivemode.svg");
list-style-image: url("../icons/command-responsivemode.svg");
}
/* Eyedropper */
#appmenu-developer-tools-view .subviewbutton:nth-last-child(3),
@ -301,7 +301,7 @@ panelMenuBookmarkThisPage[starred] {
/* Page Source - Edge file-search.svg */
#appmenu-developer-tools-view .subviewbutton:nth-last-child(2),
#PanelUI-developer-tools-view .subviewbutton:nth-last-child(2) {
list-style-image: url("./icons/document-search.svg");
list-style-image: url("../icons/document-search.svg");
}
/* Extensions for Devel */
#appmenu-developer-tools-view .subviewbutton:nth-last-child(1),
@ -317,7 +317,7 @@ panelMenuBookmarkThisPage[starred] {
list-style-image: url("chrome://global/skin/icons/help.svg");
}
#appMenu_feedbackPage {
list-style-image: url("./icons/send.svg");
list-style-image: url("../icons/send.svg");
}
#appMenu_helpSafeMode {
list-style-image: url("chrome://devtools/skin/images/debugging-workers.svg");
@ -361,17 +361,17 @@ panelMenuBookmarkThisPage[starred] {
/*= Tabbar - All Tab Menu ====================================================*/
#allTabsMenu-undoCloseTab {
list-style-image: url("./icons/undo.svg");
list-style-image: url("../icons/undo.svg");
}
#allTabsMenu-searchTabs {
list-style-image: url("chrome://global/skin/icons/search-glass.svg");
}
#allTabsMenu-containerTabsButton {
list-style-image: url("./icons/container-openin-16.svg");
list-style-image: url("../icons/container-openin-16.svg");
}
#allTabsMenu-hiddenTabsButton {
list-style-image: url("./icons/password-hide.svg");
list-style-image: url("../icons/password-hide.svg");
}
#allTabsMenu-containerTabsView .subviewbutton:last-child {
@ -413,7 +413,7 @@ panelMenuBookmarkThisPage[starred] {
#protections-popup-show-report-button > .protections-popup-show-report-icon {
/* chrome://browser/skin/controlcenter/dashboard.svg */
list-style-image: url("icons/dashboard.svg");
list-style-image: url("../icons/dashboard.svg");
}
/*= identity-popup ===========================================================*/
@ -427,7 +427,7 @@ panelMenuBookmarkThisPage[starred] {
}
#identity-popup-clear-sitedata-button {
list-style-image: url("./icons/broom.svg");
list-style-image: url("../icons/broom.svg");
}
/*= sidebarMenu-popup ========================================================*/

View file

@ -1,14 +1,14 @@
@include Option("userChrome.icon.panel") {
#appMenu-restart-button {
list-style-image: url("./icons/refresh-cw.svg") !important;
list-style-image: url("../icons/refresh-cw.svg") !important;
}
}
@include Option("userChrome.icon.menu") {
#menu_FileRestartItem {
--menuitem-image: url("./icons/refresh-cw.svg");
--menuitem-image: url("../icons/refresh-cw.svg");
}
menuitem.privatetab-icon {
--menuitem-image: url("./icons/private-favicon.svg");
--menuitem-image: url("../icons/private-favicon.svg");
}
}

View file

@ -1,29 +1,29 @@
/*= contentAreaContextMenu ===================================================*/
#context-viewsource-goToLine {
--menuitem-image: url("./icons/text-number-format.svg");
--menuitem-image: url("../icons/text-number-format.svg");
}
#context-viewsource-wrapLongLines {
/* checkbox */
/* --menuitem-image: url("./icons/arrow-sort-down-lines.svg"); */
/* --menuitem-image: url("../icons/arrow-sort-down-lines.svg"); */
}
#context-viewsource-highlightSyntax {
/* checkbox */
/* --menuitem-image: url("./icons/code.svg"); */
/* --menuitem-image: url("../icons/code.svg"); */
}
#spell-no-suggestions {
--menuitem-image: url("./icons/text-proofing-tools.svg");
--menuitem-image: url("../icons/text-proofing-tools.svg");
}
#spell-add-to-dictionary {
--menuitem-image: url("./icons/book-add.svg");
--menuitem-image: url("../icons/book-add.svg");
}
#spell-undo-add-to-dictionary {
--menuitem-image: url("./icons/undo.svg");
--menuitem-image: url("../icons/undo.svg");
}
#context-openlinkincurrent {
--menuitem-image: url("./icons/link-square.svg");
--menuitem-image: url("../icons/link-square.svg");
}
#context-openlinkincontainertab {
--menuitem-image: url("chrome://browser/skin/new-tab.svg");
@ -32,7 +32,7 @@
--menuitem-image: url("chrome://browser/skin/new-tab.svg");
}
#context-openlinkinusercontext-menu {
--menuitem-image: url("./icons/container-openin-16.svg");
--menuitem-image: url("../icons/container-openin-16.svg");
}
#context-openlink {
--menuitem-image: url("chrome://browser/skin/window.svg");
@ -48,16 +48,16 @@
--menuitem-image: url("chrome://browser/skin/save.svg");
}
#context-savelinktopocket {
--menuitem-image: url("./icons/pocket-outline.svg");
--menuitem-image: url("../icons/pocket-outline.svg");
}
#context-copyemail {
--menuitem-image: url("chrome://browser/skin/mail.svg");
}
#context-copylink {
--menuitem-image: url("./icons/link.svg");
--menuitem-image: url("../icons/link.svg");
}
#context-sendlinktodevice {
--menuitem-image: url("./icons/send-to-device.svg");
--menuitem-image: url("../icons/send-to-device.svg");
}
#context-media-play {
@ -73,11 +73,11 @@
--menuitem-image: url("chrome://global/skin/media/audio.svg");
}
#context-media-playbackrate {
--menuitem-image: url("./icons/time-picker.svg");
--menuitem-image: url("../icons/time-picker.svg");
}
#context-media-loop {
/* checkbox */
/* --menuitem-image: url("./icons/arrow-repeat-all.svg"); */
/* --menuitem-image: url("../icons/arrow-repeat-all.svg"); */
}
#context-leave-dom-fullscreen {
--menuitem-image: url("chrome://global/skin/media/fullscreenExitButton.svg");
@ -86,14 +86,14 @@
--menuitem-image: url("chrome://global/skin/media/fullscreenEnterButton.svg");
}
#context-media-hidecontrols {
--menuitem-image: url("./icons/eye-hide.svg");
--menuitem-image: url("../icons/eye-hide.svg");
}
#context-media-showcontrols {
--menuitem-image: url("./icons/eye-show.svg");
--menuitem-image: url("../icons/eye-show.svg");
}
#context-viewvideo {
--menuitem-image: url("./icons/video.svg");
--menuitem-image: url("../icons/video.svg");
}
#context-video-pictureinpicture {
/* checkbox */
@ -101,30 +101,30 @@
}
#context-reloadimage {
--menuitem-image: url("./icons/image-arrow-counterclockwise.svg");
--menuitem-image: url("../icons/image-arrow-counterclockwise.svg");
}
#context-viewimage {
--menuitem-image: url("./icons/image-add.svg");
--menuitem-image: url("../icons/image-add.svg");
}
#context-saveimage {
--menuitem-image: url("./icons/image.svg");
--menuitem-image: url("../icons/image.svg");
}
#context-video-saveimage {
--menuitem-image: url("./icons/video-snapshot.svg");
--menuitem-image: url("../icons/video-snapshot.svg");
}
#context-savevideo {
--menuitem-image: url("./icons/video.svg");
--menuitem-image: url("../icons/video.svg");
}
#context-saveaudio {
--menuitem-image: url("chrome://global/skin/media/audio.svg");
}
#context-copyimage-contents {
--menuitem-image: url("./icons/image-copy.svg");
--menuitem-image: url("../icons/image-copy.svg");
}
#context-copyimage,
#context-copyvideourl,
#context-copyaudiourl {
--menuitem-image: url("./icons/link.svg");
--menuitem-image: url("../icons/link.svg");
}
#context-sendimage,
#context-sendvideo,
@ -135,10 +135,10 @@
--menuitem-image: url("chrome://global/skin/icons/info.svg");
}
#context-viewimagedesc {
--menuitem-image: url("./icons/image-alt-text.svg");
--menuitem-image: url("../icons/image-alt-text.svg");
}
#context-setDesktopBackground {
--menuitem-image: url("./icons/resize-image.svg");
--menuitem-image: url("../icons/resize-image.svg");
}
#context-ctp-play {
--menuitem-image: url("chrome://global/skin/icons/plugin.svg");
@ -151,23 +151,23 @@
--menuitem-image: url("chrome://browser/skin/save.svg");
}
#context-pocket {
--menuitem-image: url("./icons/pocket-outline.svg");
--menuitem-image: url("../icons/pocket-outline.svg");
}
#context-sendpagetodevice {
--menuitem-image: url("./icons/send-to-device.svg");
--menuitem-image: url("../icons/send-to-device.svg");
}
#fill-login {
--menuitem-image: url("./icons/password.svg");
--menuitem-image: url("../icons/password.svg");
}
#fill-login-generated-password {
--menuitem-image: url("chrome://browser/skin/login.svg");
}
#manage-saved-logins {
--menuitem-image: url("./icons/key-multiple.svg");
--menuitem-image: url("../icons/key-multiple.svg");
}
#context-undo {
--menuitem-image: url("./icons/undo.svg");
--menuitem-image: url("../icons/undo.svg");
}
#context-redo {
}
@ -176,7 +176,7 @@
--menuitem-image: url("chrome://browser/skin/edit-cut.svg");
}
#context-copy {
--menuitem-image: url("./icons/edit-copy.svg");
--menuitem-image: url("../icons/edit-copy.svg");
}
#context-paste {
--menuitem-image: url("chrome://browser/skin/edit-paste.svg");
@ -185,7 +185,7 @@
--menuitem-image: url("chrome://global/skin/icons/delete.svg");
}
#context-selectall {
--menuitem-image: url("./icons/select-all-on.svg");
--menuitem-image: url("../icons/select-all-on.svg");
}
#context-print-selection {
--menuitem-image: url("chrome://global/skin/icons/print.svg");
@ -204,35 +204,35 @@
}
#frame {
--menuitem-image: url("./icons/command-frames.svg");
--menuitem-image: url("../icons/command-frames.svg");
}
#spell-check-enabled {
/* checkbox */
}
#spell-add-dictionaries-main {
--menuitem-image: url("./icons/book-add.svg");
--menuitem-image: url("../icons/book-add.svg");
}
#spell-dictionaries {
--menuitem-image: url("./icons/book.svg");
--menuitem-image: url("../icons/book.svg");
}
#context-bidi-text-direction-toggle {
--menuitem-image: url("./icons/text-direction-horizontal-ltr.svg");
--menuitem-image: url("../icons/text-direction-horizontal-ltr.svg");
}
#context-bidi-page-direction-toggle {
--menuitem-image: url("./icons/document-landscape-split-hint.svg");
--menuitem-image: url("../icons/document-landscape-split-hint.svg");
}
#context-viewpartialsource-selection,
#context-viewsource {
--menuitem-image: url("./icons/document-search.svg");
--menuitem-image: url("../icons/document-search.svg");
}
#context-inspect-a11y {
--menuitem-image: url("chrome://devtools/skin/images/tool-accessibility.svg");
}
#context-inspect {
--menuitem-image: url("./icons/command-pick.svg");
--menuitem-image: url("../icons/command-pick.svg");
}
#context-media-eme-learnmore {
@ -247,7 +247,7 @@
--menuitem-image: url("chrome://browser/skin/forward.svg");
}
#context-reload {
--menuitem-image: url("./icons/reload.svg");
--menuitem-image: url("../icons/reload.svg");
}
#context-stop {
--menuitem-image: url("chrome://global/skin/icons/close.svg");

View file

@ -21,7 +21,7 @@
/*= pictureInPictureToggleContextMenu ========================================*/
#pictureInPictureToggleContextMenu > menuitem[oncommand="PictureInPicture.hideToggle();"] {
--menuitem-image: url("./icons/eye-hide.svg");
--menuitem-image: url("../icons/eye-hide.svg");
}
/*= pageActionContextMenu ====================================================*/
@ -34,7 +34,7 @@
/*= customizationPanelItemContextMenu ========================================*/
#customizationPanelItemContextMenuUnpin {
--menuitem-image: url("./icons/unpin-tab.svg");
--menuitem-image: url("../icons/unpin-tab.svg");
}
.customize-context-removeFromPanel {
--menuitem-image: url("chrome://global/skin/icons/delete.svg");
@ -66,7 +66,7 @@
--menuitem-image: url("chrome://global/skin/media/play-fill.svg");
}
.downloadUnblockMenuItem {
--menuitem-image: url("./icons/checkmark-circle.svg");
--menuitem-image: url("../icons/checkmark-circle.svg");
}
.downloadUseSystemDefaultMenuItem {
--menuitem-image: url("chrome://browser/skin/open.svg");
@ -77,31 +77,31 @@
.downloadShowMenuItem {
--menuitem-image: url("chrome://global/skin/icons/folder.svg");
@include Option("userChrome.icon.library") {
--menuitem-image: url("./icons/folder.svg");
--menuitem-image: url("../icons/folder.svg");
}
}
#downloadsContextMenu > menuitem[command="downloadsCmd_openReferrer"] {
--menuitem-image: url("./icons/link-square.svg");
--menuitem-image: url("../icons/link-square.svg");
}
#downloadsContextMenu > menuitem[command="downloadsCmd_copyLocation"] {
--menuitem-image: url("./icons/link.svg");
--menuitem-image: url("../icons/link.svg");
}
.downloadDeleteFileMenuItem {
--menuitem-image: url("chrome://global/skin/icons/delete.svg");
}
.downloadRemoveFromHistoryMenuItem {
--menuitem-image: url("./icons/eraser.svg");
--menuitem-image: url("../icons/eraser.svg");
}
#downloadsContextMenu > menuitem[command="downloadsCmd_clearList"],
#downloadsContextMenu > menuitem[command="downloadsCmd_clearDownloads"] {
--menuitem-image: url("./icons/broom.svg");
--menuitem-image: url("../icons/broom.svg");
}
/*= SyncedTabsSidebarContext =================================================*/
#syncedTabsOpenSelected {
--menuitem-image: url("./icons/link-square.svg");
--menuitem-image: url("../icons/link-square.svg");
}
#syncedTabsOpenSelectedInTab {
--menuitem-image: url("chrome://browser/skin/new-tab.svg");
@ -117,11 +117,11 @@
--menuitem-image: url("chrome://browser/skin/bookmark.svg");
}
#syncedTabsCopySelected {
--menuitem-image: url("./icons/link.svg");
--menuitem-image: url("../icons/link.svg");
}
#syncedTabsOpenAllInTabs {
--menuitem-image: url("./icons/movetowindow-16.svg");
--menuitem-image: url("../icons/movetowindow-16.svg");
}
#syncedTabsManageDevices {
--menuitem-image: url("chrome://global/skin/icons/settings.svg");
@ -132,13 +132,13 @@
/*= SyncedTabsSidebarTabsFilterContext =======================================*/
#SyncedTabsSidebarTabsFilterContext > menuitem[cmd="cmd_undo"] {
--menuitem-image: url("./icons/undo.svg");
--menuitem-image: url("../icons/undo.svg");
}
#SyncedTabsSidebarTabsFilterContext > menuitem[cmd="cmd_cut"] {
--menuitem-image: url("chrome://browser/skin/edit-cut.svg");
}
#SyncedTabsSidebarTabsFilterContext > menuitem[cmd="cmd_copy"] {
--menuitem-image: url("./icons/edit-copy.svg");
--menuitem-image: url("../icons/edit-copy.svg");
}
#SyncedTabsSidebarTabsFilterContext > menuitem[cmd="cmd_paste"] {
--menuitem-image: url("chrome://browser/skin/edit-paste.svg");
@ -148,7 +148,7 @@
}
#SyncedTabsSidebarTabsFilterContext > menuitem[cmd="cmd_selectAll"] {
--menuitem-image: url("./icons/select-all-on.svg");
--menuitem-image: url("../icons/select-all-on.svg");
}
#syncedTabsRefreshFilter {
@ -157,7 +157,7 @@
/*= urlbar-input-container ===================================================*/
#urlbar-input-container .textbox-contextmenu menuitem[cmd="cmd_undo"] {
--menuitem-image: url("./icons/undo.svg");
--menuitem-image: url("../icons/undo.svg");
}
#urlbar-input-container .textbox-contextmenu menuitem[cmd="cmd_redo"] {
}
@ -166,7 +166,7 @@
--menuitem-image: url("chrome://browser/skin/edit-cut.svg");
}
#urlbar-input-container .textbox-contextmenu menuitem[cmd="cmd_copy"] {
--menuitem-image: url("./icons/edit-copy.svg");
--menuitem-image: url("../icons/edit-copy.svg");
}
#urlbar-input-container .textbox-contextmenu menuitem[cmd="cmd_paste"] {
--menuitem-image: url("chrome://browser/skin/edit-paste.svg");
@ -177,13 +177,13 @@
--menuitem-image: url("chrome://global/skin/icons/delete.svg");
}
#urlbar-input-container .textbox-contextmenu menuitem[cmd="cmd_selectAll"] {
--menuitem-image: url("./icons/select-all-on.svg");
--menuitem-image: url("../icons/select-all-on.svg");
}
/*= textbox-contextmenu ======================================================*/
/* Browser's Searchbar, Libray's Searchbar, Page Info */
.textbox-contextmenu > menuitem[data-l10n-id="text-action-undo"] {
--menuitem-image: url("./icons/undo.svg");
--menuitem-image: url("../icons/undo.svg");
}
.textbox-contextmenu > menuitem[data-l10n-id="text-action-redo"] {
}
@ -192,7 +192,7 @@
--menuitem-image: url("chrome://browser/skin/edit-cut.svg");
}
.textbox-contextmenu > menuitem[data-l10n-id="text-action-copy"] {
--menuitem-image: url("./icons/edit-copy.svg");
--menuitem-image: url("../icons/edit-copy.svg");
}
.textbox-contextmenu > menuitem[data-l10n-id="text-action-paste"] {
--menuitem-image: url("chrome://browser/skin/edit-paste.svg");
@ -201,7 +201,7 @@
--menuitem-image: url("chrome://global/skin/icons/delete.svg");
}
.textbox-contextmenu > menuitem[data-l10n-id="text-action-select-all"] {
--menuitem-image: url("./icons/select-all-on.svg");
--menuitem-image: url("../icons/select-all-on.svg");
}
/* Only searchbar */
@ -239,7 +239,7 @@ menupopup:is(#context_sendTabToDevicePopupMenu, #context-sendpagetodevice-popup)
menupopup:is(#context_sendTabToDevicePopupMenu, #context-sendpagetodevice-popup)
> .sync-menuitem.sendtab-target[clientType=""] {
--menuitem-image: url("./icons/send-to-device.svg");
--menuitem-image: url("../icons/send-to-device.svg");
}
menupopup:is(#context_sendTabToDevicePopupMenu, #context-sendpagetodevice-popup)

View file

@ -1,10 +1,10 @@
/*= placeContext =============================================================*/
#placesContext_open {
--menuitem-image: url("./icons/link-square.svg");
--menuitem-image: url("../icons/link-square.svg");
}
#placesContext_openBookmarkContainer\:tabs,
#placesContext_openBookmarkLinks\:tabs {
--menuitem-image: url("./icons/movetowindow-16.svg");
--menuitem-image: url("../icons/movetowindow-16.svg");
}
#placesContext_open\:newtab,
#placesContext_openContainer\:tabs,
@ -30,17 +30,17 @@
--menuitem-image: url("chrome://global/skin/icons/delete.svg");
}
#placesContext_deleteHost {
--menuitem-image: url("./icons/eye-hide.svg");
--menuitem-image: url("../icons/eye-hide.svg");
}
#placesContext_sortBy\:name {
--menuitem-image: url("./icons/text-sort-ascending.svg");
--menuitem-image: url("../icons/text-sort-ascending.svg");
}
#placesContext_cut {
--menuitem-image: url("chrome://browser/skin/edit-cut.svg");
}
#placesContext_copy {
--menuitem-image: url("./icons/edit-copy.svg");
--menuitem-image: url("../icons/edit-copy.svg");
}
#placesContext_paste_group {
--menuitem-image: url("chrome://browser/skin/edit-paste.svg");
@ -52,11 +52,11 @@
#placesContext_new\:folder {
--menuitem-image: url("chrome://global/skin/icons/folder.svg");
@include Option("userChrome.icon.library") {
--menuitem-image: url("./icons/folder.svg");
--menuitem-image: url("../icons/folder.svg");
}
}
#placesContext_new\:separator {
--menuitem-image: url("./icons/vertical-line.svg");
--menuitem-image: url("../icons/vertical-line.svg");
}
#placesContext_paste {
@ -68,12 +68,12 @@
}
#show-other-bookmarks_PersonalToolbar {
/* checkbox */
/* --menuitem-image: url("./icons/star-line-horizontal.svg"); */
/* --menuitem-image: url("../icons/star-line-horizontal.svg"); */
}
#placesContext_showAllBookmarks {
--menuitem-image: url("chrome://browser/skin/bookmark-star-on-tray.svg");
}
.openintabs-menuitem {
--menuitem-image: url("./icons/movetowindow-16.svg");
--menuitem-image: url("../icons/movetowindow-16.svg");
}

View file

@ -5,7 +5,7 @@
#context_reloadTab,
#context_reloadSelectedTabs {
--menuitem-image: url("./icons/reload.svg");
--menuitem-image: url("../icons/reload.svg");
}
#context_toggleMuteTab,
#context_toggleMuteSelectedTabs {
@ -17,15 +17,15 @@
}
#context_pinTab,
#context_pinSelectedTabs {
--menuitem-image: url("./icons/pin-tab.svg");
--menuitem-image: url("../icons/pin-tab.svg");
}
#context_unpinTab,
#context_unpinSelectedTabs {
--menuitem-image: url("./icons/unpin-tab.svg");
--menuitem-image: url("../icons/unpin-tab.svg");
}
#context_duplicateTab,
#context_duplicateTabs {
--menuitem-image: url("./icons/notebook-subsection.svg");
--menuitem-image: url("../icons/notebook-subsection.svg");
}
#context_bookmarkTab,
@ -33,22 +33,22 @@
--menuitem-image: url("chrome://browser/skin/bookmark.svg");
}
#context_moveTabOptions {
--menuitem-image: url("./icons/arrow-swap.svg");
--menuitem-image: url("../icons/arrow-swap.svg");
}
#context_sendTabToDevice {
--menuitem-image: url("./icons/send-to-device.svg");
--menuitem-image: url("../icons/send-to-device.svg");
}
#context_sendTabToDevice:is([disabled="true"]) + #context_shareTabURL, /* Legacy */
#context_sendTabToDevice:is([disabled="true"]) + menuitem.share-tab-url-item {
/* At windows */
--menuitem-image: url("./icons/share.svg");
--menuitem-image: url("../icons/share.svg");
}
#context_reopenInContainer {
--menuitem-image: url("./icons/container-openin-16.svg");
--menuitem-image: url("../icons/container-openin-16.svg");
}
#context_selectAllTabs {
--menuitem-image: url("./icons/tab-multiple.svg");
--menuitem-image: url("../icons/tab-multiple.svg");
}
#context_closeTab {
@ -57,13 +57,13 @@
#context_closeTabOptions {
}
#context_undoCloseTab {
--menuitem-image: url("./icons/undo.svg");
--menuitem-image: url("../icons/undo.svg");
}
/*= new-tab-button-popup =====================================================*/
#new-tab-button-popup > menuitem[command="Browser:NewUserContextTab"],
.new-tab-popup > menuitem[command="Browser:NewUserContextTab"] {
--menuitem-image: url("./icons/container-openin-16.svg");
--menuitem-image: url("../icons/container-openin-16.svg");
}
#new-tab-button-popup > menuitem[command="Browser:OpenAboutContainers"],
@ -79,14 +79,14 @@
--menuitem-image: url("chrome://global/skin/icons/delete.svg");
}
.customize-context-reportExtension {
--menuitem-image: url("./icons/send.svg");
--menuitem-image: url("../icons/send.svg");
}
.customize-context-moveToPanel {
--menuitem-image: url("chrome://browser/skin/pin-12.svg");
}
.toolbar-context-autohide-downloads-button {
--menuitem-image: url("./icons/password-hide.svg");
--menuitem-image: url("../icons/password-hide.svg");
}
.customize-context-removeFromToolbar {
--menuitem-image: url("chrome://global/skin/icons/delete.svg");
@ -97,22 +97,22 @@
#toolbar-context-reloadSelectedTab,
#toolbar-context-reloadSelectedTabs {
--menuitem-image: url("./icons/reload.svg");
--menuitem-image: url("../icons/reload.svg");
}
#toolbar-context-bookmarkSelectedTab,
#toolbar-context-bookmarkSelectedTabs {
--menuitem-image: url("chrome://browser/skin/bookmark.svg");
}
#toolbar-context-selectAllTabs {
--menuitem-image: url("./icons/tab-multiple.svg");
--menuitem-image: url("../icons/tab-multiple.svg");
}
#toolbar-context-undoCloseTab {
--menuitem-image: url("./icons/undo.svg");
--menuitem-image: url("../icons/undo.svg");
}
#toggle_toolbar-menubar {
/* checkbox */
/* --menuitem-image: url("./icons/calendar-agenda.svg"); */
/* --menuitem-image: url("../icons/calendar-agenda.svg"); */
}
#toggle_PersonalToolbar {
/* Also placeContext */

View file

@ -11,7 +11,7 @@
:-moz-any(#historyTree, #placesList, #placeContent) treechildren::-moz-tree-image(title, query, open, dayContainer),
:-moz-any(#historyTree, #placesList, #placeContent)
treechildren::-moz-tree-image(query, open, OrganizerQuery_history____v) {
list-style-image: url("./icons/history-reverse.svg") !important;
list-style-image: url("../icons/history-reverse.svg") !important;
}
/* Tag */
@ -19,7 +19,7 @@
.bookmark-item[container="true"][tagContainer="true"][open="true"],
:-moz-any(#placesList, #placeContent) treechildren::-moz-tree-image(title, query, open, tagContainer),
:-moz-any(#placesList, #placeContent) treechildren::-moz-tree-image(query, open, OrganizerQuery_tags_______v) {
list-style-image: url("./icons/tag-open.svg") !important;
list-style-image: url("../icons/tag-open.svg") !important;
}
/* Boomark */
@ -32,11 +32,11 @@
#bookmarksMenuPopup #bookmarksToolbarFolderMenu[open="true"],
:-moz-any(#bookmarks-view, #editBMPanel_folderTree, #placesList, #placeContent)
treechildren::-moz-tree-image(container, open, queryFolder_toolbar_____) {
list-style-image: url("./icons/bookmarksToolbar-open.svg") !important;
list-style-image: url("../icons/bookmarksToolbar-open.svg") !important;
}
/* Bookmark Menu */
:-moz-any(#bookmarks-view, #editBMPanel_folderTree, #placesList, #placeContent)
treechildren::-moz-tree-image(container, open, queryFolder_menu________) {
list-style-image: url("./icons/bookmarksMenu-open.svg") !important; /* or bookmarksMenu-open2.svg" */
list-style-image: url("../icons/bookmarksMenu-open.svg") !important; /* or bookmarksMenu-open2.svg" */
}

View file

@ -8,7 +8,7 @@
:-moz-any(#bookmarks-view, #editBMPanel_folderTree, #placesList, #placeContent) treechildren::-moz-tree-image(container, queryFolder_unfiled_____),
#editBMPanel_unfiledRootItem,
#editBMPanel_folderMenuList[selectedGuid="unfiled_____"] {
list-style-image: url("./icons/mail-inbox-all.svg") !important;
list-style-image: url("../icons/mail-inbox-all.svg") !important;
}
/* Other Folder - Open */
@ -19,5 +19,5 @@
treechildren::-moz-tree-image(container, open, OrganizerQuery_UnfiledBookmarks),
:-moz-any(#bookmarks-view, #editBMPanel_folderTree, #placesList, #placeContent)
treechildren::-moz-tree-image(container, open, queryFolder_unfiled_____) {
list-style-image: url("./icons/mail-inbox.svg") !important;
list-style-image: url("../icons/mail-inbox.svg") !important;
}

View file

@ -14,10 +14,10 @@
list-style-image: url("chrome://global/skin/icons/settings.svg") !important;
}
#viewMenu {
list-style-image: url("./icons/sort.svg") !important;
list-style-image: url("../icons/sort.svg") !important;
}
#maintenanceButton {
list-style-image: url("./icons/import-export.svg") !important;
list-style-image: url("../icons/import-export.svg") !important;
}
#clearDownloadsButton {

View file

@ -9,7 +9,7 @@
#editBMPanel_folderMenuList .folder-icon:not([id]),
/* Download Popup */
.downloadIconShow > .button-box > .button-icon {
list-style-image: url("./icons/folder.svg") !important;
list-style-image: url("../icons/folder.svg") !important;
}
/* Standard Folder - Open */
@ -17,5 +17,5 @@
.bookmark-item[container="true"]:not([query="true"], [tagContainer], [dayContainer])[open="true"],
:-moz-any(#bookmarks-view, #historyTree, #editBMPanel_folderTree, #placesList, #placeContent)
treechildren::-moz-tree-image(title, container, open) {
list-style-image: url("./icons/folder-open.svg") !important;
list-style-image: url("../icons/folder-open.svg") !important;
}

View file

@ -39,7 +39,7 @@ menupopup:is(#context_sendTabToDevicePopupMenu, #context-sendpagetodevice-popup)
:not(menu, #ContentSelectDropdown)
> menupopup
> menu:not(.menu-iconic, [type="checkbox"], [checked="true"], .in-menulist) {
list-style-image: var(--menuitem-image, url("./icons/blank.svg")) !important;
list-style-image: var(--menuitem-image, url("../icons/blank.svg")) !important;
}
}
@ -197,7 +197,7 @@ menupopup:is(#context_sendTabToDevicePopupMenu, #context-sendpagetodevice-popup)
menuitem:not(.menuitem-iconic, .in-menulist, [type="checkbox"], [checked="true"], .bookmark-item),
menupopup:is(#menu_FilePopup, #menu_EditPopup, #menu_viewPopup, #goPopup, #historyMenuPopup, #bookmarksMenuPopup, #menu_ToolsPopup, #menu_HelpPopup)
menu:not(.menu-iconic, .in-menulist, [type="checkbox"], [checked="true"]) {
list-style-image: var(--menuitem-image, url("./icons/blank.svg"));
list-style-image: var(--menuitem-image, url("../icons/blank.svg"));
}
*/
}

View file

@ -53,7 +53,7 @@
/* Closed Button's icon thicker */
.tabbrowser-tab .tab-content > .close-icon {
list-style-image: url("./icons/dismiss-filled.svg") !important;
list-style-image: url("../icons/dismiss-filled.svg") !important;
}
/* Closed Button's icon larger */

View file

@ -13,7 +13,7 @@
/* Corner Rounding Image */
--newtab-position: calc((var(--tab-corner-rounding) / 2) * -1);
background-image: url("./icons/tab-bottom-corner-left.svg"), url("./icons/tab-bottom-corner-right.svg");
background-image: url("../icons/tab-bottom-corner-left.svg"), url("../icons/tab-bottom-corner-right.svg");
background-repeat: no-repeat;
background-position: left var(--newtab-position) bottom var(--tabs-navbar-original-shadow-size),
right var(--newtab-position) bottom var(--tabs-navbar-original-shadow-size);

View file

@ -46,12 +46,12 @@
tab[visuallyselected] > stack::before {
left: var(--tab-corner-position) !important;
background-image: url("./icons/tab-bottom-corner-left.svg");
background-image: url("../icons/tab-bottom-corner-left.svg");
}
tab[visuallyselected] > stack::after {
left: auto;
right: var(--tab-corner-position);
background-image: url("./icons/tab-bottom-corner-right.svg");
background-image: url("../icons/tab-bottom-corner-right.svg");
}
@include OS($linux) {

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -5,7 +5,7 @@
# `./icons/` to `chrome://browser/skin/lepton/`
replace_icon_path() {
file=$1
sed -i "s/\.\/icons\//chrome:\/\/browser\/skin\/lepton\//g" "${file}"
sed -i "s/\.\.\/icons\//chrome:\/\/browser\/skin\/lepton\//g" "${file}"
}
replace_icon_path userChrome.css
replace_icon_path userContent.css
replace_icon_path css/leptonChrome.css
replace_icon_path css/leptonContent.css