autofox

browser auto-configuration
git clone https://git.awy.one/autofox
Log | Files | Refs | README

commit eea7e66c4b4435bbb833d55a4a29fa3c3bde53a2
parent 1927c02ecb0b4f441a6dbe9f76e8720757c6ed80
Author: awy <awy@awy.one>
Date:   Tue, 16 Dec 2025 19:53:49 +0300

format

Diffstat:
McatppuccinContent.css | 15++++++++-------
Mconfigure_firefox.sh | 234++++++++++++++++++++++++++++++++++++++++----------------------------------------
Mconfigure_icecat.sh | 8++++----
Mconfigure_librewolf.sh | 244++++++++++++++++++++++++++++++++++++++++----------------------------------------
MeverforestContent.css | 11++++++-----
MgruvboxContent.css | 15++++++++-------
MuserChrome.css | 546++++++++++++++++++++++++++++++++++++++++----------------------------------------
MuserChromeQB.css | 422+++++++++++++++++++++++++++++++++++++++++++++++++------------------------------
MuserContent.css | 144++++++++++++++++++++++++++++++++++++++++----------------------------------------
9 files changed, 875 insertions(+), 764 deletions(-)

diff --git a/catppuccinContent.css b/catppuccinContent.css @@ -2,13 +2,14 @@ /* this file does NOT have to be updated between versions */ /* NOTE: restart Firefox to apply any changes */ -body, html { - overflow: -moz-scrollbars-none; - scrollbar-width: none !important; +body, +html { + overflow: -moz-scrollbars-none; + scrollbar-width: none !important; } * { - scrollbar-width: none !important; + scrollbar-width: none !important; } :root { @@ -24,7 +25,7 @@ body, html { /* text color */ --in-content-page-color: #cdd6f4 !important; - --table-row-background-color-alternate:#1e1e2e !important; + --table-row-background-color-alternate: #1e1e2e !important; /* color of the tab dividers / separators */ @@ -111,6 +112,6 @@ login-filter { } ::selection { - color: #1e1e2e !important; - background: #f5c2e7 !important; + color: #1e1e2e !important; + background: #f5c2e7 !important; } diff --git a/configure_firefox.sh b/configure_firefox.sh @@ -19,221 +19,221 @@ FILES_DIR="${HOME}/files" USERNAME="$(id -nu "1000")" loginf() { - sleep "0.3" + sleep "0.3" - case "${1}" in - g) COL="${G}" MSG="DONE!" ;; - r) COL="${R}" MSG="WARNING!" ;; - b) COL="${B}" MSG="STARTING." ;; - c) COL="${B}" MSG="RUNNING." ;; - esac + case "${1}" in + g) COL="${G}" MSG="DONE!" ;; + r) COL="${R}" MSG="WARNING!" ;; + b) COL="${B}" MSG="STARTING." ;; + c) COL="${B}" MSG="RUNNING." ;; + esac - TSK="${W}(${C}${TSKNO}${P}/${C}${ALLTSK}${W})" - RAWMSG="${2}" + TSK="${W}(${C}${TSKNO}${P}/${C}${ALLTSK}${W})" + RAWMSG="${2}" - DATE="$(date "+%Y-%m-%d ${C}/${P} %H:%M:%S")" + DATE="$(date "+%Y-%m-%d ${C}/${P} %H:%M:%S")" - LOG="${C}[${P}${DATE}${C}] ${Y}>>>${COL}${MSG}${Y}<<< ${TSK} - ${COL}${RAWMSG}${N}" + LOG="${C}[${P}${DATE}${C}] ${Y}>>>${COL}${MSG}${Y}<<< ${TSK} - ${COL}${RAWMSG}${N}" - [ "${1}" = "c" ] && echo -e "\n\n${LOG}" || echo -e "${LOG}" + [ "${1}" = "c" ] && echo -e "\n\n${LOG}" || echo -e "${LOG}" } handle_err() { - stat="${?}" - cmd="${BASH_COMMAND}" - line="${LINENO}" - loginf r "Line ${B}${line}${R}: cmd ${B}'${cmd}'${R} exited with ${B}\"${stat}\"" + stat="${?}" + cmd="${BASH_COMMAND}" + line="${LINENO}" + loginf r "Line ${B}${line}${R}: cmd ${B}'${cmd}'${R} exited with ${B}\"${stat}\"" } declare -A associate_files associate_f() { - key="${1}" - url="${2}" - base_path="${3}" + key="${1}" + url="${2}" + base_path="${3}" - final_path="${base_path}/${key}" + final_path="${base_path}/${key}" - associate_files["${key}"]="${url} ${FILES_DIR}/${key} ${final_path}" + associate_files["${key}"]="${url} ${FILES_DIR}/${key} ${final_path}" } update_associations() { - associate_f "user.js" "${URL_USER_JS}" "${LIBREW_PROF_DIR}" - associate_f "updater.sh" "${URL_UPDATER_SH}" "${LIBREW_PROF_DIR}" - associate_f "user-overrides.js" "${URL_USER_OVERRIDES_JS}" "${LIBREW_PROF_DIR}" - associate_f "userChrome.css" "${URL_USERCHROME_CSS}" "${LIBREW_CHROME_DIR}" - associate_f "userContent.css" "${URL_USERCONTENT_CSS}" "${LIBREW_CHROME_DIR}" - associate_f "ublock_backup.txt" "${URL_UBLOCK_BACKUP}" "${HOME}" + associate_f "user.js" "${URL_USER_JS}" "${LIBREW_PROF_DIR}" + associate_f "updater.sh" "${URL_UPDATER_SH}" "${LIBREW_PROF_DIR}" + associate_f "user-overrides.js" "${URL_USER_OVERRIDES_JS}" "${LIBREW_PROF_DIR}" + associate_f "userChrome.css" "${URL_USERCHROME_CSS}" "${LIBREW_CHROME_DIR}" + associate_f "userContent.css" "${URL_USERCONTENT_CSS}" "${LIBREW_CHROME_DIR}" + associate_f "ublock_backup.txt" "${URL_UBLOCK_BACKUP}" "${HOME}" } update_associations move_file() { - local key="${1}" - #local custom_destination="${2:-}" - local download_path final_destination - IFS=' ' read -r _ download_path final_destination <<< "${associate_files[${key}]}" + local key="${1}" + #local custom_destination="${2:-}" + local download_path final_destination + IFS=' ' read -r _ download_path final_destination <<<"${associate_files[${key}]}" - mv -fv "${download_path}" "${final_destination}" + mv -fv "${download_path}" "${final_destination}" } progs() { - pct="$((100 * ${2} / ${1}))" - fll="$((65 * pct / 100))" - bar="" - for _ in $(seq "1" "${fll}"); do bar="${bar}${G}#${N}"; done - for _ in $(seq "$((fll + 1))" "65"); do bar="${bar}${R}-${N}"; done - printf "${bar}${P} ${pct}%%${N}\r" + pct="$((100 * ${2} / ${1}))" + fll="$((65 * pct / 100))" + bar="" + for _ in $(seq "1" "${fll}"); do bar="${bar}${G}#${N}"; done + for _ in $(seq "$((fll + 1))" "65"); do bar="${bar}${R}-${N}"; done + printf "${bar}${P} ${pct}%%${N}\r" } download_file() { - local source="${1}" - local dest="${2}" + local source="${1}" + local dest="${2}" - [ -f "${dest}" ] && { - loginf b "File ${dest} already exists, skipping download." - return - } + [ -f "${dest}" ] && { + loginf b "File ${dest} already exists, skipping download." + return + } - curl -fSLk "${source}" -o "${dest}" > "/dev/null" 2>&1 + curl -fSLk "${source}" -o "${dest}" >"/dev/null" 2>&1 } retrieve_files() { - rm -rfv "${FILES_DIR}" "${HOME}/ublock_backup.txt" - mkdir -p "${FILES_DIR}" - local total="$((${#associate_files[@]}))" - local current="0" + rm -rfv "${FILES_DIR}" "${HOME}/ublock_backup.txt" + mkdir -p "${FILES_DIR}" + local total="$((${#associate_files[@]}))" + local current="0" - for key in "${!associate_files[@]}"; do - current="$((current + 1))" - progs "${total}" "${current}" + for key in "${!associate_files[@]}"; do + current="$((current + 1))" + progs "${total}" "${current}" - IFS=' ' read -r source dest _ <<< "${associate_files[${key}]}" - download_file "${source}" "${dest}" - done + IFS=' ' read -r source dest _ <<<"${associate_files[${key}]}" + download_file "${source}" "${dest}" + done - echo "" + echo "" } create_profile() { - rm -rfv "${HOME}/.mozilla" - firefox --headless > "/dev/null" 2>&1 & - sleep "3" + rm -rfv "${HOME}/.mozilla" + firefox --headless >"/dev/null" 2>&1 & + sleep "3" - killall "firefox" + killall "firefox" } initiate_vars() { - LIBREW_CONFIG_DIR="${HOME}/.mozilla/firefox" + LIBREW_CONFIG_DIR="${HOME}/.mozilla/firefox" - LIBREW_PROF_NAME="$(sed -n "/Default=.*\(esr\|release\)$/ { s/Default=//p; q }" \ - "${LIBREW_CONFIG_DIR}/profiles.ini")" + LIBREW_PROF_NAME="$(sed -n "/Default=.*\(esr\|release\)$/ { s/Default=//p; q }" \ + "${LIBREW_CONFIG_DIR}/profiles.ini")" - LIBREW_PROF_DIR="${LIBREW_CONFIG_DIR}/${LIBREW_PROF_NAME}" - LIBREW_CHROME_DIR="${LIBREW_PROF_DIR}/chrome" + LIBREW_PROF_DIR="${LIBREW_CONFIG_DIR}/${LIBREW_PROF_NAME}" + LIBREW_CHROME_DIR="${LIBREW_PROF_DIR}/chrome" - mkdir -pv "${LIBREW_CHROME_DIR}" + mkdir -pv "${LIBREW_CHROME_DIR}" - update_associations + update_associations } place_files() { - move_file "user.js" - move_file "user-overrides.js" - move_file "updater.sh" - move_file "userChrome.css" - move_file "userContent.css" + move_file "user.js" + move_file "user-overrides.js" + move_file "updater.sh" + move_file "userChrome.css" + move_file "userContent.css" } modify_orides() { - sed -i "s|/home/.*/downloads|/home/${USERNAME}/downloads| + sed -i "s|/home/.*/downloads|/home/${USERNAME}/downloads| s/Count.*/Count\", $(nproc);/" \ - "${LIBREW_PROF_DIR}/user-overrides.js" + "${LIBREW_PROF_DIR}/user-overrides.js" } run_arkenfox() { - chmod +x "${LIBREW_PROF_DIR}/updater.sh" + chmod +x "${LIBREW_PROF_DIR}/updater.sh" - "${LIBREW_PROF_DIR}/updater.sh" -s -u + "${LIBREW_PROF_DIR}/updater.sh" -s -u } install_extensions() { - EXT_DIR="${LIBREW_PROF_DIR}/extensions" - mkdir -pv "${EXT_DIR}" + EXT_DIR="${LIBREW_PROF_DIR}/extensions" + mkdir -pv "${EXT_DIR}" - ADDON_NAMES=("ublock-origin" "violentmonkey") + ADDON_NAMES=("ublock-origin" "violentmonkey") - for ADDON_NAME in "${ADDON_NAMES[@]}"; do - ADDON_URL="$(curl -fSk "https://addons.mozilla.org/en-US/firefox/addon/${ADDON_NAME}/" | - grep -o 'https://addons.mozilla.org/firefox/downloads/file/[^"]*')" + for ADDON_NAME in "${ADDON_NAMES[@]}"; do + ADDON_URL="$(curl -fSk "https://addons.mozilla.org/en-US/firefox/addon/${ADDON_NAME}/" | + grep -o 'https://addons.mozilla.org/firefox/downloads/file/[^"]*')" - curl -fSLk "${ADDON_URL}" -o "extension.xpi" + curl -fSLk "${ADDON_URL}" -o "extension.xpi" - EXT_ID="$(unzip -p "extension.xpi" "manifest.json" | grep "\"id\"")" - EXT_ID="${EXT_ID%\"*}" - EXT_ID="${EXT_ID##*\"}" + EXT_ID="$(unzip -p "extension.xpi" "manifest.json" | grep "\"id\"")" + EXT_ID="${EXT_ID%\"*}" + EXT_ID="${EXT_ID##*\"}" - mv -fv "extension.xpi" "${EXT_DIR}/${EXT_ID}.xpi" - done + mv -fv "extension.xpi" "${EXT_DIR}/${EXT_ID}.xpi" + done } place_ublock_backup() { - move_file "ublock_backup.txt" - rm -rfv "${HOME}/files" + move_file "ublock_backup.txt" + rm -rfv "${HOME}/files" } main() { - declare -A tsks - tsks["retrieve_files"]="Retrieve the files. + declare -A tsks + tsks["retrieve_files"]="Retrieve the files. Files retrieved." - tsks["create_profile"]="Create a profile. + tsks["create_profile"]="Create a profile. A profile created." - tsks["initiate_vars"]="Initiate new variables. + tsks["initiate_vars"]="Initiate new variables. New variabeles initiated." - tsks["place_files"]="Place the necessary files. + tsks["place_files"]="Place the necessary files. The necessary files placed." - tsks["modify_orides"]="Modify overrides. + tsks["modify_orides"]="Modify overrides. Overrides modified." - tsks["run_arkenfox"]="Run the ArkenFox script. + tsks["run_arkenfox"]="Run the ArkenFox script. The Arkenfox script successful." - tsks["install_extensions"]="Install browser extensions. + tsks["install_extensions"]="Install browser extensions. Browser extensions installed." - tsks["place_ublock_backup"]="Place uBlock Backup. + tsks["place_ublock_backup"]="Place uBlock Backup. uBlock Backup placed." - tsk_ord=("retrieve_files" "create_profile" "initiate_vars" "place_files" "modify_orides" - "run_arkenfox" "install_extensions" "place_ublock_backup") + tsk_ord=("retrieve_files" "create_profile" "initiate_vars" "place_files" "modify_orides" + "run_arkenfox" "install_extensions" "place_ublock_backup") - ALLTSK="${#tsks[@]}" - TSKNO="1" + ALLTSK="${#tsks[@]}" + TSKNO="1" - trap 'handle_err' ERR RETURN + trap 'handle_err' ERR RETURN - for funct in "${tsk_ord[@]}"; do - descript="${tsks[${funct}]}" - descript="${descript%%$'\n'*}" + for funct in "${tsk_ord[@]}"; do + descript="${tsks[${funct}]}" + descript="${descript%%$'\n'*}" - msgdone="$(echo "${tsks[${funct}]}" | tail -n "1" | sed 's/^[[:space:]]*//g')" + msgdone="$(echo "${tsks[${funct}]}" | tail -n "1" | sed 's/^[[:space:]]*//g')" - loginf b "${descript}" + loginf b "${descript}" - "${funct}" - loginf g "${msgdone}" + "${funct}" + loginf g "${msgdone}" - [[ "${TSKNO}" -eq "${ALLTSK}" ]] && { - loginf g "All tsks completed." - exit - } + [[ "${TSKNO}" -eq "${ALLTSK}" ]] && { + loginf g "All tsks completed." + exit + } - ((TSKNO++)) - done + ((TSKNO++)) + done } main diff --git a/configure_icecat.sh b/configure_icecat.sh @@ -2,12 +2,12 @@ create_profile() { rm -rfv "${HOME}/.mozilla" - icecat --headless > "/dev/null" 2>&1 & + icecat --headless >"/dev/null" 2>&1 & sleep "3" killall "icecat" - icecat -CreateProfile personal --headless > "/dev/null" 2>&1 & + icecat -CreateProfile personal --headless >"/dev/null" 2>&1 & sleep "3" killall "icecat" } @@ -16,11 +16,11 @@ create_profile ICECAT_CONFIG_DIR="${HOME}/.mozilla/icecat" ICECAT_PROF_NAME="$(sed -n 's/^Path=\(.*\.default\)$/\1/p' \ - "${ICECAT_CONFIG_DIR}/profiles.ini")" + "${ICECAT_CONFIG_DIR}/profiles.ini")" ICECAT_PROF_DIR="$ICECAT_CONFIG_DIR/$ICECAT_PROF_NAME" ICECAT_PERSONAL_PROF_NAME="$(sed -n 's/^Path=\(.*\.personal\)$/\1/p' \ - "${ICECAT_CONFIG_DIR}/profiles.ini")" + "${ICECAT_CONFIG_DIR}/profiles.ini")" ICECAT_PERSONAL_PROF_DIR="$ICECAT_CONFIG_DIR/$ICECAT_PERSONAL_PROF_NAME" mkdir -pv "${ICECAT_PROF_DIR}/chrome" diff --git a/configure_librewolf.sh b/configure_librewolf.sh @@ -19,231 +19,231 @@ FILES_DIR="${HOME}/files" USERNAME="$(id -nu "1000")" loginf() { - sleep "0.3" + sleep "0.3" - case "${1}" in - g) COL="${G}" MSG="DONE!" ;; - r) COL="${R}" MSG="WARNING!" ;; - b) COL="${B}" MSG="STARTING." ;; - c) COL="${B}" MSG="RUNNING." ;; - esac + case "${1}" in + g) COL="${G}" MSG="DONE!" ;; + r) COL="${R}" MSG="WARNING!" ;; + b) COL="${B}" MSG="STARTING." ;; + c) COL="${B}" MSG="RUNNING." ;; + esac - TSK="${W}(${C}${TSKNO}${P}/${C}${ALLTSK}${W})" - RAWMSG="${2}" + TSK="${W}(${C}${TSKNO}${P}/${C}${ALLTSK}${W})" + RAWMSG="${2}" - DATE="$(date "+%Y-%m-%d ${C}/${P} %H:%M:%S")" + DATE="$(date "+%Y-%m-%d ${C}/${P} %H:%M:%S")" - LOG="${C}[${P}${DATE}${C}] ${Y}>>>${COL}${MSG}${Y}<<< ${TSK} - ${COL}${RAWMSG}${N}" + LOG="${C}[${P}${DATE}${C}] ${Y}>>>${COL}${MSG}${Y}<<< ${TSK} - ${COL}${RAWMSG}${N}" - [ "${1}" = "c" ] && echo -e "\n\n${LOG}" || echo -e "${LOG}" + [ "${1}" = "c" ] && echo -e "\n\n${LOG}" || echo -e "${LOG}" } handle_err() { - stat="${?}" - cmd="${BASH_COMMAND}" - line="${LINENO}" - loginf r "Line ${B}${line}${R}: cmd ${B}'${cmd}'${R} exited with ${B}\"${stat}\"" + stat="${?}" + cmd="${BASH_COMMAND}" + line="${LINENO}" + loginf r "Line ${B}${line}${R}: cmd ${B}'${cmd}'${R} exited with ${B}\"${stat}\"" } declare -A associate_files associate_f() { - key="${1}" - url="${2}" - base_path="${3}" + key="${1}" + url="${2}" + base_path="${3}" - final_path="${base_path}/${key}" + final_path="${base_path}/${key}" - associate_files["${key}"]="${url} ${FILES_DIR}/${key} ${final_path}" + associate_files["${key}"]="${url} ${FILES_DIR}/${key} ${final_path}" } update_associations() { - associate_f "user.js" "${URL_USER_JS}" "${LIBREW_PROF_DIR}" - associate_f "updater.sh" "${URL_UPDATER_SH}" "${LIBREW_PROF_DIR}" - associate_f "user-overrides.js" "${URL_USER_OVERRIDES_JS}" "${LIBREW_PROF_DIR}" - associate_f "userChrome.css" "${URL_USERCHROME_CSS}" "${LIBREW_CHROME_DIR}" - associate_f "userContent.css" "${URL_USERCONTENT_CSS}" "${LIBREW_CHROME_DIR}" - associate_f "ublock_backup.txt" "${URL_UBLOCK_BACKUP}" "${HOME}" + associate_f "user.js" "${URL_USER_JS}" "${LIBREW_PROF_DIR}" + associate_f "updater.sh" "${URL_UPDATER_SH}" "${LIBREW_PROF_DIR}" + associate_f "user-overrides.js" "${URL_USER_OVERRIDES_JS}" "${LIBREW_PROF_DIR}" + associate_f "userChrome.css" "${URL_USERCHROME_CSS}" "${LIBREW_CHROME_DIR}" + associate_f "userContent.css" "${URL_USERCONTENT_CSS}" "${LIBREW_CHROME_DIR}" + associate_f "ublock_backup.txt" "${URL_UBLOCK_BACKUP}" "${HOME}" } update_associations move_file() { - local key="${1}" - #local custom_destination="${2:-}" - local download_path final_destination - IFS=' ' read -r _ download_path final_destination <<< "${associate_files[${key}]}" + local key="${1}" + #local custom_destination="${2:-}" + local download_path final_destination + IFS=' ' read -r _ download_path final_destination <<<"${associate_files[${key}]}" - mv -fv "${download_path}" "${final_destination}" + mv -fv "${download_path}" "${final_destination}" } progs() { - pct="$((100 * ${2} / ${1}))" - fll="$((65 * pct / 100))" - bar="" - for _ in $(seq "1" "${fll}"); do bar="${bar}${G}#${N}"; done - for _ in $(seq "$((fll + 1))" "65"); do bar="${bar}${R}-${N}"; done - printf "${bar}${P} ${pct}%%${N}\r" + pct="$((100 * ${2} / ${1}))" + fll="$((65 * pct / 100))" + bar="" + for _ in $(seq "1" "${fll}"); do bar="${bar}${G}#${N}"; done + for _ in $(seq "$((fll + 1))" "65"); do bar="${bar}${R}-${N}"; done + printf "${bar}${P} ${pct}%%${N}\r" } download_file() { - local source="${1}" - local dest="${2}" + local source="${1}" + local dest="${2}" - [ -f "${dest}" ] && { - loginf b "File ${dest} already exists, skipping download." - return - } + [ -f "${dest}" ] && { + loginf b "File ${dest} already exists, skipping download." + return + } - curl -fSLk "${source}" -o "${dest}" > "/dev/null" 2>&1 + curl -fSLk "${source}" -o "${dest}" >"/dev/null" 2>&1 } retrieve_files() { - rm -rfv "${FILES_DIR}" "${HOME}/ublock_backup.txt" - mkdir -p "${FILES_DIR}" - local total="$((${#associate_files[@]}))" - local current="0" + rm -rfv "${FILES_DIR}" "${HOME}/ublock_backup.txt" + mkdir -p "${FILES_DIR}" + local total="$((${#associate_files[@]}))" + local current="0" - for key in "${!associate_files[@]}"; do - current="$((current + 1))" - progs "${total}" "${current}" + for key in "${!associate_files[@]}"; do + current="$((current + 1))" + progs "${total}" "${current}" - IFS=' ' read -r source dest _ <<< "${associate_files[${key}]}" - download_file "${source}" "${dest}" - done + IFS=' ' read -r source dest _ <<<"${associate_files[${key}]}" + download_file "${source}" "${dest}" + done - echo "" + echo "" } create_profile() { - rm -rfv "${HOME}/.librewolf" - librewolf --headless > "/dev/null" 2>&1 & - sleep "3" + rm -rfv "${HOME}/.librewolf" + librewolf --headless >"/dev/null" 2>&1 & + sleep "3" - killall "librewolf" + killall "librewolf" } initiate_vars() { - LIBREW_CONFIG_DIR="${HOME}/.librewolf" + LIBREW_CONFIG_DIR="${HOME}/.librewolf" - LIBREW_PROF_NAME="$(sed -n "/Default=.*\(esr\|release\)$/ { s/Default=//p; q }" \ - "${LIBREW_CONFIG_DIR}/profiles.ini")" + LIBREW_PROF_NAME="$(sed -n "/Default=.*\(esr\|release\)$/ { s/Default=//p; q }" \ + "${LIBREW_CONFIG_DIR}/profiles.ini")" - LIBREW_PROF_DIR="${LIBREW_CONFIG_DIR}/${LIBREW_PROF_NAME}" - LIBREW_CHROME_DIR="${LIBREW_PROF_DIR}/chrome" + LIBREW_PROF_DIR="${LIBREW_CONFIG_DIR}/${LIBREW_PROF_NAME}" + LIBREW_CHROME_DIR="${LIBREW_PROF_DIR}/chrome" - mkdir -pv "${LIBREW_CHROME_DIR}" + mkdir -pv "${LIBREW_CHROME_DIR}" - update_associations + update_associations } place_files() { - move_file "user.js" - move_file "user-overrides.js" - move_file "updater.sh" - move_file "userChrome.css" - move_file "userContent.css" + move_file "user.js" + move_file "user-overrides.js" + move_file "updater.sh" + move_file "userChrome.css" + move_file "userContent.css" } modify_orides() { - sed -i "s|/home/.*/downloads|/home/${USERNAME}/downloads| + sed -i "s|/home/.*/downloads|/home/${USERNAME}/downloads| s/Count.*/Count\", $(nproc);/" \ - "${LIBREW_PROF_DIR}/user-overrides.js" + "${LIBREW_PROF_DIR}/user-overrides.js" } run_arkenfox() { - chmod +x "${LIBREW_PROF_DIR}/updater.sh" + chmod +x "${LIBREW_PROF_DIR}/updater.sh" - "${LIBREW_PROF_DIR}/updater.sh" -s -u + "${LIBREW_PROF_DIR}/updater.sh" -s -u } install_extensions() { - EXT_DIR="${LIBREW_PROF_DIR}/extensions" - mkdir -pv "${EXT_DIR}" + EXT_DIR="${LIBREW_PROF_DIR}/extensions" + mkdir -pv "${EXT_DIR}" - ADDON_NAMES=("ublock-origin") + ADDON_NAMES=("ublock-origin") - for ADDON_NAME in "${ADDON_NAMES[@]}"; do - ADDON_URL="$(curl -fSk "https://addons.mozilla.org/en-US/firefox/addon/${ADDON_NAME}/" | - grep -o 'https://addons.mozilla.org/firefox/downloads/file/[^"]*')" + for ADDON_NAME in "${ADDON_NAMES[@]}"; do + ADDON_URL="$(curl -fSk "https://addons.mozilla.org/en-US/firefox/addon/${ADDON_NAME}/" | + grep -o 'https://addons.mozilla.org/firefox/downloads/file/[^"]*')" - curl -fSLk "${ADDON_URL}" -o "extension.xpi" + curl -fSLk "${ADDON_URL}" -o "extension.xpi" - EXT_ID="$(unzip -p "extension.xpi" "manifest.json" | grep "\"id\"")" - EXT_ID="${EXT_ID%\"*}" - EXT_ID="${EXT_ID##*\"}" + EXT_ID="$(unzip -p "extension.xpi" "manifest.json" | grep "\"id\"")" + EXT_ID="${EXT_ID%\"*}" + EXT_ID="${EXT_ID##*\"}" - mv -fv "extension.xpi" "${EXT_DIR}/${EXT_ID}.xpi" - done + mv -fv "extension.xpi" "${EXT_DIR}/${EXT_ID}.xpi" + done } install_bypass_paywalls() { - curl -fSLk "${URL_BYPASS_PAYWALLS}" -o "extension.xpi" + curl -fSLk "${URL_BYPASS_PAYWALLS}" -o "extension.xpi" - EXT_ID="$(unzip -p "extension.xpi" "manifest.json" | grep "\"id\"")" - EXT_ID="${EXT_ID%\"*}" - EXT_ID="${EXT_ID##*\"}" + EXT_ID="$(unzip -p "extension.xpi" "manifest.json" | grep "\"id\"")" + EXT_ID="${EXT_ID%\"*}" + EXT_ID="${EXT_ID##*\"}" - mv -fv "extension.xpi" "${EXT_DIR}/${EXT_ID}.xpi" + mv -fv "extension.xpi" "${EXT_DIR}/${EXT_ID}.xpi" } place_ublock_backup() { - move_file "ublock_backup.txt" - rm -rfv "${HOME}/files" + move_file "ublock_backup.txt" + rm -rfv "${HOME}/files" } main() { - declare -A tsks - tsks["retrieve_files"]="Retrieve the files. + declare -A tsks + tsks["retrieve_files"]="Retrieve the files. Files retrieved." - tsks["create_profile"]="Create a profile. + tsks["create_profile"]="Create a profile. A profile created." - tsks["initiate_vars"]="Initiate new variables. + tsks["initiate_vars"]="Initiate new variables. New variabeles initiated." - tsks["place_files"]="Place the necessary files. + tsks["place_files"]="Place the necessary files. The necessary files placed." - tsks["modify_orides"]="Modify overrides. + tsks["modify_orides"]="Modify overrides. Overrides modified." - tsks["run_arkenfox"]="Run the ArkenFox script. + tsks["run_arkenfox"]="Run the ArkenFox script. The Arkenfox script successful." - tsks["install_extensions"]="Install browser extensions. + tsks["install_extensions"]="Install browser extensions. Browser extensions installed." - tsks["place_ublock_backup"]="Place uBlock Backup. + tsks["place_ublock_backup"]="Place uBlock Backup. uBlock Backup placed." - tsk_ord=("retrieve_files" "create_profile" "initiate_vars" "place_files" "modify_orides" - "run_arkenfox" "install_extensions" "place_ublock_backup") + tsk_ord=("retrieve_files" "create_profile" "initiate_vars" "place_files" "modify_orides" + "run_arkenfox" "install_extensions" "place_ublock_backup") - ALLTSK="${#tsks[@]}" - TSKNO="1" + ALLTSK="${#tsks[@]}" + TSKNO="1" - trap 'handle_err' ERR RETURN + trap 'handle_err' ERR RETURN - for funct in "${tsk_ord[@]}"; do - descript="${tsks[${funct}]}" - descript="${descript%%$'\n'*}" + for funct in "${tsk_ord[@]}"; do + descript="${tsks[${funct}]}" + descript="${descript%%$'\n'*}" - msgdone="$(echo "${tsks[${funct}]}" | tail -n "1" | sed 's/^[[:space:]]*//g')" + msgdone="$(echo "${tsks[${funct}]}" | tail -n "1" | sed 's/^[[:space:]]*//g')" - loginf b "${descript}" + loginf b "${descript}" - "${funct}" - loginf g "${msgdone}" + "${funct}" + loginf g "${msgdone}" - [[ "${TSKNO}" -eq "${ALLTSK}" ]] && { - loginf g "All tsks completed." - kill "0" > "/dev/null" - } + [[ "${TSKNO}" -eq "${ALLTSK}" ]] && { + loginf g "All tsks completed." + kill "0" >"/dev/null" + } - ((TSKNO++)) - done + ((TSKNO++)) + done } main diff --git a/everforestContent.css b/everforestContent.css @@ -2,13 +2,14 @@ /* this file does NOT have to be updated between versions */ /* NOTE: restart Firefox to apply any changes */ -body, html { - overflow: -moz-scrollbars-none; - scrollbar-width: none !important; +body, +html { + overflow: -moz-scrollbars-none; + scrollbar-width: none !important; } * { - scrollbar-width: none !important; + scrollbar-width: none !important; } :root { @@ -24,7 +25,7 @@ body, html { /* text color */ --in-content-page-color: #d3c6aa !important; - --table-row-background-color-alternate:#1e2326 !important; + --table-row-background-color-alternate: #1e2326 !important; /* color of the tab dividers / separators */ diff --git a/gruvboxContent.css b/gruvboxContent.css @@ -2,13 +2,14 @@ /* this file does NOT have to be updated between versions */ /* NOTE: restart Firefox to apply any changes */ -body, html { - overflow: -moz-scrollbars-none; - scrollbar-width: none !important; +body, +html { + overflow: -moz-scrollbars-none; + scrollbar-width: none !important; } * { - scrollbar-width: none !important; + scrollbar-width: none !important; } :root { @@ -24,7 +25,7 @@ body, html { /* text color */ --in-content-page-color: #ebdbb2 !important; - --table-row-background-color-alternate:#282828 !important; + --table-row-background-color-alternate: #282828 !important; /* color of the tab dividers / separators */ @@ -111,6 +112,6 @@ login-filter { } ::selection { - color: #282828 !important; - background: #fabd2f !important; + color: #282828 !important; + background: #fabd2f !important; } diff --git a/userChrome.css b/userChrome.css @@ -7,31 +7,31 @@ :root { - /* custom accent color to be used across Firefox*/ - /* use hexcode or color name */ - --custom-accent-color: #fabd2f; + /* custom accent color to be used across Firefox*/ + /* use hexcode or color name */ + --custom-accent-color: #fabd2f; - /* color of the tab dividers / separators */ - /* set variable = none, to disable dividers */ - --custom-tab-divider-color: none; + /* color of the tab dividers / separators */ + /* set variable = none, to disable dividers */ + --custom-tab-divider-color: none; - /* sets the height of the tabs toolbar */ - /* legacy height (<= v1.6.2) = 33px */ - /* functionality broken as of FF 108 - WIP */ - /* --tab-bar-height: 35px; */ + /* sets the height of the tabs toolbar */ + /* legacy height (<= v1.6.2) = 33px */ + /* functionality broken as of FF 108 - WIP */ + /* --tab-bar-height: 35px; */ - /* set the size of sync profile pic */ - /* 1.0 = 100% scale */ - --sync-avatar-scale: 1.0; + /* set the size of sync profile pic */ + /* 1.0 = 100% scale */ + --sync-avatar-scale: 1.0; - /* custom paddings/margins for the menu itmes */ - /* for reference: */ - --custom-menuitem-padding-vertical: 6px; - --custom-menuitem-padding-horizontal: 8px; - --custom-menuitem-margin: 4px; + /* custom paddings/margins for the menu itmes */ + /* for reference: */ + --custom-menuitem-padding-vertical: 6px; + --custom-menuitem-padding-horizontal: 8px; + --custom-menuitem-margin: 4px; } @@ -40,84 +40,84 @@ /* CUSTOM ACCENT COLORS -------------------------------------------------------------------------------------- */ :root { - --lwt-toolbarbutton-icon-fill-attention: var(--custom-accent-color, #0a84ff) !important; - --toolbarbutton-icon-fill-attention: var(--custom-accent-color, #0a84ff) !important; - --button-primary-bgcolor: var(--custom-accent-color, #0a84ff) !important; - --button-primary-hover-bgcolor: color-mix(in srgb, white 50%, var(--custom-accent-color, #0a84ff)) !important; - --button-primary-active-bgcolor: color-mix(in srgb, white 65%, var(--custom-accent-color, #0a84ff)) !important; - --buttons-primary-button-bgcolor: var(--custom-accent-color, #0a84ff) !important; - --buttons-primary-button-hover-bgcolor: color-mix(in srgb, white 50%, var(--custom-accent-color, #0a84ff)) !important; - --buttons-primary-button-active-bgcolor: color-mix(in srgb, white 65%, var(--custom-accent-color, #0a84ff)) !important; - --button-background-color-primary: var(--custom-accent-color, #0a84ff) !important; - --button-background-color-primary-hover: color-mix(in srgb, white 50%, var(--custom-accent-color, #0a84ff)) !important; - --button-background-color-primary-active: color-mix(in srgb, white 65%, var(--custom-accent-color, #0a84ff)) !important; - --brand-color-accent: var(--custom-accent-color, #0a84ff) !important; - --brand-color-accent-hover: color-mix(in srgb, white 50%, var(--custom-accent-color, #0a84ff)) !important; - --brand-color-accent-active: var(--custom-accent-color, #0a84ff) !important; - --color-accent-primary: var(--custom-accent-color, #0a84ff) !important; - --color-accent-primary-hover: color-mix(in srgb, white 50%, var(--custom-accent-color, #0a84ff)) !important; - --color-accent-primary-pressed: color-mix(in srgb, white 65%, var(--custom-accent-color, #0a84ff)) !important; - --tab-attention-icon-color: var(--custom-accent-color, #0a84ff) !important; - --checkbox-checked-bgcolor: var(--custom-accent-color, #0a84ff) !important; - --checkbox-checked-hover-bgcolor: color-mix(in srgb, white 50%, var(--custom-accent-color, #0a84ff)) !important; - --checkbox-checked-active-bgcolor: color-mix(in srgb, white 65%, var(--custom-accent-color, #0a84ff)) !important; - --lwt-brighttext-url-color: var(--custom-accent-color, #0a84ff) !important; - --lwt-popup-brighttext-url-color: var(--custom-accent-color, #0a84ff) !important; - --focus-outline-color: var(--custom-accent-color, #0a84ff) !important; - --toolbar-field-focus-border-color: var(--custom-accent-color, #0a84ff) !important; - --link-color: var(--custom-accent-color, #0a84ff) !important; - /*Star Highlight & Download Finished*/ - --lwt-toolbarbutton-icon-fill-attention: var(--custom-accent-color, #0a84ff) !important; - --lwt-toolbar-field-icon-fill-attention: var(--custom-accent-color, #0a84ff) !important; + --lwt-toolbarbutton-icon-fill-attention: var(--custom-accent-color, #0a84ff) !important; + --toolbarbutton-icon-fill-attention: var(--custom-accent-color, #0a84ff) !important; + --button-primary-bgcolor: var(--custom-accent-color, #0a84ff) !important; + --button-primary-hover-bgcolor: color-mix(in srgb, white 50%, var(--custom-accent-color, #0a84ff)) !important; + --button-primary-active-bgcolor: color-mix(in srgb, white 65%, var(--custom-accent-color, #0a84ff)) !important; + --buttons-primary-button-bgcolor: var(--custom-accent-color, #0a84ff) !important; + --buttons-primary-button-hover-bgcolor: color-mix(in srgb, white 50%, var(--custom-accent-color, #0a84ff)) !important; + --buttons-primary-button-active-bgcolor: color-mix(in srgb, white 65%, var(--custom-accent-color, #0a84ff)) !important; + --button-background-color-primary: var(--custom-accent-color, #0a84ff) !important; + --button-background-color-primary-hover: color-mix(in srgb, white 50%, var(--custom-accent-color, #0a84ff)) !important; + --button-background-color-primary-active: color-mix(in srgb, white 65%, var(--custom-accent-color, #0a84ff)) !important; + --brand-color-accent: var(--custom-accent-color, #0a84ff) !important; + --brand-color-accent-hover: color-mix(in srgb, white 50%, var(--custom-accent-color, #0a84ff)) !important; + --brand-color-accent-active: var(--custom-accent-color, #0a84ff) !important; + --color-accent-primary: var(--custom-accent-color, #0a84ff) !important; + --color-accent-primary-hover: color-mix(in srgb, white 50%, var(--custom-accent-color, #0a84ff)) !important; + --color-accent-primary-pressed: color-mix(in srgb, white 65%, var(--custom-accent-color, #0a84ff)) !important; + --tab-attention-icon-color: var(--custom-accent-color, #0a84ff) !important; + --checkbox-checked-bgcolor: var(--custom-accent-color, #0a84ff) !important; + --checkbox-checked-hover-bgcolor: color-mix(in srgb, white 50%, var(--custom-accent-color, #0a84ff)) !important; + --checkbox-checked-active-bgcolor: color-mix(in srgb, white 65%, var(--custom-accent-color, #0a84ff)) !important; + --lwt-brighttext-url-color: var(--custom-accent-color, #0a84ff) !important; + --lwt-popup-brighttext-url-color: var(--custom-accent-color, #0a84ff) !important; + --focus-outline-color: var(--custom-accent-color, #0a84ff) !important; + --toolbar-field-focus-border-color: var(--custom-accent-color, #0a84ff) !important; + --link-color: var(--custom-accent-color, #0a84ff) !important; + /*Star Highlight & Download Finished*/ + --lwt-toolbarbutton-icon-fill-attention: var(--custom-accent-color, #0a84ff) !important; + --lwt-toolbar-field-icon-fill-attention: var(--custom-accent-color, #0a84ff) !important; } .urlbarView-url, .popup-notification-learnmore-link.text-link { - color: var(--custom-accent-color, #0a84ff) !important; + color: var(--custom-accent-color, #0a84ff) !important; } /* colors various popup windows (e.g. edit bookmarks, close window menus) */ @-moz-document regexp("^(about:|chrome:|moz-extension:).*") { - html:not([role="dialog"]), - html:not([role="dialog"]) *, - html:not([role="dialog"]) body.activity-stream, - window:not([chromehidden]), - window:not([chromehidden])>dialog { - --in-content-primary-button-background: var(--custom-accent-color, #0a84ff) !important; - --in-content-primary-button-background-hover: color-mix(in srgb, white 50%, var(--custom-accent-color, #0a84ff)) !important; - --in-content-primary-button-background-active: color-mix(in srgb, white 65%, var(--custom-accent-color, #0a84ff)) !important; - } + html:not([role="dialog"]), + html:not([role="dialog"]) *, + html:not([role="dialog"]) body.activity-stream, + window:not([chromehidden]), + window:not([chromehidden])>dialog { + --in-content-primary-button-background: var(--custom-accent-color, #0a84ff) !important; + --in-content-primary-button-background-hover: color-mix(in srgb, white 50%, var(--custom-accent-color, #0a84ff)) !important; + --in-content-primary-button-background-active: color-mix(in srgb, white 65%, var(--custom-accent-color, #0a84ff)) !important; + } } /* color report broken side link */ #report-broken-site-popup-send-more-info-link { - color: var(--custom-accent-color, #0a84ff) !important; + color: var(--custom-accent-color, #0a84ff) !important; } /* color the update/info dot in app menu */ :root { - --panel-banner-item-info-icon-bgcolor: var(--custom-accent-color, #0a84ff) !important; - --panel-banner-item-update-supported-bgcolor: var(--custom-accent-color, #0a84ff) !important; + --panel-banner-item-info-icon-bgcolor: var(--custom-accent-color, #0a84ff) !important; + --panel-banner-item-update-supported-bgcolor: var(--custom-accent-color, #0a84ff) !important; } /* color the left strip in notification banners (purple-yellow gradient -> accent color) */ .infobar::before { - background-image: linear-gradient(var(--custom-accent-color, #0a84ff), var(--custom-accent-color, #0a84ff)) !important; + background-image: linear-gradient(var(--custom-accent-color, #0a84ff), var(--custom-accent-color, #0a84ff)) !important; } /* color the password autofill highlight color on click */ .autocomplete-richlistitem { - &[selected] { - background-color: color-mix(in srgb, white 15%, var(--custom-accent-color, #0a84ff)) !important; - } + &[selected] { + background-color: color-mix(in srgb, white 15%, var(--custom-accent-color, #0a84ff)) !important; + } } /* color the "manage themes" link on the customize page */ #customization-lwtheme-link.text-link { - color: var(--custom-accent-color, #0a84ff) !important; + color: var(--custom-accent-color, #0a84ff) !important; } /* replace the mozilla purple to yellow gradient in appmenu */ @@ -130,15 +130,15 @@ :root[style*="--lwt-accent-color: rgb(28, 27, 34); --lwt-text-color: rgba(251, 251, 254);"] /* Dark Theme */ - { - --panel-separator-zap-gradient: linear-gradient(var(--custom-accent-color, #0a84ff), var(--custom-accent-color, #0a84ff)) !important; + { + --panel-separator-zap-gradient: linear-gradient(var(--custom-accent-color, #0a84ff), var(--custom-accent-color, #0a84ff)) !important; } /* can be manually overridden by pref */ @media (-moz-bool-pref: "browser.appmenugradient.overwrite") { - :root { - --panel-separator-zap-gradient: linear-gradient(var(--custom-accent-color, #0a84ff), var(--custom-accent-color, #0a84ff)) !important; - } + :root { + --panel-separator-zap-gradient: linear-gradient(var(--custom-accent-color, #0a84ff), var(--custom-accent-color, #0a84ff)) !important; + } } @@ -146,32 +146,32 @@ /* override mozilla min/max/close buttons with default ones (only relevant on linux) */ @media (-moz-gtk-csd-available) { - @media (-moz-bool-pref: "browser.windowcontrolbuttons.overwrite") { - .titlebar-button:-moz-lwtheme { - appearance: auto !important; - } + @media (-moz-bool-pref: "browser.windowcontrolbuttons.overwrite") { + .titlebar-button:-moz-lwtheme { + appearance: auto !important; + } - .titlebar-min:-moz-lwtheme, - .titlebar-max:-moz-lwtheme, - .titlebar-restore:-moz-lwtheme, - .titlebar-close:-moz-lwtheme { - list-style-image: none !important; - } + .titlebar-min:-moz-lwtheme, + .titlebar-max:-moz-lwtheme, + .titlebar-restore:-moz-lwtheme, + .titlebar-close:-moz-lwtheme { + list-style-image: none !important; + } - .titlebar-button:-moz-lwtheme:hover, - .titlebar-button:-moz-lwtheme:hover:active { - background-color: unset !important; - color: unset !important; - } - } + .titlebar-button:-moz-lwtheme:hover, + .titlebar-button:-moz-lwtheme:hover:active { + background-color: unset !important; + color: unset !important; + } + } } /* remove window corner rounding in gtk */ :root[tabsintitlebar][sizemode="normal"]:not([gtktiledwindow="true"]) #navigator-toolbox:-moz-lwtheme, :root[tabsintitlebar][sizemode="normal"]:not([gtktiledwindow="true"]) ::backdrop { - border-top-left-radius: 0 !important; - border-top-right-radius: 0 !important; + border-top-left-radius: 0 !important; + border-top-right-radius: 0 !important; } @@ -191,185 +191,185 @@ otherwise will change height when tabs overflow [FIXED] */ /* .tabbrowser-tab {height: var(--tab-bar-height, 35px) !important;} */ #tabbrowser-tabs { - min-height: 0 !important; + min-height: 0 !important; } /* Reduce left spacer on tab bar */ @supports (not (-moz-osx-font-smoothing: auto)) { - @media not (-moz-bool-pref:"browser.lefttabspacer.enable") { - .titlebar-spacer[type="pre-tabs"] { - display: none !important; - } - } + @media not (-moz-bool-pref:"browser.lefttabspacer.enable") { + .titlebar-spacer[type="pre-tabs"] { + display: none !important; + } + } } /* Tab - Connect to window */ .tab-background { - border-radius: 0 !important; - margin-top: 0 !important; - margin-bottom: 0 !important; + border-radius: 0 !important; + margin-top: 0 !important; + margin-bottom: 0 !important; } .tab-content { - margin-top: 0 !important; - margin-bottom: 0 !important; + margin-top: 0 !important; + margin-bottom: 0 !important; } .tab-stack { - margin-top: 0 !important; - margin-bottom: 0 !important; + margin-top: 0 !important; + margin-bottom: 0 !important; } /* adds the little colored strip on top of the selected tab */ .tab-background:is([selected], [multiselected]) { - box-shadow: inset 0 2px var(--custom-accent-color, #0a84ff) !important; - border: 0 !important; - outline: none !important; - background-repeat: no-repeat !important; + box-shadow: inset 0 2px var(--custom-accent-color, #0a84ff) !important; + border: 0 !important; + outline: none !important; + background-repeat: no-repeat !important; } /* special handling for mozilla containers */ tab[class*="identity-color"] { - background-image: linear-gradient(var(--identity-tab-color, white), var(--identity-tab-color, white)); - background-size: 75% var(--container-stripe-height, 1px); - background-position: bottom center; - background-repeat: no-repeat; - border: 0 !important; - outline: none !important; + background-image: linear-gradient(var(--identity-tab-color, white), var(--identity-tab-color, white)); + background-size: 75% var(--container-stripe-height, 1px); + background-position: bottom center; + background-repeat: no-repeat; + border: 0 !important; + outline: none !important; } /* override the built in container colors */ tab[class*="identity-color"][selected="true"]>.tab-stack>.tab-background>.tab-context-line { - height: 0 !important; + height: 0 !important; } /* replace with our own container border */ tab[class*="identity-color"][selected="true"]>.tab-stack>.tab-background:is([selected], [multiselected]) { - background-image: linear-gradient(var(--identity-tab-color, white), var(--identity-tab-color, white)); - background-size: 75% var(--container-stripe-height, 1px); - background-position: bottom center; - background-repeat: no-repeat; - border: 0 !important; - outline: none !important; + background-image: linear-gradient(var(--identity-tab-color, white), var(--identity-tab-color, white)); + background-size: 75% var(--container-stripe-height, 1px); + background-position: bottom center; + background-repeat: no-repeat; + border: 0 !important; + outline: none !important; } @media (-moz-bool-pref:"browser.tabcontextline.match_container_color") { - tab[class*="identity-color"][selected="true"]>.tab-stack>.tab-background:is([selected], [multiselected]) { - box-shadow: inset 0 2px var(--identity-tab-color, white) !important; - } + tab[class*="identity-color"][selected="true"]>.tab-stack>.tab-background:is([selected], [multiselected]) { + box-shadow: inset 0 2px var(--identity-tab-color, white) !important; + } } /* realign the selected tab so it doesnt droop down by 2px */ .tabbrowser-tab[selected="true"] { - z-index: 0 !important; + z-index: 0 !important; } /* neighbouring tabs should "pinch" together */ .tabbrowser-tab { - padding-inline: 0 !important; + padding-inline: 0 !important; } /* Unselected Tab - Divide line */ .tab-stack::before, .tabbrowser-tab:last-of-type .tab-stack::after { - content: ""; + content: ""; } .tab-stack::before, .tab-stack::after { - display: block; - position: absolute; - top: 50%; - transform: translateY(-50%); - z-index: 1; - width: 0px; - height: 100%; - border-right: 1px solid var(--custom-tab-divider-color, #535354); + display: block; + position: absolute; + top: 50%; + transform: translateY(-50%); + z-index: 1; + width: 0px; + height: 100%; + border-right: 1px solid var(--custom-tab-divider-color, #535354); } .tab-stack::after { - right: 0; + right: 0; } /* removes double tab line next to view button, fixes some padding */ :root:not([privatebrowsingmode], [firefoxviewhidden]) :is(toolbarbutton, toolbarpaletteitem)+#tabbrowser-tabs { - border-inline-start: None !important; - padding-inline-start: calc(var(--tab-overflow-pinned-tabs-width) + 0px) !important; - margin-inline-start: 0 !important; + border-inline-start: None !important; + padding-inline-start: calc(var(--tab-overflow-pinned-tabs-width) + 0px) !important; + margin-inline-start: 0 !important; } /* squares the mute button on hover */ .tab-icon-overlay:not([pinned], [sharing], [crashed]):is([soundplaying], [muted], [activemedia-blocked]) { - border-radius: 0 !important; + border-radius: 0 !important; } /* new sidebar tabs */ moz-button, :host { - --button-border-radius: 0 !important; + --button-border-radius: 0 !important; } /* NAV BAR ---------------------------------------------------------------------------------------------------- */ :root { - /* reduce padding between menu items */ - --arrowpanel-menuitem-padding: var(--custom-menuitem-padding-vertical, 6px) var(--custom-menuitem-padding-horizontal, 8px) !important; - --arrowpanel-menuitem-margin: 0 var(--custom-menuitem-margin, 4px) !important; - --panel-subview-body-padding: var(--custom-menuitem-margin, 4px) 0 !important; + /* reduce padding between menu items */ + --arrowpanel-menuitem-padding: var(--custom-menuitem-padding-vertical, 6px) var(--custom-menuitem-padding-horizontal, 8px) !important; + --arrowpanel-menuitem-margin: 0 var(--custom-menuitem-margin, 4px) !important; + --panel-subview-body-padding: var(--custom-menuitem-margin, 4px) 0 !important; - /* square the off most of the UI (selection buttons on hover, context menus, hamburger menus, etc) */ - --toolbarbutton-border-radius: 0 !important; - --arrowpanel-menuitem-border-radius: 0 !important; - --arrowpanel-border-radius: 0 !important; - --tab-border-radius: 0 !important; - --subviewbutton-border-radius: 0 !important; + /* square the off most of the UI (selection buttons on hover, context menus, hamburger menus, etc) */ + --toolbarbutton-border-radius: 0 !important; + --arrowpanel-menuitem-border-radius: 0 !important; + --arrowpanel-border-radius: 0 !important; + --tab-border-radius: 0 !important; + --subviewbutton-border-radius: 0 !important; } /* squares the profile picture on toolbar if logged into sync AND not disabled by pref */ @media not (-moz-bool-pref:"browser.syncavatar.round") { - #fxa-avatar-image { - border-radius: 0 !important; - } + #fxa-avatar-image { + border-radius: 0 !important; + } } /* scales the profile picture, since it is quite small */ #fxa-avatar-image { - transform: scale(var(--sync-avatar-scale)) !important; + transform: scale(var(--sync-avatar-scale)) !important; } /* option to hide extensions button */ @media (-moz-bool-pref:"browser.unifiedextensions.hide") { - #unified-extensions-button { - display: none - } + #unified-extensions-button { + display: none + } } /* option to hide the extentions notification dot */ @media (-moz-bool-pref:"browser.extensionsdot.hide") { - #unified-extensions-button[attention]>.toolbarbutton-icon { - background-image: None !important; - } + #unified-extensions-button[attention]>.toolbarbutton-icon { + background-image: None !important; + } } /* SUB MENUS --------------------------------------------------------------------------------------------- */ /* more padding code for sub menus */ .panel-header { - padding: var(--custom-menuitem-margin, 4px) !important; - padding-bottom: 0 !important; + padding: var(--custom-menuitem-margin, 4px) !important; + padding-bottom: 0 !important; } .subviewbutton-back { - margin: 0 0 !important; + margin: 0 0 !important; } @@ -379,12 +379,12 @@ moz-button, .panel-arrowbox, .panel-arrowscrollbox, menupopup { - border-radius: 0 !important; + border-radius: 0 !important; } #report-broken-site-popup-url, #report-broken-site-popup-description { - border-radius: 0 !important; + border-radius: 0 !important; } /* removes rounded corner from selection boxes and autocomplete popups */ @@ -393,106 +393,106 @@ menupopup menu, menupopup, panel, menulist { - border-radius: 0 !important; - --panel-border-radius: 0 !important; + border-radius: 0 !important; + --panel-border-radius: 0 !important; } /* square input fields in the edit bookmarks menu */ #editBMPanel_namePicker { - border-radius: 0 !important; + border-radius: 0 !important; } #editBMPanel_folderMenuList { - border-radius: 0 !important; + border-radius: 0 !important; } #editBMPanel_tagsField { - border-radius: 0 !important; + border-radius: 0 !important; } #editBMPanel_tagsSelector { - border-radius: 0 !important; + border-radius: 0 !important; } #editBMPanel_locationField { - border-radius: 0 !important; + border-radius: 0 !important; } #editBMPanel_keywordField { - border-radius: 0 !important; + border-radius: 0 !important; } /* square off aspects of the download menu (i.e. selection boxes, open in folder button) */ .download-state, .downloadButton { - border-radius: 0 !important; + border-radius: 0 !important; } .downloadProgress { - border-radius: 0 !important; - overflow: hidden !important; + border-radius: 0 !important; + overflow: hidden !important; } .downloadProgress[paused] { - border-radius: 0 !important; + border-radius: 0 !important; } .downloadProgress:not([value="0"])::-moz-progress-bar { - border-radius: 0 !important; + border-radius: 0 !important; } .downloadProgress::-moz-progress-bar { - border-radius: 0 !important; + border-radius: 0 !important; } .downloadProgress[paused]::-moz-progress-bar { - border-radius: 0 !important; + border-radius: 0 !important; } /* square off the toggle switch for "enhanced tracking protection" */ .protections-popup-tp-switch, .protections-popup-tp-switch::before { - border-radius: 0 !important; + border-radius: 0 !important; } .toggle-button, .toggle-button::before { - border-radius: 0 !important; + border-radius: 0 !important; } /* square the permissions popup (e.g. autoplay blocked) */ #permission-popup-menulist { - border-radius: 0 !important; + border-radius: 0 !important; } /* square permission popups for webRTC (screen sharing and voice) */ #webRTC-selectMicrophone-menulist { - border-radius: 0 !important; + border-radius: 0 !important; } #webRTC-selectWindow-menulist { - border-radius: 0 !important; + border-radius: 0 !important; } #webRTC-previewVideo { - border-radius: 0 !important; + border-radius: 0 !important; } /* square the fullscreen and zoom reset */ #appMenu-zoomReset-button2>.toolbarbutton-text, #appMenu-fullscreen-button2>.toolbarbutton-icon { - border-radius: 0 !important; + border-radius: 0 !important; } /* square the selection in the "List All Tabs" menu */ .all-tabs-item { - border-radius: 0 !important; - margin-inline: var(--custom-menuitem-margin, 4px) !important; + border-radius: 0 !important; + margin-inline: var(--custom-menuitem-margin, 4px) !important; } @@ -500,142 +500,142 @@ menulist { /* square "close tabs and quit" window and buttons (and prob other dialog boxes) */ .dialogBox { - border-radius: 0 !important; + border-radius: 0 !important; } button { - border-radius: 0 !important; + border-radius: 0 !important; } /* square checkboxes */ .checkbox-check { - border-radius: 0 !important; + border-radius: 0 !important; } #checkbox { - border-radius: 0 !important; + border-radius: 0 !important; } /* square dropdown selection and autocompete boxes */ select { - border-radius: 0 !important; + border-radius: 0 !important; } :is(panel, menupopup)::part(content) { - border-radius: 0 !important; + border-radius: 0 !important; } /* square selections, checkboxes, and nav buttons on the print page */ .toggle-group-label { - border-radius: 0 !important; + border-radius: 0 !important; } .photon-number { - border-radius: 0 !important; + border-radius: 0 !important; } #headers-footers-enabled { - border-radius: 0 !important; + border-radius: 0 !important; } #backgrounds-enabled { - border-radius: 0 !important; + border-radius: 0 !important; } .toolbarButton:not(:hover) { - background-color: #2b2a33 !important; + background-color: #2b2a33 !important; } #custom-range { - border-radius: 0 !important; + border-radius: 0 !important; } /* autosave password notification input fields */ #password-notification-username { - border-radius: 0 !important; + border-radius: 0 !important; } #password-notification-password { - border-radius: 0 !important; + border-radius: 0 !important; } /* searchbox and buttons in find bar (ctrl+F) */ .findbar-textbox { - border-radius: 0 !important; + border-radius: 0 !important; } toolbarbutton { - border-radius: 0 !important; + border-radius: 0 !important; } /* certain new folder and login field popup dialogs */ #loginTextbox { - border-radius: 0 !important; + border-radius: 0 !important; } #password1Textbox { - border-radius: 0 !important; + border-radius: 0 !important; } /* density options in "Customize Toolbar" */ #customization-uidensity-menuitem-compact { - border-radius: 0 !important; + border-radius: 0 !important; } #customization-uidensity-menuitem-normal { - border-radius: 0 !important; + border-radius: 0 !important; } #customization-uidensity-menuitem-touch { - border-radius: 0 !important; + border-radius: 0 !important; } /* square popup when entering full screen video */ #fullscreen-warning { - border-radius: 0 !important; + border-radius: 0 !important; } /* square dismissable "show me how" notification messages */ notification-message { - border-radius: 0 !important; + border-radius: 0 !important; } .animated { - border-radius: 0 !important; + border-radius: 0 !important; } .infobar { - border-radius: 0 !important; + border-radius: 0 !important; } .infobar::before { - border-start-start-radius: 0 !important; - border-end-start-radius: 0 !important; + border-start-start-radius: 0 !important; + border-end-start-radius: 0 !important; } /* clear history popup and warnings */ #sanitizeDurationChoice { - border-radius: 0 !important; + border-radius: 0 !important; } #sanitizeEverythingWarningBox { - border-radius: 0 !important; + border-radius: 0 !important; } /* url preview on hover */ #statuspanel-label { - border-radius: 0 !important; + border-radius: 0 !important; } /* sidebar and its panels*/ @@ -649,86 +649,86 @@ notification-message { moz-fieldset, #inputs, .search-container { - border-radius: 0 !important; + border-radius: 0 !important; } /* input fields dont like to change, so do it this way instead */ :root { - --border-radius-small: 0 !important; - --border-radius-medium: 0 !important; - --border-radius-large: 0 !important; + --border-radius-small: 0 !important; + --border-radius-medium: 0 !important; + --border-radius-large: 0 !important; } /* THUNDERBIRD SPECIFIC ------------------------------------------------------------------------------ */ /* custom color for tab line */ :root { - --tabline-color: var(--custom-accent-color, #0a84ff) !important; + --tabline-color: var(--custom-accent-color, #0a84ff) !important; } /* the loading/compacting progress bar on bottom right */ .progressmeter-statusbar { - border-radius: 0 !important; + border-radius: 0 !important; } .progressmeter-statusbar:not([value="0"])::-moz-progress-bar { - border-radius: 0 !important; + border-radius: 0 !important; } /* Remove back, forward, and refresh buttons */ #back-button, #forward-button, #reload-button { - display: none !important; + display: none !important; } #sidebar-button { - display: none !important; + display: none !important; } #firefox-view-button { - display: none !important; + display: none !important; } #new-tab-button { - display: none !important; + display: none !important; } #alltabs-button { - display: none !important; + display: none !important; } #identity-permission-box { - display: none !important; + display: none !important; } #picture-in-picture-button { - display: none !important; + display: none !important; } #star-button-box { - display: none !important; + display: none !important; } #pageAction-urlbar-_testpilot-containers { - display: none !important; + display: none !important; } #navigator-toolbox>#PersonalToolbar { - display: none !important; + display: none !important; } #tabbrowser-tabbox { - outline: none !important; - box-shadow: none !important; + outline: none !important; + box-shadow: none !important; } #reader-mode-button { - display: none !important; + display: none !important; } #translations-button { - display: none !important; + display: none !important; } /* Remove Context Menu Entries */ @@ -758,29 +758,29 @@ moz-fieldset, #context-savelinktopocket, #context-sendimage, #context-searchselect-private { - display: none !important; + display: none !important; } #statuspanel[type="overLink"] { - opacity: 0 !important; + opacity: 0 !important; } #statuspanel { - opacity: 0 !important; + opacity: 0 !important; } #statuspanel { - display: none !important + display: none !important } #statuspanel-label { - display: none !important; + display: none !important; } #unified-extensions-button:hover #unified-extensions-view, #unified-extensions-view:hover { - visibility: visible !important; - opacity: 1 !important; + visibility: visible !important; + opacity: 1 !important; } /* Hide URL suggestions and other elements */ @@ -788,84 +788,84 @@ moz-fieldset, #urlbar-go-button, #page-action-buttons, #reader-mode-button-container { - display: none !important; + display: none !important; } /* Hide "This time search with" suggestion */ #urlbar-one-offs-header-label { - display: none !important; + display: none !important; } /* Hide search engine symbols */ #urlbar-engine-one-off-item, #urlbar-one-off-search-buttons { - display: none !important; + display: none !important; } /* Disable one-off search */ #urlbar[oneoffsearchfieldshidden] { - pointer-events: none !important; + pointer-events: none !important; } /* Hide sidebar */ #sidebar-box { - visibility: collapse !important; + visibility: collapse !important; } /* Hide bottom status/ui bar */ #status-bar { - visibility: collapse !important; + visibility: collapse !important; } scrollbar { - -moz-appearance: none !important; - display: none !important; - width: 0px !important; - background-color: transparent !important; + -moz-appearance: none !important; + display: none !important; + width: 0px !important; + background-color: transparent !important; } scrollcorner { - -moz-appearance: none !important; - display: none !important; + -moz-appearance: none !important; + display: none !important; } *[id*="sep"], *[class*="sep"] { - display: none !important; + display: none !important; } /* Remove tab close button */ .tab-close-button { - display: none !important; + display: none !important; } /* Remove new tab button */ #tabs-newtab-button { - display: none !important; + display: none !important; } .titlebar-buttonbox-container { - display: none !important; + display: none !important; } #stop-button { - display: none !important; + display: none !important; } #customizableui-special-spring1, #customizableui-special-spring2 { - display: none !important; + display: none !important; } #vertical-spacer { - display: none !important; + display: none !important; } .search-one-offs { - display: none !important; - height: 0 !important; - overflow: hidden !important; + display: none !important; + height: 0 !important; + overflow: hidden !important; } /* #sidebar-main { @@ -874,22 +874,22 @@ scrollcorner { /* remove annoying top border on top of urlbar*/ #nav-bar { - box-shadow: none !important; - border-top: none !important; + box-shadow: none !important; + border-top: none !important; } .tools-and-extensions.actions-list { - display: none !important; + display: none !important; } #sidebar-tools-and-extensions-splitter { - display: none !important; + display: none !important; } #urlbar-searchmode-switcher { - display: none !important; + display: none !important; } #urlbar-input::placeholder { - color: transparent !important; + color: transparent !important; } diff --git a/userChromeQB.css b/userChromeQB.css @@ -1,273 +1,365 @@ :root { - --tab-active-bg-color: #7FBBB3; - --tab-inactive-bg-color: #272E33; - --tab-active-fg-fallback-color: #2b3339; /* color of text in an active tab without a container */ - --tab-inactive-fg-fallback-color: #888; /* color of text in an inactive tab without a container */ - --urlbar-focused-bg-color: #374145; - --urlbar-not-focused-bg-color: #1E2326; - --toolbar-bgcolor: #272E33 !important; - --tab-font: 'DejaVu Sans Mono'; - --urlbar-font: 'DejaVu Sans Mono'; - - /* try increasing if you encounter problems */ - --urlbar-height-setting: 22px; - --tab-min-height: 16px !important; - - /* I don't recommend you touch this unless you know what you're doing */ - --arrowpanel-menuitem-padding: 2px !important; - --arrowpanel-border-radius: 0px !important; - --arrowpanel-menuitem-border-radius: 0px !important; - --toolbarbutton-border-radius: 0px !important; - --toolbarbutton-inner-padding: 0px 2px !important; - --toolbar-field-focus-background-color: var(--urlbar-focused-bg-color) !important; - --toolbar-field-background-color: var(--urlbar-not-focused-bg-color) !important; - --toolbar-field-focus-border-color: transparent !important; + --tab-active-bg-color: #7FBBB3; + --tab-inactive-bg-color: #272E33; + --tab-active-fg-fallback-color: #2b3339; + /* color of text in an active tab without a container */ + --tab-inactive-fg-fallback-color: #888; + /* color of text in an inactive tab without a container */ + --urlbar-focused-bg-color: #374145; + --urlbar-not-focused-bg-color: #1E2326; + --toolbar-bgcolor: #272E33 !important; + --tab-font: 'DejaVu Sans Mono'; + --urlbar-font: 'DejaVu Sans Mono'; + + /* try increasing if you encounter problems */ + --urlbar-height-setting: 22px; + --tab-min-height: 16px !important; + + /* I don't recommend you touch this unless you know what you're doing */ + --arrowpanel-menuitem-padding: 2px !important; + --arrowpanel-border-radius: 0px !important; + --arrowpanel-menuitem-border-radius: 0px !important; + --toolbarbutton-border-radius: 0px !important; + --toolbarbutton-inner-padding: 0px 2px !important; + --toolbar-field-focus-background-color: var(--urlbar-focused-bg-color) !important; + --toolbar-field-background-color: var(--urlbar-not-focused-bg-color) !important; + --toolbar-field-focus-border-color: transparent !important; } /* --- GENERAL DEBLOAT ---------------------------------- */ /* Bottom left page loading status or url preview */ -#statuspanel { display: none !important; } +#statuspanel { + display: none !important; +} /* remove radius from right-click popup */ -menupopup, panel { --panel-border-radius: 0px !important; } -menu, menuitem, menucaption { border-radius: 0px !important; } +menupopup, +panel { + --panel-border-radius: 0px !important; +} + +menu, +menuitem, +menucaption { + border-radius: 0px !important; +} /* no stupid large buttons in right-click menu */ -menupopup > #context-navigation { display: none !important; } -menupopup > #context-sep-navigation { display: none !important; } +menupopup>#context-navigation { + display: none !important; +} + +menupopup>#context-sep-navigation { + display: none !important; +} /* --- DEBLOAT NAVBAR ----------------------------------- */ -#back-button { display: none; } -#forward-button { display: none; } -#reload-button { display: none; } -#stop-button { display: none; } -#home-button { display: none; } -#library-button { display: none; } +#back-button { + display: none; +} + +#forward-button { + display: none; +} + +#reload-button { + display: none; +} + +#stop-button { + display: none; +} + +#home-button { + display: none; +} + +#library-button { + display: none; +} + /* #fxa-toolbar-menu-button { display: none; } */ /* empty space before and after the url bar */ -#customizableui-special-spring1, #customizableui-special-spring2 { display: none; } -.private-browsing-indicator-with-label { display: none; } +#customizableui-special-spring1, +#customizableui-special-spring2 { + display: none; +} + +.private-browsing-indicator-with-label { + display: none; +} /* --- STYLE NAVBAR ------------------------------------ */ /* remove padding between toolbar buttons */ -toolbar .toolbarbutton-1 { padding: 0 0 !important; } +toolbar .toolbarbutton-1 { + padding: 0 0 !important; +} /* add it back to the downloads button, otherwise it's too close to the urlbar */ #downloads-button { - margin-left: 2px !important; + margin-left: 2px !important; } /* add padding to the right of the last button so that it doesn't touch the edge of the window */ #PanelUI-menu-button { - padding: 0px 4px 0px 0px !important; + padding: 0px 4px 0px 0px !important; } #urlbar-container { - --urlbar-container-height: var(--urlbar-height-setting) !important; - margin-left: 0 !important; - margin-right: 0 !important; - padding-top: 0 !important; - padding-bottom: 0 !important; - font-family: var(--urlbar-font, 'monospace'); - font-size: 14px; + --urlbar-container-height: var(--urlbar-height-setting) !important; + margin-left: 0 !important; + margin-right: 0 !important; + padding-top: 0 !important; + padding-bottom: 0 !important; + font-family: var(--urlbar-font, 'monospace'); + font-size: 14px; } #urlbar { - --urlbar-height: var(--urlbar-height-setting) !important; - --urlbar-toolbar-height: var(--urlbar-height-setting) !important; - min-height: var(--urlbar-height-setting) !important; - border-color: var(--lwt-toolbar-field-border-color, hsla(240,5%,5%,.25)) !important; + --urlbar-height: var(--urlbar-height-setting) !important; + --urlbar-toolbar-height: var(--urlbar-height-setting) !important; + min-height: var(--urlbar-height-setting) !important; + border-color: var(--lwt-toolbar-field-border-color, hsla(240, 5%, 5%, .25)) !important; } #urlbar-input { - margin-left: 0.4em !important; - margin-right: 0.4em !important; + margin-left: 0.4em !important; + margin-right: 0.4em !important; } -#urlbar > .urlbar-input-container { - padding: 0 !important; - border: 0 !important; + +#urlbar>.urlbar-input-container { + padding: 0 !important; + border: 0 !important; } #navigator-toolbox { - border: none !important; + border: none !important; } /* keep pop-up menus from overlapping with navbar */ -#widget-overflow { margin: 3px !important; } -#customizationui-widget-panel { margin: 3px !important; } -#unified-extensions-panel { margin-top: 3px !important; } -#appMenu-popup { margin-top: 3px !important; } +#widget-overflow { + margin: 3px !important; +} + +#customizationui-widget-panel { + margin: 3px !important; +} + +#unified-extensions-panel { + margin-top: 3px !important; +} + +#appMenu-popup { + margin-top: 3px !important; +} /* --- UNIFIED EXTENSIONS BUTTON ------------------------ */ /* make extension icons smaller */ #unified-extensions-view { - --uei-icon-size: 16px; + --uei-icon-size: 16px; } /* hide bloat */ .unified-extensions-item-message-deck, -#unified-extensions-view > .panel-header, -#unified-extensions-view > toolbarseparator, +#unified-extensions-view>.panel-header, +#unified-extensions-view>toolbarseparator, #unified-extensions-manage-extensions { - display: none !important; + display: none !important; } /* add 3px padding on the top and the bottom of the box */ .panel-subview-body { - padding: 3px 0px !important; + padding: 3px 0px !important; } #unified-extensions-view .toolbarbutton-icon { - padding: 0 !important; + padding: 0 !important; } .unified-extensions-item-contents { - line-height: 1 !important; - white-space: nowrap !important; + line-height: 1 !important; + white-space: nowrap !important; } #unified-extensions-panel .unified-extensions-item { - margin-block: 0 !important; + margin-block: 0 !important; } -.toolbar-menupopup :is(menu, menuitem), .subview-subheader, panelview -.toolbarbutton-1, .subviewbutton, .widget-overflow-list .toolbarbutton-1 { - padding: 4px !important; +.toolbar-menupopup :is(menu, menuitem), +.subview-subheader, +panelview .toolbarbutton-1, +.subviewbutton, +.widget-overflow-list .toolbarbutton-1 { + padding: 4px !important; } /* --- DEBLOAT URLBAR ----------------------------------- */ -#pageActionButton { display: none; } -#pocket-button { display: none; } -#urlbar-zoom-button { display: none; } -#tracking-protection-icon-container { display: none !important; } +#pageActionButton { + display: none; +} + +#pocket-button { + display: none; +} + +#urlbar-zoom-button { + display: none; +} + +#tracking-protection-icon-container { + display: none !important; +} + /* #reader-mode-button{ display: none !important; } */ /* #star-button { display: none; } */ /* #star-button-box:hover { background: inherit !important; } */ -#urlbar-searchmode-switcher { display: none; } -#searchmode-switcher-chicklet { display: none !important; } +#urlbar-searchmode-switcher { + display: none; +} + +#searchmode-switcher-chicklet { + display: none !important; +} #identity-icon-box { - margin-inline-end: 0 !important; - padding: 0 4px !important; + margin-inline-end: 0 !important; + padding: 0 4px !important; } /* Go to arrow button at the end of the urlbar when searching */ -#urlbar-go-button { display: none; } +#urlbar-go-button { + display: none; +} /* remove container indicator from urlbar */ -#userContext-label, #userContext-indicator { display: none !important;} +#userContext-label, +#userContext-indicator { + display: none !important; +} /* --- STYLE TAB TOOLBAR -------------------------------- */ #titlebar { - --proton-tab-block-margin: 0px !important; - --tab-block-margin: 0px !important; + --proton-tab-block-margin: 0px !important; + --tab-block-margin: 0px !important; } -#TabsToolbar, .tabbrowser-tab { - max-height: var(--tab-min-height) !important; - font-size: 11px !important; +#TabsToolbar, +.tabbrowser-tab { + max-height: var(--tab-min-height) !important; + font-size: 11px !important; } /* Change color of normal tabs */ tab:not([selected="true"]) { - background-color: var(--tab-inactive-bg-color) !important; - color: var(--identity-icon-color, var(--tab-inactive-fg-fallback-color)) !important; + background-color: var(--tab-inactive-bg-color) !important; + color: var(--identity-icon-color, var(--tab-inactive-fg-fallback-color)) !important; } tab { - font-family: var(--tab-font, monospace); - font-weight: bold; - border: none !important; - padding-top: 0 !important; + font-family: var(--tab-font, monospace); + font-weight: bold; + border: none !important; + padding-top: 0 !important; } .tab-content { - padding: 0 0 0 var(--tab-inline-padding); + padding: 0 0 0 var(--tab-inline-padding); } .tab-background { - margin-block: 0 !important; - min-height: var(--tab-min-height); - outline-offset: 0 !important; + margin-block: 0 !important; + min-height: var(--tab-min-height); + outline-offset: 0 !important; } /* safari style tab width */ .tabbrowser-tab[fadein] { - max-width: 100vw !important; - border: none + max-width: 100vw !important; + border: none } /* Hide close button on tabs */ -#tabbrowser-tabs .tabbrowser-tab .tab-close-button { display: none !important; } +#tabbrowser-tabs .tabbrowser-tab .tab-close-button { + display: none !important; +} /* disable favicons in tab */ /* .tab-icon-stack:not([pinned]) { display: none !important; } */ .tabbrowser-tab { - /* remove border between tabs */ - padding-inline: 0px !important; - /* reduce fade effect of tab text */ - --tab-label-mask-size: 1em !important; - /* fix pinned tab behaviour on overflow */ - overflow-clip-margin: 0px !important; + /* remove border between tabs */ + padding-inline: 0px !important; + /* reduce fade effect of tab text */ + --tab-label-mask-size: 1em !important; + /* fix pinned tab behaviour on overflow */ + overflow-clip-margin: 0px !important; } /* Tab: selected colors */ #tabbrowser-tabs .tabbrowser-tab[selected] .tab-content { - background: var(--tab-active-bg-color) !important; - color: var(--identity-icon-color, var(--tab-active-fg-fallback-color)) !important; + background: var(--tab-active-bg-color) !important; + color: var(--identity-icon-color, var(--tab-active-fg-fallback-color)) !important; } /* Tab: hovered colors */ #tabbrowser-tabs .tabbrowser-tab:hover:not([selected]) .tab-content { - background: var(--tab-active-bg-color) !important; + background: var(--tab-active-bg-color) !important; } /* hide window controls */ -.titlebar-buttonbox-container { display: none; } +.titlebar-buttonbox-container { + display: none; +} /* remove titlebar spacers */ -.titlebar-spacer { display: none !important; } +.titlebar-spacer { + display: none !important; +} /* disable tab shadow */ #tabbrowser-tabs:not([noshadowfortests]) .tab-background:is([selected], [multiselected]) { - box-shadow: none !important; + box-shadow: none !important; } /* remove dark space between pinned tab and first non-pinned tab */ #pinned-tabs-container { - margin-inline-end: 0 !important; + margin-inline-end: 0 !important; } /* remove dropdown menu button which displays all tabs on overflow */ -#alltabs-button { display: none !important } +#alltabs-button { + display: none !important +} /* fix displaying of pinned tabs on overflow */ #tabbrowser-tabs:not([secondarytext-unsupported]) .tab-label-container { - height: var(--tab-min-height) !important; + height: var(--tab-min-height) !important; } #tabbrowser-tabs { - min-height: var(--tab-min-height) !important; + min-height: var(--tab-min-height) !important; } /* remove overflow scroll buttons */ -#scrollbutton-up, #scrollbutton-down { display: none !important; } +#scrollbutton-up, +#scrollbutton-down { + display: none !important; +} /* remove new tab button */ #tabs-newtab-button { - display: none !important; + display: none !important; } /* hide private browsing indicator */ #private-browsing-indicator-with-label { - display: none; + display: none; } /* --- AUTOHIDE NAVBAR ---------------------------------- */ @@ -324,7 +416,8 @@ tab { /* opacity: 1; */ /* } */ -/* /* Show when toolbox is hovered */ */ +/* /* Show when toolbox is hovered */ +*/ /* #titlebar:hover ~ .browser-toolbar, */ /* .browser-titlebar:hover ~ :is(#nav-bar, #PersonalToolbar), */ /* #nav-bar:hover, */ @@ -334,59 +427,73 @@ tab { /* } */ :root[sessionrestored] #urlbar[popover] { - opacity: 0; - pointer-events: none; - transform: translateY(var(--uc-navbar-transform)); -} - -#mainPopupSet:has(> [panelopen]:not( - #ask-chat-shortcuts, - #selection-shortcut-action-panel, - #chat-shortcuts-options-panel, - #tab-preview-panel -)) ~ toolbox #urlbar[popover], -.browser-titlebar:is(:hover, :focus-within) ~ #nav-bar #urlbar[popover], + opacity: 0; + pointer-events: none; + transform: translateY(var(--uc-navbar-transform)); +} + +#mainPopupSet:has(> [panelopen]:not(#ask-chat-shortcuts, + #selection-shortcut-action-panel, + #chat-shortcuts-options-panel, + #tab-preview-panel))~toolbox #urlbar[popover], +.browser-titlebar:is(:hover, :focus-within)~#nav-bar #urlbar[popover], #nav-bar:is(:hover, :focus-within) #urlbar[popover], -#urlbar-container > #urlbar[popover]:is([focused], [open]) { - opacity: 1; - pointer-events: auto; - transform: translateY(0); +#urlbar-container>#urlbar[popover]:is([focused], [open]) { + opacity: 1; + pointer-events: auto; + transform: translateY(0); } /* This ruleset is separate, because not having :has support breaks other selectors as well */ -#mainPopupSet:has(> [panelopen]:not( - #ask-chat-shortcuts, - #selection-shortcut-action-panel, - #chat-shortcuts-options-panel, - #tab-preview-panel -)) ~ #navigator-toolbox > .browser-toolbar { - transform: translateY(0); - opacity: 1; +#mainPopupSet:has(> [panelopen]:not(#ask-chat-shortcuts, + #selection-shortcut-action-panel, + #chat-shortcuts-options-panel, + #tab-preview-panel))~#navigator-toolbox>.browser-toolbar { + transform: translateY(0); + opacity: 1; } /* Move up the content view */ -:root[sessionrestored]:not([chromehidden~="toolbar"]) > body > #browser { - margin-top: var(--uc-navbar-transform); +:root[sessionrestored]:not([chromehidden~="toolbar"])>body>#browser { + margin-top: var(--uc-navbar-transform); } /* remove this annoying shit on the sidebar */ .tools-and-extensions.actions-list { - display: none !important; + display: none !important; +} + +#picture-in-picture-button { + display: none !important; +} + +#star-button-box { + display: none !important; +} + +#reader-mode-button { + display: none !important; +} + +#translations-button { + display: none !important; } -#picture-in-picture-button { display: none !important; } -#star-button-box { display: none !important; } -#reader-mode-button { display: none !important; } -#translations-button { display: none !important; } #unified-extensions-button:hover #unified-extensions-view, #unified-extensions-view:hover { /* visibility: visible !important; */ /* opacity: 1 !important; */ display: none !important; } -#sidebar-button { display: none !important; } + +#sidebar-button { + display: none !important; +} + #identity-icon, -#identity-icon-box { display: none !important; } +#identity-icon-box { + display: none !important; +} #context-take-screenshot, #context-savepage, @@ -407,11 +514,12 @@ tab { display: none !important; } -*[id*="sep"], *[class*="sep"] { - display: none !important; +*[id*="sep"], +*[class*="sep"] { + display: none !important; } #tabbrowser-tabbox { - outline: none !important; - box-shadow: none !important; + outline: none !important; + box-shadow: none !important; } diff --git a/userContent.css b/userContent.css @@ -4,114 +4,114 @@ /* NOTE: restart Firefox to apply any changes */ body, html { - overflow: -moz-scrollbars-none; - scrollbar-width: none !important; + overflow: -moz-scrollbars-none; + scrollbar-width: none !important; } * { - scrollbar-width: none !important; + scrollbar-width: none !important; } :root { - /* custom accent color to be used across Firefox*/ - /* use hexcode or color name */ - --custom-accent-color: #fabd2f; + /* custom accent color to be used across Firefox*/ + /* use hexcode or color name */ + --custom-accent-color: #fabd2f; - /* background color */ - --uc-my-background-color: #282828 !important; - --background-color-canvas: var(--uc-my-background-color) !important; - --background-color-box: var(--uc-my-background-color) !important; + /* background color */ + --uc-my-background-color: #282828 !important; + --background-color-canvas: var(--uc-my-background-color) !important; + --background-color-box: var(--uc-my-background-color) !important; - /* text color */ - --in-content-page-color: #ebdbb2 !important; + /* text color */ + --in-content-page-color: #ebdbb2 !important; - --table-row-background-color-alternate: #282828 !important; + --table-row-background-color-alternate: #282828 !important; - /* color of the tab dividers / separators */ - /* set variable = none, to disable dividers */ - --custom-tab-divider-color: none; + /* color of the tab dividers / separators */ + /* set variable = none, to disable dividers */ + --custom-tab-divider-color: none; } @-moz-document regexp("^(about:).*") { - body { - background-color: #282828 !important; - } + body { + background-color: #282828 !important; + } } /* CUSTOM ACCENT COLORS -------------------------------------------------------------------------------------- */ @-moz-document regexp("^(about:|chrome:|moz-extension:).*") { - html:not([role="dialog"]), - html:not([role="dialog"]) *, - html:not([role="dialog"]) body.activity-stream, - window:not([chromehidden]), - window:not([chromehidden])>dialog { - --surface-1: #282828 !important; - --surface-2: #282828 !important; - --accent-surface-1: #ebcb8b !important; - --dashboard-tab-active-ink: #ebcb8b !important; - --in-content-primary-button-background: var(--custom-accent-color, #fabd2f) !important; - --in-content-primary-button-background-hover: color-mix(in srgb, #282828 50%, var(--custom-accent-color, #fabd2f)) !important; - --in-content-primary-button-background-active: color-mix(in srgb, #282828 65%, var(--custom-accent-color, #fabd2f)) !important; - - --in-content-item-selected: var(--custom-accent-color, #fabd2f) !important; - --in-content-border-highlight: var(--custom-accent-color, #fabd2f) !important; - --in-content-border-hover: color-mix(in srgb, #282828 50%, var(--custom-accent-color, #fabd2f)) !important; - /* --in-content-border-focus: color-mix(in srgb, #282828 65%, var(--custom-accent-color, #fabd2f)) !important; */ - --in-content-border-focus: var(--custom-accent-color, #fabd2f) !important; - --in-content-border-active: var(--custom-accent-color, #fabd2f) !important; - --in-content-border-active-shadow: var(--custom-accent-color, #fabd2f) !important; - --in-content-category-outline-focus: 1px solid transparent !important; - --in-content-accent-color: var(--custom-accent-color, #fabd2f) !important; - --in-content-table-header-background: var(--custom-accent-color, #fabd2f) !important; - --in-content-link-color: var(--custom-accent-color, #fabd2f) !important; - --in-content-link-color-hover: color-mix(in srgb, #282828 50%, var(--custom-accent-color, #fabd2f)) !important; - --newtab-focus-outline: var(--in-content-border-active-shadow) !important; - --newtab-focus-border: var(--in-content-border-focus) !important; - --newtab-focus-border-selected: var(--custom-accent-color) !important; - --newtab-textbox-focus-color: var(--in-content-border-focus) !important; - --newtab-primary-action-background: var(--custom-accent-color) !important; - --color-accent-primary: var(--custom-accent-color) !important; - --color-accent-primary-hover: color-mix(in srgb, #282828 50%, var(--custom-accent-color, #fabd2f)) !important; - --color-accent-primary-active: var(--custom-accent-color) !important; - --brand-color-accent: var(--custom-accent-color) !important; - --brand-color-accent-hover: color-mix(in srgb, #282828 50%, var(--custom-accent-color, #fabd2f)) !important; - --brand-color-accent-active: var(--custom-accent-color) !important; - } + html:not([role="dialog"]), + html:not([role="dialog"]) *, + html:not([role="dialog"]) body.activity-stream, + window:not([chromehidden]), + window:not([chromehidden])>dialog { + --surface-1: #282828 !important; + --surface-2: #282828 !important; + --accent-surface-1: #ebcb8b !important; + --dashboard-tab-active-ink: #ebcb8b !important; + --in-content-primary-button-background: var(--custom-accent-color, #fabd2f) !important; + --in-content-primary-button-background-hover: color-mix(in srgb, #282828 50%, var(--custom-accent-color, #fabd2f)) !important; + --in-content-primary-button-background-active: color-mix(in srgb, #282828 65%, var(--custom-accent-color, #fabd2f)) !important; + + --in-content-item-selected: var(--custom-accent-color, #fabd2f) !important; + --in-content-border-highlight: var(--custom-accent-color, #fabd2f) !important; + --in-content-border-hover: color-mix(in srgb, #282828 50%, var(--custom-accent-color, #fabd2f)) !important; + /* --in-content-border-focus: color-mix(in srgb, #282828 65%, var(--custom-accent-color, #fabd2f)) !important; */ + --in-content-border-focus: var(--custom-accent-color, #fabd2f) !important; + --in-content-border-active: var(--custom-accent-color, #fabd2f) !important; + --in-content-border-active-shadow: var(--custom-accent-color, #fabd2f) !important; + --in-content-category-outline-focus: 1px solid transparent !important; + --in-content-accent-color: var(--custom-accent-color, #fabd2f) !important; + --in-content-table-header-background: var(--custom-accent-color, #fabd2f) !important; + --in-content-link-color: var(--custom-accent-color, #fabd2f) !important; + --in-content-link-color-hover: color-mix(in srgb, #282828 50%, var(--custom-accent-color, #fabd2f)) !important; + --newtab-focus-outline: var(--in-content-border-active-shadow) !important; + --newtab-focus-border: var(--in-content-border-focus) !important; + --newtab-focus-border-selected: var(--custom-accent-color) !important; + --newtab-textbox-focus-color: var(--in-content-border-focus) !important; + --newtab-primary-action-background: var(--custom-accent-color) !important; + --color-accent-primary: var(--custom-accent-color) !important; + --color-accent-primary-hover: color-mix(in srgb, #282828 50%, var(--custom-accent-color, #fabd2f)) !important; + --color-accent-primary-active: var(--custom-accent-color) !important; + --brand-color-accent: var(--custom-accent-color) !important; + --brand-color-accent-hover: color-mix(in srgb, #282828 50%, var(--custom-accent-color, #fabd2f)) !important; + --brand-color-accent-active: var(--custom-accent-color) !important; + } } @-moz-document url("chrome://global/content/commonDialog.xhtml") { - #commonDialog[subdialog] checkbox { - --checkbox-checked-bgcolor: var(--custom-accent-color, #fabd2f) !important; - --checkbox-checked-hover-bgcolor: color-mix(in srgb, #282828 50%, var(--custom-accent-color, #fabd2f)) !important; - --checkbox-checked-active-bgcolor: color-mix(in srgb, #282828 65%, var(--custom-accent-color, #fabd2f)) !important; - } + #commonDialog[subdialog] checkbox { + --checkbox-checked-bgcolor: var(--custom-accent-color, #fabd2f) !important; + --checkbox-checked-hover-bgcolor: color-mix(in srgb, #282828 50%, var(--custom-accent-color, #fabd2f)) !important; + --checkbox-checked-active-bgcolor: color-mix(in srgb, #282828 65%, var(--custom-accent-color, #fabd2f)) !important; + } } .topsite-form .form-wrapper input[type="text"]:focus-visible { - outline: none !important; - border-color: var(--newtab-focus-border) !important; + outline: none !important; + border-color: var(--newtab-focus-border) !important; } .showPrivate .search-handoff-button.focused { - outline: 0; - border: 1px solid var(--newtab-focus-border) !important; - box-shadow: 0 0 0 2px var(--newtab-focus-outline) !important; + outline: 0; + border: 1px solid var(--newtab-focus-border) !important; + box-shadow: 0 0 0 2px var(--newtab-focus-outline) !important; } ::-moz-progress-bar { - background-color: var(--custom-accent-color, #fabd2f) !important; + background-color: var(--custom-accent-color, #fabd2f) !important; } login-filter { - --in-content-primary-button-background: var(--custom-accent-color, #fabd2f) !important; - --in-content-primary-button-background-hover: color-mix(in srgb, #282828 50%, var(--custom-accent-color, #fabd2f)) !important; - --in-content-primary-button-background-active: color-mix(in srgb, #282828 65%, var(--custom-accent-color, #fabd2f)) !important; + --in-content-primary-button-background: var(--custom-accent-color, #fabd2f) !important; + --in-content-primary-button-background-hover: color-mix(in srgb, #282828 50%, var(--custom-accent-color, #fabd2f)) !important; + --in-content-primary-button-background-active: color-mix(in srgb, #282828 65%, var(--custom-accent-color, #fabd2f)) !important; } ::selection { - color: #282828 !important; - background: #fabd2f !important; + color: #282828 !important; + background: #fabd2f !important; }