first commit

This commit is contained in:
Gerome Matilla 2020-05-20 13:34:10 +08:00
commit bbfbabe631
10 changed files with 813 additions and 0 deletions

4
.directory Normal file
View File

@ -0,0 +1,4 @@
[Dolphin]
Timestamp=2020,5,20,12,26,12
Version=4
ViewMode=2

21
LICENSE Normal file
View File

@ -0,0 +1,21 @@
MIT License
Copyright (c) 2020 Gerome Matilla
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

53
README.md Normal file
View File

@ -0,0 +1,53 @@
# Blurred fox
### A ~~blurred~~ transparent safari-like firefox CSS theme
| blurredfox |
| --- |
| ![screenshot](screenshot.png) |
## How to
### Quick install for the linux lads
1. Run
```bash
$ sh -c "$(curl -fsSL https://raw.githubusercontent.com/manilarome/blurredfox/master/install.sh)"
```
2. After the confirmation message that the theme is successfully installed, open firefox. You'll notice that it is still not transparent. To fix this, **`Open Menu > Customize > Change the theme to Dark`**.
#### NOTE:
It is advisible to check the script first before running it.
### Manual Installation
1. Open the Firefox Menu located on the top-right corner with a humburger menu(three horizontal lines).
2. Select `Preferences`, then `Preferences` again.
3. Go to `Advanced`, find the `Config Editor` button then press it.
4. A dialog will warn you, but ignore it, ~~just do it~~ press the `I accept the risk!` button.
5. Search for **`toolkit.legacyUserProfileCustomizations.stylesheets`**, **`layers.acceleration.force-enabled`**, **`gfx.webrender.all`**, and **`svg.context-properties.content.enabled`**. Make sure to **enable them all!**
6. Go to your Firefox profile located in `$HOME/.mozilla/firefox/XXXXXXX.default-release/`.
7. Create a folder and name it **`chrome`**, then assuming that you already clone this repo, just copy the theme to `chrome` folder.
8. Finally, change the Firefox theme from default to dark. **This is important!**
## Note
### If there's no blur effect
1. **The theme does not provide the blur effect!** Make sure you have a compositor with blur support running! KDE Plasma, macOS, and Windows 10 have this by default, but you need to enable it! If you're using linux, use tryone144's [feature/dual_kawase](https://github.com/tryone144/picom/tree/feature/dual_kawase) branch of picom. It includes the dual kawase shader.
### If you're using Plasma and there's no blur effect,
1. Enable the blur in your compositor. Go to `System Settings > Desktop Effects > Enable Blur`. Note that this will not enable the blur effect on all applications.
2. Enable the blur effect on all applications by installing a KWin script called [Force Blur](https://store.kde.org/p/1294604/).
3. Go to `System Settings > KWin Scripts > Enable Force Blur`.
### If you're using Windows or Mac and something's wrong
1. Sadly, I only have archlinux, so a feedback is welcome if it works on your platform.

56
add.svg Normal file
View File

@ -0,0 +1,56 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
inkscape:version="1.0 (4035a4fb49, 2020-05-01)"
sodipodi:docname="ic_add_48px.svg"
id="svg4"
version="1.1"
viewBox="0 0 48 48"
height="48"
width="48">
<metadata
id="metadata10">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<defs
id="defs8" />
<sodipodi:namedview
inkscape:current-layer="svg4"
inkscape:window-maximized="0"
inkscape:window-y="28"
inkscape:window-x="45"
inkscape:cy="24"
inkscape:cx="24"
inkscape:zoom="12"
inkscape:pagecheckerboard="true"
showgrid="false"
id="namedview6"
inkscape:window-height="740"
inkscape:window-width="1321"
inkscape:pageshadow="2"
inkscape:pageopacity="0"
guidetolerance="10"
gridtolerance="10"
objecttolerance="10"
borderopacity="1"
bordercolor="#666666"
pagecolor="#ffffff" />
<path
style="fill:#ffffff;fill-opacity:1;stroke-width:1.71429"
id="path2"
d="M 48,27.428571 H 27.428571 V 48 H 20.571429 V 27.428571 H 0 V 20.571429 H 20.571429 V 0 h 6.857142 V 20.571429 H 48 Z" />
</svg>

After

Width:  |  Height:  |  Size: 1.7 KiB

92
install.sh Executable file
View File

@ -0,0 +1,92 @@
#!/usr/bin/env bash
message() { printf "%s\n" "$*" >&2; }
download_bf() {
message "[>>] Downloading theme..."
curl -LJ0 https://github.com/manilarome/blurredfox/archive/master.tar.gz | tar -xz -C /tmp/
if [[ $? -eq 0 ]];
then
message "[>>] Copying..."
FF_THEME="/tmp/blurredfox-master/"
cp -r "${FF_THEME}"* "${CHROME_DIRECTORY}"
cat > "${CHROME_DIRECTORY}/../user.js" <<'EOL'
user_pref("toolkit.legacyUserProfileCustomizations.stylesheets", true);
user_pref("layers.acceleration.force-enabled", true);
user_pref("gfx.webrender.all", true);
user_pref("gfx.webrender.enabled", true);
user_pref("svg.context-properties.content.enabled", true);
EOL
if [[ $? -eq 0 ]];
then
rm -rf "/tmp/blurredfox-master"
else
message " [!!] There was a problem while copying the files. Terminating..."
return 1
fi
else
message " [!!] Problem detected while downloading the theme. Terminating..."
return 1
fi
cat <<-'EOF'
░█▀▄░█░░░█░█░█▀▄░█▀▄░█▀▀░█▀▄
░█▀▄░█░░░█░█░█▀▄░█▀▄░█▀▀░█░█
░▀▀░░▀▀▀░▀▀▀░▀░▀░▀░▀░▀▀▀░▀▀░
┏━┛┏━┃┃ ┃
┏━┛┃ ┃ ┛
┛ ━━┛┛ ┛
EOF
message "blurredfox successfully installed! To enable the transparency change the theme to Dark in preferences! Enjoy!"
}
FF_USER_DIRECTORY="$(find "${HOME}/.mozilla/firefox/" -maxdepth 1 -type d -regextype egrep -regex '.*[a-zA-Z0-9]+.default-release')"
if [[ -n $FF_USER_DIRECTORY ]];
then
message "[>>] Firefox user profile directory located..."
CHROME_DIRECTORY="$(find "$FF_USER_DIRECTORY" -maxdepth 1 -type d -name 'chrome')"
if [[ -n $CHROME_DIRECTORY ]];
then
# Check if the chrome folder contains files
shopt -s nullglob dotglob
content="${CHROME_DIRECTORY}/"
# If there's a current theme, make a backup
if [ ${#content[@]} -gt 0 ];
then
message "[>>] Current chrome folder is not empty. Creating a backup in the same directory..."
mv "${CHROME_DIRECTORY}" "${CHROME_DIRECTORY}.backup"
mkdir "${CHROME_DIRECTORY}"
fi
download_bf
else
message "[>>] Chrome directory does not exist! Creating one..."
mkdir "${FF_USER_DIRECTORY}/chrome"
if [[ $? -eq 0 ]];
then
CHROME_DIRECTORY="${FF_USER_DIRECTORY}/chrome"
download_bf
else
message "[!!] There was a problem creating the directory. Terminating..."
exit 1;
fi
fi
else
message "[!!] No firefox user profile directory found. Make sure to run firefox atleast once! Terminating..."
exit 1;
fi

56
left-arrow.svg Normal file
View File

@ -0,0 +1,56 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
inkscape:version="1.0 (4035a4fb49, 2020-05-01)"
sodipodi:docname="ic_chevron_left_48px.svg"
id="svg4"
version="1.1"
viewBox="0 0 48 48"
height="48"
width="48">
<metadata
id="metadata10">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<defs
id="defs8" />
<sodipodi:namedview
inkscape:current-layer="svg4"
inkscape:window-maximized="0"
inkscape:window-y="28"
inkscape:window-x="45"
inkscape:cy="19.284866"
inkscape:cx="23.295551"
inkscape:zoom="12"
inkscape:pagecheckerboard="true"
showgrid="false"
id="namedview6"
inkscape:window-height="740"
inkscape:window-width="1321"
inkscape:pageshadow="2"
inkscape:pageopacity="0"
guidetolerance="10"
gridtolerance="10"
objecttolerance="10"
borderopacity="1"
bordercolor="#666666"
pagecolor="#ffffff" />
<path
style="fill:#ffffff;fill-opacity:1;stroke-width:2.00001"
id="path2"
d="M 38.83,5.660001 33.17,0 9.1699995,24 33.17,48 38.83,42.339999 20.489998,24 Z" />
</svg>

After

Width:  |  Height:  |  Size: 1.7 KiB

56
right-arrow.svg Normal file
View File

@ -0,0 +1,56 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
inkscape:version="1.0 (4035a4fb49, 2020-05-01)"
sodipodi:docname="ic_chevron_right_48px.svg"
id="svg4"
version="1.1"
viewBox="0 0 48 48"
height="48"
width="48">
<metadata
id="metadata10">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<defs
id="defs8" />
<sodipodi:namedview
inkscape:current-layer="svg4"
inkscape:window-maximized="0"
inkscape:window-y="28"
inkscape:window-x="45"
inkscape:cy="24"
inkscape:cx="24"
inkscape:zoom="12"
inkscape:pagecheckerboard="true"
showgrid="false"
id="namedview6"
inkscape:window-height="740"
inkscape:window-width="1321"
inkscape:pageshadow="2"
inkscape:pageopacity="0"
guidetolerance="10"
gridtolerance="10"
objecttolerance="10"
borderopacity="1"
bordercolor="#666666"
pagecolor="#ffffff" />
<path
style="fill:#ffffff;fill-opacity:1;stroke-width:2"
id="path2"
d="M 14.83,0 9.17,5.66 27.51,24 9.17,42.34 14.83,48 l 24,-24 z" />
</svg>

After

Width:  |  Height:  |  Size: 1.6 KiB

BIN
screenshot.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 MiB

452
userChrome.css Normal file
View File

@ -0,0 +1,452 @@
:root {
--bf-bg: #00000039;
--bf-bg-hover: #fefefe20;
--bf-color: #f2f2f2;
--bf-focused-color: #fefefe;
--bf-icon-color: #f2f2f2;
--bf-switch-tab-color: orange;
--bf-bookmark-color: green;
--bf-tab-font-size: 11pt;
--bf-tab-font-weight: 500;
--bf-tab-color: var(--bf-color);
--bf-tab-selected-bg: #00000060;
--bf-tab-height: 32px;
--bf-tab-border-radius: 6px;
--bf-tab-soundplaying-bg: var(--bf-bg-hover);
--bf-navbar-padding: 4px;
--bf-urlbar-color: var(--bf-color);
--bf-urlbar-focused-color: var(--bf-focused-color);
--bf-urlbar-font-size: 12pt;
--bf-urlbar-font-weight: 500;
--bf-urlbar-results-font-size: 12pt;
--bf-urlbar-results-font-weight: 350;
--bf-urlbar-results-url-color: var(--bf-color);
--bf-sidebar-bg: transparent;
--bf-sidebar-color: var(--bf-color);
--bf-menupopup-bg: #00000090;
--bf-menupopup-color: var(--bf-color);
--autocomplete-popup-background: var(--bf-bg) !important;
--default-arrowpanel-background: var(--bf-bg) !important;
--default-arrowpanel-color: #fefefa !important;
--lwt-toolbarbutton-icon-fill: var(--bf-icon-color) !important;
--panel-disabled-color: #f9f9fa80;
--toolbar-bgcolor: transparent !important;
--urlbar-separator-color: transparent !important;
}
@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");
/*
Transparent Window
*/
#main-window {
background: var(--bf-bg) !important;
border: none !important;
}
/*
Contains navbar, urlbar, and etc.
*/
toolbar {
background-image: none !important;
}
toolbar#nav-bar {
background: var(--bf-bg) !important;
padding: var(--bf-navbar-padding) !important;
}
.toolbar-items {
background-color: var(--bf-bg) !important;
}
toolbarbutton {
box-shadow: none !important;
margin-left: 2px !important;
}
#urlbar {
max-width: 70% !important;
margin: 0 15% !important;
}
#urlbar-input:focus {
color: var(--bf-urlbar-focused-color) !important;
}
#urlbar-background {
background-color: var(--bf-bg) !important;
border: none !important;
}
.megabar[breakout-extend="true"]:not([open="true"]) > #urlbar-background {
box-shadow: none !important;
background-color: transparent !important;
}
#navigator-toolbox, toolbaritem {
border: none !important;
}
.urlbar-icon {
color: var(--bf-icon-color) !important;
}
.urlbar-icon > image {
fill: var(--bf-icon-color) !important;
color: var(--bf-icon-color) !important;
}
.urlbarView-favicon, .urlbarView-type-icon {
display: none !important;
}
image #star-button {
display: none;
}
.toolbarbutton-text {
color: var(--bf-icon-color) !important;
}
.urlbarView-row[type="bookmark"] > span{
color: var(--bf-bookmark-color) !important;
}
.urlbarView-row[type="switchtab"] > span{
color: var(--bf-switch-tab-color) !important;
}
#urlbar-results {
font-weight: var(--bf-urlbar-results-font-weight);
font-size: var(--bf-urlbar-results-font-size) !important;
color: var(--bf-urlbar-results-color) !important;
}
.urlbarView-url, .search-panel-one-offs-container {
color: var(--bf-urlbar-results-url-color) !important;
font-weight: var(--bf-urlbar-results-font-weight);
font-size: var(--bf-urlbar-font-size) !important;
}
#urlbar-input {
font-size: var(--bf-urlbar-font-size) !important;
color: var(--bf-urlbar-color) !important;
font-weight: var(--bf-urlbar-font-weight)!important;
text-align: center !important;
}
#tracking-protection-icon-container, #identity-
{
display: none !important;
}
#back-button > .toolbarbutton-icon {
--backbutton-background: transparent !important;
border: none !important;
}
#back-button {
list-style-image: url("left-arrow.svg") !important;
}
#forward-button {
list-style-image: url("right-arrow.svg") !important;
}
/*
The tabs container
*/
#titlebar {
/* Move tab bar beneath the url bar */
-moz-box-ordinal-group: 3 !important;
}
.tabbrowser-tab[fadein]:not([pinned]) {
/* Stretch Tabs */
max-width: none !important;
}
.tab-background {
border: none !important;
background: transparent !important;
}
.tab-background[selected="true"] {
background: var(--bf-tab-selected-bg) !important;
}
.tab-background:not[visuallyselected] {
background: var(--bf-tab-selected-bg) !important;
opacity: 0.5 !important;
}
.tabbrowser-tab::after,
.tabbrowser-tab::before {
/* Remove the "lines" in tabs */
border-left: none !important;
}
.tabbrowser-arrowscrollbox {
margin-inline-start: 4px !important;
margin-inline-end: 0px !important;
}
.tab-text {
font-weight: var(--bf-tab-font-weight);
font-size: var(--bf-tab-font-size) !important;
color: var(--bf-tab-color);
}
.tab-label-container:not([textoverflow]) {
/* Center tab text */
width: 50% !important;
max-width: 50% !important;
min-width: 50% !important;
display: flex;
overflow: hidden;
justify-content: center;
}
.tab-close-button {
/* Hide close tab button */
display: none !important;
}
hbox.tab-content .tab-icon-image {
/* Hide tab icon */
display: initial !important;
}
hbox.tab-content[pinned=true] .tab-icon-image {
/* Show the icon of pinned tabs */
display: initial !important;
}
hbox.tab-content[pinned=true] .tab-text {
display: none !important;
}
.tab-line {
/* Hide the tab line */
display: none !important;
}
.tabbrowser-tab {
border-radius: var(--bf-tab-border-radius) !important;
border-width: 0;
height: var(--bf-tab-height) !important;
margin-top: 0 !important;
margin-bottom: 4px !important;
margin-inline-start: 2px !important;
margin-inline-end: 2px !important;
}
.tabbrowser-tab[soundplaying="true"] {
/* Audio playing background */
background-color: var(--bf-tab-soundplaying-bg) !important;
}
.tab-icon-sound {
/* Hide icon of audio */
display: none !important;
}
#tabs-newtab-button {
padding-bottom: 4px !important;
}
#tabs-newtab-button {
list-style-image: url("add.svg") !important;
opacity: 1;
}
tab.tabbrowser-tab {
overflow: hidden;
}
tab.tabbrowser-tab:hover {
background: var(--bf-bg-hover) !important;
box-shadow: 0 1px 4px rgba(0,0,0,.05);
}
#tabbrowser-tabs {
--tab-loading-fill: var(--bf-color) !important;
}
/*
The findbar
*/
#browser #appcontent #tabbrowser-tabbox findbar,
#browser #appcontent #tabbrowser-tabbox tabpanels {
-moz-appearance: none !important;
background-color: transparent !important;
background-image: none !important;
}
#browser #appcontent #tabbrowser-tabbox .findbar-find-fast {
background-color: var(--bf-bg) !important;
}
/*
Contains history, bookmarks, and etc.
*/
#history-panel, #sidebar-search-container {
background: var(--bf-bg) !important;
}
#search-box {
-moz-appearance: none !important;
background: var(--bf-bg) !important;
border-radius: 6px !important;
}
#sidebar-search-container {
background-color: var(--bf-sidebar-bg) !important;
}
.close-icon, .urlbar-icon {
fill: var(--bf-icon-color) !important;
}
image #sidebar-icon {
display: none;
}
.sidebar-placesTree {
color: var(--bf-sidebar-color) !important;
}
#sidebar-switcher-target {
color: var(--bf-sidebar-color) !important;
}
#sidebar-header {
background: var(--bf-bg) !important;
}
#sidebar-box {
--sidebar-background-color: var(--bf-sidebar-bg) !important;
}
splitter #sidebar-splitter {
opacity: 1 !important;
}
splitter #sidebar-splitter {
border: none !important;
background-color: var(--bf-bg) !important;
}
/*
The dropdown menus
*/
.panel-arrowcontent {
padding: 0px !important;
margin: 0px !important;
}
toolbarseparator {
display: none !important;
}
box.panel-arrowbox {
display: none;
}
box.panel-arrowcontent {
border-radius: 8px !important;
border: none !important;
}
/*
Right-click menu
*/
menupopup {
-moz-appearance: none !important;
background: var(--bf-menupopup-bg) !important;
border: none !important;
border-radius: 4px !important;
padding: 4px 0 !important;
}
menupopup label {
color: var(--bf-menupopup-color) !important;
}
menupopup menupopup {
margin: -5px 0 0 -4px;
}
menubar > menu > menupopup {
border-top-left-radius: 0 !important;
border-top-right-radius: 0 !important;
}
menuitem[type="checkbox"] image, menuitem[type="radio"] image {
visibility: visible !important;
}
menuitem[disabled="true"]:hover, menupopup menu[disabled="true"]:hover {
background: transparent !important;
}
/*
The control buttons. Contains, close, minimize, and maximize buttons
*/
#autohide-context, #window-controls {
display:none!important;
}

23
userContent.css Normal file
View File

@ -0,0 +1,23 @@
@import url("userChrome.css");
/* Removes white loading page */
@-moz-document url(about:blank), url(about:newtab), url(about:home) {
html:not(#ublock0-epicker), html:not(#ublock0-epicker) body, #newtab-customize-overlay {
background: var(--mff-bg) !important;
}
}
/* Hide scrollbar */
:root{
scrollbar-width: none !important;
}
@-moz-document url(about:privatebrowsing) {
:root{
scrollbar-width: none !important;
}
}