Delete .config directory
@@ -1,197 +0,0 @@
|
||||
## Configuration file for CAVA. Default values are commented out. Use either ';' or '#' for commenting.
|
||||
|
||||
|
||||
[general]
|
||||
|
||||
# Smoothing mode. Can be 'normal', 'scientific' or 'waves'. DEPRECATED as of 0.6.0
|
||||
; mode = normal
|
||||
|
||||
# Accepts only non-negative values.
|
||||
; framerate = 60
|
||||
|
||||
# 'autosens' will attempt to decrease sensitivity if the bars peak. 1 = on, 0 = off
|
||||
# new as of 0.6.0 autosens of low values (dynamic range)
|
||||
# 'overshoot' allows bars to overshoot (in % of terminal height) without initiating autosens. DEPRECATED as of 0.6.0
|
||||
; autosens = 1
|
||||
; overshoot = 20
|
||||
|
||||
# Manual sensitivity in %. If autosens is enabled, this will only be the initial value.
|
||||
# 200 means double height. Accepts only non-negative values.
|
||||
; sensitivity = 100
|
||||
|
||||
# The number of bars (0-200). 0 sets it to auto (fill up console).
|
||||
# Bars' width and space between bars in number of characters.
|
||||
; bars = 0
|
||||
; bar_width = 2
|
||||
; bar_spacing = 1
|
||||
# bar_height is only used for output in "noritake" format
|
||||
; bar_height = 32
|
||||
|
||||
# For SDL width and space between bars is in pixels, defaults are:
|
||||
; bar_width = 20
|
||||
; bar_spacing = 5
|
||||
|
||||
|
||||
# Lower and higher cutoff frequencies for lowest and highest bars
|
||||
# the bandwidth of the visualizer.
|
||||
# Note: there is a minimum total bandwidth of 43Mhz x number of bars.
|
||||
# Cava will automatically increase the higher cutoff if a too low band is specified.
|
||||
; lower_cutoff_freq = 50
|
||||
; higher_cutoff_freq = 10000
|
||||
|
||||
|
||||
# Seconds with no input before cava goes to sleep mode. Cava will not perform FFT or drawing and
|
||||
# only check for input once per second. Cava will wake up once input is detected. 0 = disable.
|
||||
; sleep_timer = 0
|
||||
|
||||
|
||||
[input]
|
||||
|
||||
# Audio capturing method. Possible methods are: 'pulse', 'alsa', 'fifo', 'sndio' or 'shmem'
|
||||
# Defaults to 'pulse', 'alsa' or 'fifo', in that order, dependent on what support cava was built with.
|
||||
#
|
||||
# All input methods uses the same config variable 'source'
|
||||
# to define where it should get the audio.
|
||||
#
|
||||
# For pulseaudio 'source' will be the source. Default: 'auto', which uses the monitor source of the default sink
|
||||
# (all pulseaudio sinks(outputs) have 'monitor' sources(inputs) associated with them).
|
||||
#
|
||||
# For alsa 'source' will be the capture device.
|
||||
# For fifo 'source' will be the path to fifo-file.
|
||||
# For shmem 'source' will be /squeezelite-AA:BB:CC:DD:EE:FF where 'AA:BB:CC:DD:EE:FF' will be squeezelite's MAC address
|
||||
; method = pulse
|
||||
; source = auto
|
||||
|
||||
; method = alsa
|
||||
; source = hw:Loopback,1
|
||||
|
||||
; method = fifo
|
||||
; source = /tmp/mpd.fifo
|
||||
; sample_rate = 44100
|
||||
; sample_bits = 16
|
||||
|
||||
; method = shmem
|
||||
; source = /squeezelite-AA:BB:CC:DD:EE:FF
|
||||
|
||||
; method = portaudio
|
||||
; source = auto
|
||||
|
||||
|
||||
[output]
|
||||
|
||||
# Output method. Can be 'ncurses', 'noncurses', 'raw', 'noritake' or 'sdl'.
|
||||
# 'noncurses' uses a custom framebuffer technique and prints only changes
|
||||
# from frame to frame in the terminal. 'ncurses' is default if supported.
|
||||
#
|
||||
# 'raw' is an 8 or 16 bit (configurable via the 'bit_format' option) data
|
||||
# stream of the bar heights that can be used to send to other applications.
|
||||
# 'raw' defaults to 200 bars, which can be adjusted in the 'bars' option above.
|
||||
#
|
||||
# 'noritake' outputs a bitmap in the format expected by a Noritake VFD display
|
||||
# in graphic mode. It only support the 3000 series graphical VFDs for now.
|
||||
#
|
||||
# 'sdl' uses the Simple DirectMedia Layer to render in a graphical context.
|
||||
; method = ncurses
|
||||
|
||||
# Visual channels. Can be 'stereo' or 'mono'.
|
||||
# 'stereo' mirrors both channels with low frequencies in center.
|
||||
# 'mono' outputs left to right lowest to highest frequencies.
|
||||
# 'mono_option' set mono to either take input from 'left', 'right' or 'average'.
|
||||
# set 'reverse' to 1 to display frequencies the other way around.
|
||||
; channels = stereo
|
||||
; mono_option = average
|
||||
; reverse = 0
|
||||
|
||||
# Raw output target. A fifo will be created if target does not exist.
|
||||
; raw_target = /dev/stdout
|
||||
|
||||
# Raw data format. Can be 'binary' or 'ascii'.
|
||||
; data_format = binary
|
||||
|
||||
# Binary bit format, can be '8bit' (0-255) or '16bit' (0-65530).
|
||||
; bit_format = 16bit
|
||||
|
||||
# Ascii max value. In 'ascii' mode range will run from 0 to value specified here
|
||||
; ascii_max_range = 1000
|
||||
|
||||
# Ascii delimiters. In ascii format each bar and frame is separated by a delimiters.
|
||||
# Use decimal value in ascii table (i.e. 59 = ';' and 10 = '\n' (line feed)).
|
||||
; bar_delimiter = 59
|
||||
; frame_delimiter = 10
|
||||
|
||||
# sdl window size and position. -1,-1 is centered.
|
||||
; sdl_width = 1000
|
||||
; sdl_height = 500
|
||||
; sdl_x = -1
|
||||
; sdl_y= -1
|
||||
|
||||
[color]
|
||||
|
||||
# Colors can be one of seven predefined: black, blue, cyan, green, magenta, red, white, yellow.
|
||||
# Or defined by hex code '#xxxxxx' (hex code must be within ''). User defined colors requires
|
||||
# ncurses output method and a terminal that can change color definitions such as Gnome-terminal or rxvt.
|
||||
# if supported, ncurses mode will be forced on if user defined colors are used.
|
||||
# default is to keep current terminal color
|
||||
; background = default
|
||||
; foreground = default
|
||||
|
||||
# SDL only support hex code colors, these are the default:
|
||||
; background = '#111111'
|
||||
; foreground = '#33cccc'
|
||||
|
||||
|
||||
# Gradient mode, only hex defined colors (and thereby ncurses mode) are supported,
|
||||
# background must also be defined in hex or remain commented out. 1 = on, 0 = off.
|
||||
# You can define as many as 8 different colors. They range from bottom to top of screen
|
||||
gradient = 1
|
||||
gradient_count = 6
|
||||
gradient_color_1 = '#c998da'
|
||||
gradient_color_2 = '#be9de2'
|
||||
gradient_color_3 = '#b2a3e8'
|
||||
gradient_color_4 = '#a6a8ec'
|
||||
gradient_color_5 = '#99adf0'
|
||||
gradient_color_6 = '#8db2f1'
|
||||
; gradient_color_7 = '#37325C'
|
||||
;gradient_color_8 = '#cc3333'
|
||||
|
||||
|
||||
|
||||
[smoothing]
|
||||
|
||||
# Percentage value for integral smoothing. Takes values from 0 - 100.
|
||||
# Higher values means smoother, but less precise. 0 to disable.
|
||||
# DEPRECATED as of 0.8.0, use noise_reduction instead
|
||||
; integral = 77
|
||||
|
||||
# Disables or enables the so-called "Monstercat smoothing" with or without "waves". Set to 0 to disable.
|
||||
; monstercat = 0
|
||||
; waves = 0
|
||||
|
||||
# Set gravity percentage for "drop off". Higher values means bars will drop faster.
|
||||
# Accepts only non-negative values. 50 means half gravity, 200 means double. Set to 0 to disable "drop off".
|
||||
# DEPRECATED as of 0.8.0, use noise_reduction instead
|
||||
; gravity = 100
|
||||
|
||||
|
||||
# In bar height, bars that would have been lower that this will not be drawn.
|
||||
# DEPRECATED as of 0.8.0
|
||||
; ignore = 0
|
||||
|
||||
# Noise reduction, float 0 - 1. default 0.77
|
||||
# the raw visualization is very noisy, this factor adjusts the integral and gravity filters to keep the signal smooth
|
||||
# 1 will be very slow and smooth, 0 will be fast but noisy.
|
||||
noise_reduction = 0.77
|
||||
|
||||
|
||||
[eq]
|
||||
|
||||
# This one is tricky. You can have as much keys as you want.
|
||||
# Remember to uncomment more then one key! More keys = more precision.
|
||||
# Look at readme.md on github for further explanations and examples.
|
||||
# DEPRECATED as of 0.8.0 can be brought back by popular request, open issue at:
|
||||
# https://github.com/karlstav/cava
|
||||
; 1 = 1 # bass
|
||||
; 2 = 1
|
||||
; 3 = 1 # midtone
|
||||
; 4 = 1
|
||||
; 5 = 1 # treble
|
||||
@@ -1,519 +0,0 @@
|
||||
#################################
|
||||
# Animations #
|
||||
#################################
|
||||
# requires https://github.com/jonaburg/picom
|
||||
# (These are also the default values)
|
||||
transition-length = 300
|
||||
transition-pow-x = 0.1
|
||||
transition-pow-y = 0.1
|
||||
transition-pow-w = 0.1
|
||||
transition-pow-h = 0.1
|
||||
size-transition = true
|
||||
|
||||
|
||||
#################################
|
||||
# Corners #
|
||||
#################################
|
||||
# requires: https://github.com/sdhand/compton or https://github.com/jonaburg/picom
|
||||
corner-radius = 10.0;
|
||||
rounded-corners-exclude = [
|
||||
#"window_type = 'normal'",
|
||||
"class_g = 'awesome'",
|
||||
"class_g = 'URxvt'",
|
||||
"class_g = 'XTerm'",
|
||||
"class_g = 'Alacritty'",
|
||||
"class_g = 'Polybar'",
|
||||
"class_g = 'code-oss'",
|
||||
#"class_g = 'TelegramDesktop'"
|
||||
"class_g = 'Thunderbird'"
|
||||
];
|
||||
round-borders = 1;
|
||||
round-borders-exclude = [
|
||||
#"class_g = 'TelegramDesktop'",
|
||||
];
|
||||
|
||||
#################################
|
||||
# Shadows #
|
||||
#################################
|
||||
|
||||
|
||||
# Enabled client-side shadows on windows. Note desktop windows
|
||||
# (windows with '_NET_WM_WINDOW_TYPE_DESKTOP') never get shadow,
|
||||
# unless explicitly requested using the wintypes option.
|
||||
#
|
||||
# shadow = false
|
||||
shadow = true;
|
||||
|
||||
# The blur radius for shadows, in pixels. (defaults to 12)
|
||||
# shadow-radius = 12
|
||||
shadow-radius = 15;
|
||||
|
||||
# The opacity of shadows. (0.0 - 1.0, defaults to 0.75)
|
||||
# shadow-opacity = .75
|
||||
|
||||
# The left offset for shadows, in pixels. (defaults to -15)
|
||||
# shadow-offset-x = -15
|
||||
shadow-offset-x = -15;
|
||||
|
||||
# The top offset for shadows, in pixels. (defaults to -15)
|
||||
# shadow-offset-y = -15
|
||||
shadow-offset-y = -15;
|
||||
|
||||
# Avoid drawing shadows on dock/panel windows. This option is deprecated,
|
||||
# you should use the *wintypes* option in your config file instead.
|
||||
#
|
||||
# no-dock-shadow = false
|
||||
|
||||
# Don't draw shadows on drag-and-drop windows. This option is deprecated,
|
||||
# you should use the *wintypes* option in your config file instead.
|
||||
#
|
||||
# no-dnd-shadow = false
|
||||
|
||||
# Red color value of shadow (0.0 - 1.0, defaults to 0).
|
||||
# shadow-red = 0
|
||||
|
||||
# Green color value of shadow (0.0 - 1.0, defaults to 0).
|
||||
# shadow-green = 0
|
||||
|
||||
# Blue color value of shadow (0.0 - 1.0, defaults to 0).
|
||||
# shadow-blue = 0
|
||||
|
||||
shadow-color = "#191724"
|
||||
|
||||
# Do not paint shadows on shaped windows. Note shaped windows
|
||||
# here means windows setting its shape through X Shape extension.
|
||||
# Those using ARGB background is beyond our control.
|
||||
# Deprecated, use
|
||||
# shadow-exclude = 'bounding_shaped'
|
||||
# or
|
||||
# shadow-exclude = 'bounding_shaped && !rounded_corners'
|
||||
# instead.
|
||||
#
|
||||
# shadow-ignore-shaped = ''
|
||||
|
||||
# Specify a list of conditions of windows that should have no shadow.
|
||||
#
|
||||
# examples:
|
||||
# shadow-exclude = "n:e:Notification";
|
||||
#
|
||||
# shadow-exclude = []
|
||||
shadow-exclude = [
|
||||
"window_type = 'popup_menu'",
|
||||
"window_type = 'dropdown_menu'",
|
||||
"window_type = 'menu'",
|
||||
"window_type = 'tooltip'"
|
||||
];
|
||||
|
||||
# Specify a X geometry that describes the region in which shadow should not
|
||||
# be painted in, such as a dock window region. Use
|
||||
# shadow-exclude-reg = "x10+0+0"
|
||||
# for example, if the 10 pixels on the bottom of the screen should not have shadows painted on.
|
||||
#
|
||||
# shadow-exclude-reg = ""
|
||||
|
||||
# Crop shadow of a window fully on a particular Xinerama screen to the screen.
|
||||
# xinerama-shadow-crop = false
|
||||
|
||||
|
||||
#################################
|
||||
# Fading #
|
||||
#################################
|
||||
|
||||
|
||||
# Fade windows in/out when opening/closing and when opacity changes,
|
||||
# unless no-fading-openclose is used.
|
||||
# fading = false
|
||||
fading = true;
|
||||
|
||||
# Opacity change between steps while fading in. (0.01 - 1.0, defaults to 0.028)
|
||||
# fade-in-step = 0.028
|
||||
fade-in-step = 0.03;
|
||||
|
||||
# Opacity change between steps while fading out. (0.01 - 1.0, defaults to 0.03)
|
||||
# fade-out-step = 0.03
|
||||
fade-out-step = 0.03;
|
||||
|
||||
# The time between steps in fade step, in milliseconds. (> 0, defaults to 10)
|
||||
# fade-delta = 10
|
||||
|
||||
# Specify a list of conditions of windows that should not be faded.
|
||||
# don't need this, we disable fading for all normal windows with wintypes: {}
|
||||
fade-exclude = [
|
||||
"class_g = 'slop'" # maim
|
||||
]
|
||||
|
||||
# Do not fade on window open/close.
|
||||
# no-fading-openclose = false
|
||||
|
||||
# Do not fade destroyed ARGB windows with WM frame. Workaround of bugs in Openbox, Fluxbox, etc.
|
||||
# no-fading-destroyed-argb = false
|
||||
|
||||
|
||||
#################################
|
||||
# Transparency / Opacity #
|
||||
#################################
|
||||
|
||||
|
||||
# Opacity of inactive windows. (0.1 - 1.0, defaults to 1.0)
|
||||
# inactive-opacity = 1
|
||||
inactive-opacity = 0.8;
|
||||
|
||||
# Opacity of window titlebars and borders. (0.1 - 1.0, disabled by default)
|
||||
# frame-opacity = 1.0
|
||||
frame-opacity = 0.7;
|
||||
|
||||
# Default opacity for dropdown menus and popup menus. (0.0 - 1.0, defaults to 1.0)
|
||||
# menu-opacity = 1.0
|
||||
# menu-opacity is depreciated use dropdown-menu and popup-menu instead.
|
||||
|
||||
#If using these 2 below change their values in line 510 & 511 aswell
|
||||
popup_menu = { opacity = 0.8; }
|
||||
dropdown_menu = { opacity = 0.8; }
|
||||
|
||||
|
||||
# Let inactive opacity set by -i override the '_NET_WM_OPACITY' values of windows.
|
||||
# inactive-opacity-override = true
|
||||
inactive-opacity-override = false;
|
||||
|
||||
# Default opacity for active windows. (0.0 - 1.0, defaults to 1.0)
|
||||
active-opacity = 1.0;
|
||||
|
||||
# Dim inactive windows. (0.0 - 1.0, defaults to 0.0)
|
||||
# inactive-dim = 0.0
|
||||
|
||||
# Specify a list of conditions of windows that should always be considered focused.
|
||||
# focus-exclude = []
|
||||
focus-exclude = [
|
||||
"class_g = 'Cairo-clock'",
|
||||
"class_g = 'Bar'", # lemonbar
|
||||
"class_g = 'slop'" # maim
|
||||
];
|
||||
|
||||
# Use fixed inactive dim value, instead of adjusting according to window opacity.
|
||||
# inactive-dim-fixed = 1.0
|
||||
|
||||
# Specify a list of opacity rules, in the format `PERCENT:PATTERN`,
|
||||
# like `50:name *= "Firefox"`. picom-trans is recommended over this.
|
||||
# Note we don't make any guarantee about possible conflicts with other
|
||||
# programs that set '_NET_WM_WINDOW_OPACITY' on frame or client windows.
|
||||
# example:
|
||||
# opacity-rule = [ "80:class_g = 'URxvt'" ];
|
||||
#
|
||||
# opacity-rule = []
|
||||
opacity-rule = [
|
||||
"80:class_g = 'Bar'", # lemonbar
|
||||
"100:class_g = 'slop'", # maim
|
||||
"100:class_g = 'XTerm'",
|
||||
"100:class_g = 'URxvt'",
|
||||
"100:class_g = 'kitty'",
|
||||
"100:class_g = 'Alacritty'",
|
||||
"80:class_g = 'Polybar'",
|
||||
"100:class_g = 'code-oss'",
|
||||
"100:class_g = 'Meld'",
|
||||
"100:class_g = 'TelegramDesktop'",
|
||||
"90:class_g = 'Joplin'",
|
||||
"100:class_g = 'firefox'",
|
||||
"100:class_g = 'Thunderbird'"
|
||||
];
|
||||
|
||||
|
||||
#################################
|
||||
# Background-Blurring #
|
||||
#################################
|
||||
|
||||
|
||||
# Parameters for background blurring, see the *BLUR* section for more information.
|
||||
# blur-method =
|
||||
# blur-size = 12
|
||||
#
|
||||
# blur-deviation = false
|
||||
|
||||
# Blur background of semi-transparent / ARGB windows.
|
||||
# Bad in performance, with driver-dependent behavior.
|
||||
# The name of the switch may change without prior notifications.
|
||||
#
|
||||
# blur-background = true;
|
||||
|
||||
# Blur background of windows when the window frame is not opaque.
|
||||
# Implies:
|
||||
# blur-background
|
||||
# Bad in performance, with driver-dependent behavior. The name may change.
|
||||
#
|
||||
# blur-background-frame = false;
|
||||
|
||||
|
||||
# Use fixed blur strength rather than adjusting according to window opacity.
|
||||
# blur-background-fixed = false;
|
||||
|
||||
|
||||
# Specify the blur convolution kernel, with the following format:
|
||||
# example:
|
||||
# blur-kern = "5,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1";
|
||||
#
|
||||
# blur-kern = ''
|
||||
# blur-kern = "3x3box";
|
||||
|
||||
blur: {
|
||||
# requires: https://github.com/ibhagwan/picom
|
||||
method = "kawase";
|
||||
#method = "kernel";
|
||||
strength = 7;
|
||||
# deviation = 1.0;
|
||||
# kernel = "11x11gaussian";
|
||||
background = false;
|
||||
background-frame = false;
|
||||
background-fixed = false;
|
||||
kern = "3x3box";
|
||||
}
|
||||
|
||||
# Exclude conditions for background blur.
|
||||
blur-background-exclude = [
|
||||
#"window_type = 'dock'",
|
||||
#"window_type = 'desktop'",
|
||||
#"class_g = 'URxvt'",
|
||||
#
|
||||
# prevents picom from blurring the background
|
||||
# when taking selection screenshot with `main`
|
||||
# https://github.com/naelstrof/maim/issues/130
|
||||
"class_g = 'slop'",
|
||||
"_GTK_FRAME_EXTENTS@:c"
|
||||
];
|
||||
|
||||
|
||||
#################################
|
||||
# General Settings #
|
||||
#################################
|
||||
|
||||
# Daemonize process. Fork to background after initialization. Causes issues with certain (badly-written) drivers.
|
||||
# daemon = false
|
||||
|
||||
# Specify the backend to use: `xrender`, `glx`, or `xr_glx_hybrid`.
|
||||
# `xrender` is the default one.
|
||||
#
|
||||
experimental-backends = true;
|
||||
backend = "glx";
|
||||
#backend = "xrender";
|
||||
|
||||
|
||||
# Enable/disable VSync.
|
||||
# vsync = false
|
||||
vsync = true;
|
||||
|
||||
# Enable remote control via D-Bus. See the *D-BUS API* section below for more details.
|
||||
# dbus = false
|
||||
|
||||
# Try to detect WM windows (a non-override-redirect window with no
|
||||
# child that has 'WM_STATE') and mark them as active.
|
||||
#
|
||||
# mark-wmwin-focused = false
|
||||
mark-wmwin-focused = true;
|
||||
|
||||
# Mark override-redirect windows that doesn't have a child window with 'WM_STATE' focused.
|
||||
# mark-ovredir-focused = false
|
||||
mark-ovredir-focused = true;
|
||||
|
||||
# Try to detect windows with rounded corners and don't consider them
|
||||
# shaped windows. The accuracy is not very high, unfortunately.
|
||||
#
|
||||
# detect-rounded-corners = false
|
||||
detect-rounded-corners = true;
|
||||
|
||||
# Detect '_NET_WM_OPACITY' on client windows, useful for window managers
|
||||
# not passing '_NET_WM_OPACITY' of client windows to frame windows.
|
||||
#
|
||||
# detect-client-opacity = false
|
||||
detect-client-opacity = true;
|
||||
|
||||
# Specify refresh rate of the screen. If not specified or 0, picom will
|
||||
# try detecting this with X RandR extension.
|
||||
#
|
||||
refresh-rate = 60
|
||||
# refresh-rate = 0;
|
||||
|
||||
# Use EWMH '_NET_ACTIVE_WINDOW' to determine currently focused window,
|
||||
# rather than listening to 'FocusIn'/'FocusOut' event. Might have more accuracy,
|
||||
# provided that the WM supports it.
|
||||
#
|
||||
# use-ewmh-active-win = false
|
||||
|
||||
# Unredirect all windows if a full-screen opaque window is detected,
|
||||
# to maximize performance for full-screen windows. Known to cause flickering
|
||||
# when redirecting/unredirecting windows.
|
||||
#
|
||||
# unredir-if-possible = false
|
||||
|
||||
# Delay before unredirecting the window, in milliseconds. Defaults to 0.
|
||||
# unredir-if-possible-delay = 0
|
||||
|
||||
# Conditions of windows that shouldn't be considered full-screen for unredirecting screen.
|
||||
# unredir-if-possible-exclude = []
|
||||
|
||||
# Use 'WM_TRANSIENT_FOR' to group windows, and consider windows
|
||||
# in the same group focused at the same time.
|
||||
#
|
||||
# detect-transient = false
|
||||
detect-transient = true;
|
||||
|
||||
# Use 'WM_CLIENT_LEADER' to group windows, and consider windows in the same
|
||||
# group focused at the same time. 'WM_TRANSIENT_FOR' has higher priority if
|
||||
# detect-transient is enabled, too.
|
||||
#
|
||||
# detect-client-leader = false
|
||||
detect-client-leader = true;
|
||||
|
||||
# Resize damaged region by a specific number of pixels.
|
||||
# A positive value enlarges it while a negative one shrinks it.
|
||||
# If the value is positive, those additional pixels will not be actually painted
|
||||
# to screen, only used in blur calculation, and such. (Due to technical limitations,
|
||||
# with use-damage, those pixels will still be incorrectly painted to screen.)
|
||||
# Primarily used to fix the line corruption issues of blur,
|
||||
# in which case you should use the blur radius value here
|
||||
# (e.g. with a 3x3 kernel, you should use `--resize-damage 1`,
|
||||
# with a 5x5 one you use `--resize-damage 2`, and so on).
|
||||
# May or may not work with *--glx-no-stencil*. Shrinking doesn't function correctly.
|
||||
#
|
||||
# resize-damage = 1
|
||||
|
||||
# Specify a list of conditions of windows that should be painted with inverted color.
|
||||
# Resource-hogging, and is not well tested.
|
||||
#
|
||||
# invert-color-include = []
|
||||
|
||||
# GLX backend: Avoid using stencil buffer, useful if you don't have a stencil buffer.
|
||||
# Might cause incorrect opacity when rendering transparent content (but never
|
||||
# practically happened) and may not work with blur-background.
|
||||
# My tests show a 15% performance boost. Recommended.
|
||||
#
|
||||
# glx-no-stencil = false
|
||||
|
||||
# GLX backend: Avoid rebinding pixmap on window damage.
|
||||
# Probably could improve performance on rapid window content changes,
|
||||
# but is known to break things on some drivers (LLVMpipe, xf86-video-intel, etc.).
|
||||
# Recommended if it works.
|
||||
#
|
||||
# glx-no-rebind-pixmap = false
|
||||
|
||||
# Disable the use of damage information.
|
||||
# This cause the whole screen to be redrawn everytime, instead of the part of the screen
|
||||
# has actually changed. Potentially degrades the performance, but might fix some artifacts.
|
||||
# The opposing option is use-damage
|
||||
#
|
||||
no-use-damage = true;
|
||||
# use-damage = true;
|
||||
|
||||
# Use X Sync fence to sync clients' draw calls, to make sure all draw
|
||||
# calls are finished before picom starts drawing. Needed on nvidia-drivers
|
||||
# with GLX backend for some users.
|
||||
#
|
||||
# xrender-sync-fence = false
|
||||
|
||||
# GLX backend: Use specified GLSL fragment shader for rendering window contents.
|
||||
# See `compton-default-fshader-win.glsl` and `compton-fake-transparency-fshader-win.glsl`
|
||||
# in the source tree for examples.
|
||||
#
|
||||
# glx-fshader-win = ""
|
||||
|
||||
# Force all windows to be painted with blending. Useful if you
|
||||
# have a glx-fshader-win that could turn opaque pixels transparent.
|
||||
#
|
||||
# force-win-blend = false
|
||||
|
||||
# Do not use EWMH to detect fullscreen windows.
|
||||
# Reverts to checking if a window is fullscreen based only on its size and coordinates.
|
||||
#
|
||||
# no-ewmh-fullscreen = false
|
||||
|
||||
# Dimming bright windows so their brightness doesn't exceed this set value.
|
||||
# Brightness of a window is estimated by averaging all pixels in the window,
|
||||
# so this could comes with a performance hit.
|
||||
# Setting this to 1.0 disables this behaviour. Requires --use-damage to be disabled. (default: 1.0)
|
||||
#
|
||||
# max-brightness = 1.0
|
||||
|
||||
# Make transparent windows clip other windows like non-transparent windows do,
|
||||
# instead of blending on top of them.
|
||||
#
|
||||
# transparent-clipping = false
|
||||
|
||||
# Set the log level. Possible values are:
|
||||
# "trace", "debug", "info", "warn", "error"
|
||||
# in increasing level of importance. Case doesn't matter.
|
||||
# If using the "TRACE" log level, it's better to log into a file
|
||||
# using *--log-file*, since it can generate a huge stream of logs.
|
||||
#
|
||||
# log-level = "debug"
|
||||
log-level = "info";
|
||||
|
||||
# Set the log file.
|
||||
# If *--log-file* is never specified, logs will be written to stderr.
|
||||
# Otherwise, logs will to written to the given file, though some of the early
|
||||
# logs might still be written to the stderr.
|
||||
# When setting this option from the config file, it is recommended to use an absolute path.
|
||||
#
|
||||
# log-file = "/path/to/your/log/file"
|
||||
|
||||
# Show all X errors (for debugging)
|
||||
# show-all-xerrors = false
|
||||
|
||||
# Write process ID to a file.
|
||||
# write-pid-path = "/path/to/your/log/file"
|
||||
|
||||
# Window type settings
|
||||
#
|
||||
# 'WINDOW_TYPE' is one of the 15 window types defined in EWMH standard:
|
||||
# "unknown", "desktop", "dock", "toolbar", "menu", "utility",
|
||||
# "splash", "dialog", "normal", "dropdown_menu", "popup_menu",
|
||||
# "tooltip", "notification", "combo", and "dnd".
|
||||
#
|
||||
# Following per window-type options are available: ::
|
||||
#
|
||||
# fade, shadow:::
|
||||
# Controls window-type-specific shadow and fade settings.
|
||||
#
|
||||
# opacity:::
|
||||
# Controls default opacity of the window type.
|
||||
#
|
||||
# focus:::
|
||||
# Controls whether the window of this type is to be always considered focused.
|
||||
# (By default, all window types except "normal" and "dialog" has this on.)
|
||||
#
|
||||
# full-shadow:::
|
||||
# Controls whether shadow is drawn under the parts of the window that you
|
||||
# normally won't be able to see. Useful when the window has parts of it
|
||||
# transparent, and you want shadows in those areas.
|
||||
#
|
||||
# redir-ignore:::
|
||||
# Controls whether this type of windows should cause screen to become
|
||||
# redirected again after been unredirected. If you have unredir-if-possible
|
||||
# set, and doesn't want certain window to cause unnecessary screen redirection,
|
||||
# you can set this to `true`.
|
||||
#
|
||||
# wintype:
|
||||
# {
|
||||
# normal = { shadow=true; full-shadow = true;};
|
||||
# unknown = { full-shadow = true;};
|
||||
# desktop = { full-shadow = true;};
|
||||
# dock = { full-shadow = true;};
|
||||
# toolbar = { full-shadow = true;};
|
||||
# tooltip = { full-shadow = true;};
|
||||
# popup_menu = { full-shadow = true;};
|
||||
# dropdown_menu = { full-shadow = true;};
|
||||
# menu = { full-shadow = true;};
|
||||
# utility = { full-shadow = true;};
|
||||
# splash = { full-shadow = true;};
|
||||
# dialog = { full-shadow = true;};
|
||||
# notification = { full-shadow = true;};
|
||||
# combo = { full-shadow = true;};
|
||||
# dnd = { full-shadow = true;};
|
||||
# };
|
||||
#wintypes:
|
||||
#{
|
||||
# normal = { fade = true; shadow = true; }
|
||||
# tooltip = { fade = true; shadow = true; opacity = 1.0; focus = true; full-shadow = false; };
|
||||
# popup_menu = { opacity = 1.0; }
|
||||
# dropdown_menu = { opacity = 1.0; }
|
||||
#};
|
||||
#wintypes:
|
||||
#{
|
||||
# toolbar = { shadow = true; full-shadow = false; }
|
||||
#};
|
||||
|
Before Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 13 KiB |
|
Before Width: | Height: | Size: 13 KiB |
|
Before Width: | Height: | Size: 17 KiB |
|
Before Width: | Height: | Size: 17 KiB |
|
Before Width: | Height: | Size: 14 KiB |
@@ -1,5 +0,0 @@
|
||||
These are the images which makes the bar possible with those special corners and stuff.
|
||||
|
||||
I have included an xcf file, so if you plan on changing the wallpaper and you need the colors of the bar to be changed, then use GIMP to edit these images.
|
||||
|
||||
Thankyou!
|
||||
@@ -1,8 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
wal -i Picturess/Wallpapers/Aesthetic2.png &
|
||||
picom &
|
||||
pavucontrol &
|
||||
firefox &
|
||||
kitty &
|
||||
cat /home/unreal/.cache/wal/sequences &
|
||||
@@ -1,397 +0,0 @@
|
||||
# Copyright (c) 2010 Aldo Cortesi
|
||||
# Copyright (c) 2010, 2014 dequis
|
||||
# Copyright (c) 2012 Randall Ma
|
||||
# Copyright (c) 2012-2014 Tycho Andersen
|
||||
# Copyright (c) 2012 Craig Barnes
|
||||
# Copyright (c) 2013 horsik
|
||||
# Copyright (c) 2013 Tao Sauvage
|
||||
#
|
||||
# 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.
|
||||
|
||||
from libqtile import bar, layout, widget, hook, qtile
|
||||
from libqtile.config import Click, Drag, Group, Key, Match, hook, Screen, KeyChord
|
||||
from libqtile.lazy import lazy
|
||||
from libqtile.utils import guess_terminal
|
||||
from libqtile.dgroups import simple_key_binder
|
||||
|
||||
|
||||
mod = "mod4"
|
||||
terminal = "kitty"
|
||||
|
||||
# █▄▀ █▀▀ █▄█ █▄▄ █ █▄░█ █▀▄ █▀
|
||||
# █░█ ██▄ ░█░ █▄█ █ █░▀█ █▄▀ ▄█
|
||||
|
||||
keys = [
|
||||
# A list of available commands that can be bound to keys can be found
|
||||
# at https://docs.qtile.org/en/latest/manual/config/lazy.html
|
||||
# Switch between windows
|
||||
Key([mod], "h", lazy.layout.left(), desc="Move focus to left"),
|
||||
Key([mod], "l", lazy.layout.right(), desc="Move focus to right"),
|
||||
Key([mod], "j", lazy.layout.down(), desc="Move focus down"),
|
||||
Key([mod], "k", lazy.layout.up(), desc="Move focus up"),
|
||||
Key([mod], "space", lazy.layout.next(), desc="Move window focus to other window"),
|
||||
# Move windows between left/right columns or move up/down in current stack.
|
||||
# Moving out of range in Columns layout will create new column.
|
||||
Key([mod, "shift"], "h", lazy.layout.shuffle_left(), desc="Move window to the left"),
|
||||
Key([mod, "shift"], "l", lazy.layout.shuffle_right(), desc="Move window to the right"),
|
||||
Key([mod, "shift"], "j", lazy.layout.shuffle_down(), desc="Move window down"),
|
||||
Key([mod, "shift"], "k", lazy.layout.shuffle_up(), desc="Move window up"),
|
||||
# Grow windows. If current window is on the edge of screen and direction
|
||||
# will be to screen edge - window would shrink.
|
||||
Key([mod, "control"], "h", lazy.layout.grow_left(), desc="Grow window to the left"),
|
||||
Key([mod, "control"], "l", lazy.layout.grow_right(), desc="Grow window to the right"),
|
||||
Key([mod, "control"], "j", lazy.layout.grow_down(), desc="Grow window down"),
|
||||
Key([mod, "control"], "k", lazy.layout.grow_up(), desc="Grow window up"),
|
||||
Key([mod], "n", lazy.layout.normalize(), desc="Reset all window sizes"),
|
||||
Key([mod], "f", lazy.window.toggle_fullscreen()),
|
||||
# Toggle between split and unsplit sides of stack.
|
||||
# Split = all windows displayed
|
||||
# Unsplit = 1 window displayed, like Max layout, but still with
|
||||
# multiple stack panes
|
||||
Key(
|
||||
[mod, "shift"],
|
||||
"Return",
|
||||
lazy.layout.toggle_split(),
|
||||
desc="Toggle between split and unsplit sides of stack",
|
||||
),
|
||||
Key([mod], "Return", lazy.spawn(terminal), desc="Launch terminal"),
|
||||
# Toggle E tween different layouts as defined below
|
||||
Key([mod], "Tab", lazy.next_layout(), desc="Toggle between layouts"),
|
||||
Key([mod], "c", lazy.window.kill(), desc="Kill focused window"),
|
||||
Key([mod, "control"], "r", lazy.reload_config(), desc="Reload the config"),
|
||||
Key([mod, "control"], "q", lazy.shutdown(), desc="Shutdown Qtile"),
|
||||
# Key([mod], "r", lazy.spawncmd(), desc="Spawn a command using a prompt widget"),
|
||||
Key([mod], "r", lazy.spawn("rofi -show combi"), desc="Spawn a command using a prompt widget"),
|
||||
|
||||
|
||||
##CUSTOM
|
||||
Key([], "XF86AudioRaiseVolume", lazy.spawn("pactl set-sink-volume 0 +5%"), desc='Volume Up'),
|
||||
Key([], "XF86AudioLowerVolume", lazy.spawn("pactl set-sink-volume 0 -5%"), desc='volume down'),
|
||||
Key([], "XF86AudioMute", lazy.spawn("pulsemixer --toggle-mute"), desc='Volume Mute'),
|
||||
Key([], "XF86AudioPlay", lazy.spawn("playerctl play-pause"), desc='playerctl'),
|
||||
Key([], "XF86AudioPrev", lazy.spawn("playerctl previous"), desc='playerctl'),
|
||||
Key([], "XF86AudioNext", lazy.spawn("playerctl next"), desc='playerctl'),
|
||||
Key([], "XF86MonBrightnessUp", lazy.spawn("brightnessctl s 10%+"), desc='brightness UP'),
|
||||
Key([], "XF86MonBrightnessDown", lazy.spawn("brightnessctl s 10%-"), desc='brightness Down'),
|
||||
|
||||
##Other stuff
|
||||
Key([mod], "h", lazy.spawn("roficlip"), desc='clipboard'),
|
||||
Key([mod], "s", lazy.spawn("flameshot gui"), desc='Screenshot'),
|
||||
|
||||
|
||||
|
||||
|
||||
]
|
||||
|
||||
# █▀▀ █▀█ █▀█ █░█ █▀█ █▀
|
||||
# █▄█ █▀▄ █▄█ █▄█ █▀▀ ▄█
|
||||
|
||||
|
||||
groups = [Group(f"{i+1}", label="") for i in range(8)]
|
||||
|
||||
for i in groups:
|
||||
keys.extend(
|
||||
[
|
||||
Key(
|
||||
[mod],
|
||||
i.name,
|
||||
lazy.group[i.name].toscreen(),
|
||||
desc="Switch to group {}".format(i.name),
|
||||
),
|
||||
Key(
|
||||
[mod, "shift"],
|
||||
i.name,
|
||||
lazy.window.togroup(i.name, switch_group=True),
|
||||
desc="Switch to & move focused window to group {}".format(i.name),
|
||||
),
|
||||
]
|
||||
)
|
||||
|
||||
|
||||
###𝙇𝙖𝙮𝙤𝙪𝙩###
|
||||
|
||||
layouts = [
|
||||
layout.Columns( margin=4, border_focus='#1F1D2E',
|
||||
border_normal='#1F1D2E',
|
||||
border_width=0
|
||||
),
|
||||
|
||||
layout.Max( border_focus='#1F1D2E',
|
||||
border_normal='#1F1D2E',
|
||||
margin=4,
|
||||
border_width=0,
|
||||
),
|
||||
|
||||
layout.Floating( border_focus='#1F1D2E',
|
||||
border_normal='#1F1D2E',
|
||||
margin=4,
|
||||
border_width=0,
|
||||
),
|
||||
# Try more layouts by unleashing below layouts
|
||||
# layout.Stack(num_stacks=2),
|
||||
# layout.Bsp(),
|
||||
layout.Matrix( border_focus='#1F1D2E',
|
||||
border_normal='#1F1D2E',
|
||||
margin=4,
|
||||
border_width=0,
|
||||
),
|
||||
layout.MonadTall( border_focus='#1F1D2E',
|
||||
border_normal='#1F1D2E',
|
||||
margin=4,
|
||||
border_width=0,
|
||||
),
|
||||
layout.MonadWide( border_focus='#1F1D2E',
|
||||
border_normal='#1F1D2E',
|
||||
margin=4,
|
||||
border_width=0,
|
||||
),
|
||||
# layout.RatioTile(),
|
||||
layout.Tile( border_focus='#1F1D2E',
|
||||
border_normal='#1F1D2E',
|
||||
),
|
||||
# layout.TreeTab(),
|
||||
# layout.VerticalTile(),
|
||||
# layout.Zoomy(),
|
||||
]
|
||||
|
||||
|
||||
|
||||
widget_defaults = dict(
|
||||
font="sans",
|
||||
fontsize=12,
|
||||
padding=3,
|
||||
)
|
||||
extension_defaults = [ widget_defaults.copy()
|
||||
]
|
||||
|
||||
|
||||
|
||||
def open_launcher():
|
||||
qtile.cmd_spawn("rofi -show drun")
|
||||
|
||||
|
||||
|
||||
# █▄▄ ▄▀█ █▀█
|
||||
# █▄█ █▀█ █▀▄
|
||||
|
||||
screens = [
|
||||
|
||||
Screen(
|
||||
top=bar.Bar(
|
||||
[
|
||||
widget.Spacer(length=20,
|
||||
background='#1F1D2E',
|
||||
),
|
||||
|
||||
|
||||
widget.Image(
|
||||
filename='~/.config/qtile/Assets/launch_Icon.png',
|
||||
margin=2,
|
||||
background='#1F1D2E',
|
||||
),
|
||||
|
||||
widget.Image(
|
||||
filename='~/.config/qtile/Assets/6.png',
|
||||
),
|
||||
|
||||
widget.GroupBox(
|
||||
fontsize=16,
|
||||
borderwidth=3,
|
||||
highlight_method='block',
|
||||
active='#7F61A7',
|
||||
block_highlight_text_color="#CFB3E5",
|
||||
highlight_color='#4B427E',
|
||||
inactive='#BD85CB',
|
||||
foreground='#4B427E',
|
||||
background='#4B427E',
|
||||
this_current_screen_border='#52548D',
|
||||
this_screen_border='#52548D',
|
||||
other_current_screen_border='#52548D',
|
||||
other_screen_border='#52548D',
|
||||
urgent_border='#52548D',
|
||||
rounded=True,
|
||||
disable_drag=True,
|
||||
),
|
||||
|
||||
widget.Image(
|
||||
filename='~/.config/qtile/Assets/5.png',
|
||||
),
|
||||
|
||||
widget.CurrentLayoutIcon(
|
||||
background='#52548D',
|
||||
padding = 0,
|
||||
scale = 0.5,
|
||||
),
|
||||
|
||||
widget.CurrentLayout(
|
||||
background='#52548D',
|
||||
font= 'JetBrains Mono Bold',
|
||||
),
|
||||
|
||||
widget.Image(
|
||||
filename='~/.config/qtile/Assets/4.png',
|
||||
),
|
||||
|
||||
widget.WindowName(
|
||||
background = '#7676B2',
|
||||
format = "{name}",
|
||||
font='JetBrains Mono Bold',
|
||||
empty_group_string = 'Desktop',
|
||||
),
|
||||
|
||||
|
||||
widget.Image(
|
||||
filename='~/.config/qtile/Assets/3.png',
|
||||
),
|
||||
|
||||
widget.Systray(
|
||||
background='#52548D',
|
||||
fontsize=2,
|
||||
),
|
||||
|
||||
widget.TextBox(
|
||||
text=' ',
|
||||
background='#52548D',
|
||||
),
|
||||
|
||||
|
||||
widget.Image(
|
||||
filename='~/.config/qtile/Assets/2.png',
|
||||
background='#52548D',
|
||||
),
|
||||
|
||||
widget.TextBox(
|
||||
text='',
|
||||
size=20,
|
||||
font='JetBrains Mono Bold',
|
||||
background='#4B427E',
|
||||
),
|
||||
|
||||
widget.Battery(format=' {percent:2.0%}',
|
||||
font="JetBrains Mono ExtraBold",
|
||||
fontsize=12,
|
||||
padding=10,
|
||||
background='#4B427E',
|
||||
),
|
||||
|
||||
|
||||
widget.Memory(format='{MemUsed: .0f}{mm}',
|
||||
font="JetBrains Mono Bold",
|
||||
fontsize=12,
|
||||
padding=10,
|
||||
background='#4B427E',
|
||||
),
|
||||
|
||||
widget.TextBox(
|
||||
text="",
|
||||
font="Font Awesome 6 Free Solid",
|
||||
fontsize=25,
|
||||
padding=0,
|
||||
background='#4B427E',
|
||||
),
|
||||
|
||||
widget.PulseVolume(font='JetBrains Mono Bold',
|
||||
fontsize=12,
|
||||
padding=10,
|
||||
background='#4B427E',
|
||||
),
|
||||
|
||||
|
||||
widget.Image(
|
||||
filename='~/.config/qtile/Assets/1.png',
|
||||
background='#4B427E',
|
||||
),
|
||||
|
||||
widget.Clock(
|
||||
format=' %I:%M %p',
|
||||
background='#1F1D2E',
|
||||
font="JetBrains Mono Bold",
|
||||
),
|
||||
|
||||
widget.Spacer(
|
||||
length=18,
|
||||
background='#1F1D2E',
|
||||
),
|
||||
|
||||
|
||||
],
|
||||
30,
|
||||
margin = [6,6,6,6]
|
||||
),
|
||||
),
|
||||
]
|
||||
|
||||
# Drag floating layouts.
|
||||
mouse = [
|
||||
Drag([mod], "Button1", lazy.window.set_position_floating(), start=lazy.window.get_position()),
|
||||
Drag([mod], "Button3", lazy.window.set_size_floating(), start=lazy.window.get_size()),
|
||||
Click([mod], "Button2", lazy.window.bring_to_front()),
|
||||
]
|
||||
|
||||
dgroups_key_binder = None
|
||||
dgroups_app_rules = [] # type: list
|
||||
follow_mouse_focus = True
|
||||
bring_front_click = False
|
||||
cursor_warp = False
|
||||
floating_layout = layout.Floating(
|
||||
border_focus='#1F1D2E',
|
||||
border_normal='#1F1D2E',
|
||||
border_width=0,
|
||||
float_rules=[
|
||||
# Run the utility of `xprop` to see the wm class and name of an X client.
|
||||
*layout.Floating.default_float_rules,
|
||||
Match(wm_class="confirmreset"), # gitk
|
||||
Match(wm_class="makebranch"), # gitk
|
||||
Match(wm_class="maketag"), # gitk
|
||||
Match(wm_class="ssh-askpass"), # ssh-askpass
|
||||
Match(title="branchdialog"), # gitk
|
||||
Match(title="pinentry"), # GPG key password entry
|
||||
]
|
||||
)
|
||||
|
||||
from libqtile import hook
|
||||
# some other imports
|
||||
import os
|
||||
import subprocess
|
||||
# stuff
|
||||
@hook.subscribe.startup_once
|
||||
def autostart():
|
||||
home = os.path.expanduser('~/.config/qtile/autostart.sh') # path to my script, under my user directory
|
||||
subprocess.call([home])
|
||||
|
||||
auto_fullscreen = True
|
||||
focus_on_window_activation = "smart"
|
||||
reconfigure_screens = True
|
||||
|
||||
# If things like steam games want to auto-minimize themselves when losing
|
||||
# focus, should we respect this or not?
|
||||
auto_minimize = True
|
||||
|
||||
# When using the Wayland backend, this can be used to configure input devices.
|
||||
wl_input_rules = None
|
||||
|
||||
# XXX: Gasp! We're lying here. In fact, nobody really uses or cares about this
|
||||
# string besides java UI toolkits; you can see several discussions on the
|
||||
# mailing lists, GitHub issues, and other WM documentation that suggest setting
|
||||
# this string if your java app doesn't work correctly. We may as well just lie
|
||||
# and say that we're a working one by default.
|
||||
#
|
||||
# We choose LG3D to maximize irony: it is a 3D non-reparenting WM written in
|
||||
# java that happens to be on java's whitelist.
|
||||
wmname = "LG3D"
|
||||
@@ -1,59 +0,0 @@
|
||||
//@ts-check
|
||||
|
||||
// NAME: adblock
|
||||
// AUTHOR: CharlieS1103
|
||||
// DESCRIPTION: Block all audio and UI ads on Spotify
|
||||
|
||||
/// <reference path="../../spicetify-cli/globals.d.ts" />
|
||||
|
||||
(function adblock() {
|
||||
const { Platform} = Spicetify;
|
||||
if (!(Platform)) {
|
||||
setTimeout(adblock, 300)
|
||||
return
|
||||
}
|
||||
|
||||
var styleSheet = document.createElement("style")
|
||||
|
||||
styleSheet.innerHTML =
|
||||
`
|
||||
.MnW5SczTcbdFHxLZ_Z8j, .WiPggcPDzbwGxoxwLWFf, .ReyA3uE3K7oEz7PTTnAn, .main-leaderboardComponent-container, .sponsor-container, a.link-subtle.main-navBar-navBarLink.GKnnhbExo0U9l7Jz2rdc{
|
||||
display: none !important;
|
||||
}
|
||||
`
|
||||
document.body.appendChild(styleSheet)
|
||||
delayAds()
|
||||
var billboard = Spicetify.Platform.AdManagers.billboard.displayBillboard;
|
||||
Spicetify.Platform.AdManagers.billboard.displayBillboard = function (arguments) {
|
||||
Spicetify.Platform.AdManagers.billboard.finish()
|
||||
// hook before call
|
||||
var ret = billboard.apply(this, arguments);
|
||||
// hook after call
|
||||
console.log("Adblock.js: Billboard blocked! Leave a star!")
|
||||
Spicetify.Platform.AdManagers.billboard.finish()
|
||||
const observer = new MutationObserver((mutations, obs) => {
|
||||
const billboardAd = document.getElementById('view-billboard-ad');
|
||||
if (billboardAd) {
|
||||
Spicetify.Platform.AdManagers.billboard.finish()
|
||||
obs.disconnect();
|
||||
return;
|
||||
}
|
||||
});
|
||||
|
||||
observer.observe(document, {
|
||||
childList: true,
|
||||
subtree: true
|
||||
});
|
||||
return ret;
|
||||
};
|
||||
function delayAds() {
|
||||
console.log("Ads delayed: Adblock.js")
|
||||
Spicetify.Platform.AdManagers.audio.audioApi.cosmosConnector.increaseStreamTime(-100000000000)
|
||||
Spicetify.Platform.AdManagers.billboard.billboardApi.cosmosConnector.increaseStreamTime(-100000000000)
|
||||
}
|
||||
setInterval(delayAds, 720 *10000);
|
||||
|
||||
|
||||
})()
|
||||
|
||||
|
||||
@@ -1,9 +0,0 @@
|
||||
(() => {
|
||||
const script = document.createElement("SCRIPT");
|
||||
script.setAttribute("type", "text/javascript");
|
||||
script.setAttribute(
|
||||
"src",
|
||||
"https://comfy-themes.github.io/Spicetify/Comfy/comfy.script.js"
|
||||
);
|
||||
document.head.appendChild(script);
|
||||
})();
|
||||
@@ -1,5 +0,0 @@
|
||||
For this rice, I've made slight changes a theme called "[comfy](https://github.com/Comfy-Themes/Spicetify)" So, all credit goes to the creator of this theme.
|
||||
|
||||
|
||||
|
||||

|
||||
@@ -1,706 +0,0 @@
|
||||
:root .Root__main-view #preloadImage {
|
||||
position: absolute;
|
||||
width: 0;
|
||||
height: 0;
|
||||
overflow: hidden;
|
||||
z-index: -1;
|
||||
}
|
||||
:root .Root__main-view #mainImage {
|
||||
position: absolute;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
top: 0;
|
||||
left: 0;
|
||||
background-size: 100%;
|
||||
background-repeat: no-repeat;
|
||||
background-position: center;
|
||||
will-change: transform;
|
||||
z-index: -1;
|
||||
transition: 300ms background-image ease-in-out;
|
||||
filter: blur(4px);
|
||||
-webkit-mask-image: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6));
|
||||
mask-image: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6));
|
||||
}
|
||||
@media (max-width: 1500px) {
|
||||
:root .Root__main-view #mainImage {
|
||||
background-position: top;
|
||||
}
|
||||
}
|
||||
:root .Root__main-view .main-view-container__scroll-node-child {
|
||||
padding-bottom: 0;
|
||||
}
|
||||
:root .Root__main-view #main > div > div.Root__top-container > div.Root__top-bar > header > div.main-topBar-topbarContentWrapper > div > div > button > span > span {
|
||||
fill: var(--spice-selected-row) !important;
|
||||
}
|
||||
:root .Root__main-view input:checked ~ .x-toggle-indicatorWrapper {
|
||||
background-color: var(--spice-radio-btn-active);
|
||||
}
|
||||
:root .Root__main-view .view-homeShortcutsGrid-shortcut {
|
||||
border-radius: var(--border-radius);
|
||||
}
|
||||
:root .Root__main-view .view-homeShortcutsGrid-shortcut .view-homeShortcutsGrid-imageWrapper {
|
||||
border-radius: calc(var(--border-radius) + 15px);
|
||||
}
|
||||
:root .Root__main-view .main-card-card {
|
||||
border-radius: var(--border-radius);
|
||||
padding: 0;
|
||||
overflow: hidden;
|
||||
}
|
||||
:root .Root__main-view .main-card-card .main-card-imageContainer {
|
||||
margin-bottom: -4px;
|
||||
}
|
||||
:root .Root__main-view .main-card-card .main-card-imageContainer .main-cardImage-circular,
|
||||
:root .Root__main-view .main-card-card .main-card-imageContainer img {
|
||||
border-radius: 0;
|
||||
}
|
||||
:root .Root__main-view .main-card-card .main-card-cardMetadata {
|
||||
padding: 16px;
|
||||
}
|
||||
:root .Root__main-view .main-home-homeHeader {
|
||||
display: none !important;
|
||||
}
|
||||
:root .Root__main-view .main-entityHeader-container .main-entityHeader-backgroundColor {
|
||||
background: none !important;
|
||||
}
|
||||
:root .Root__main-view .main-entityHeader-container {
|
||||
padding: 32px;
|
||||
justify-content: center;
|
||||
}
|
||||
:root .Root__main-view .main-entityHeader-container > div:nth-last-of-type(2) {
|
||||
align-self: center;
|
||||
flex-shrink: 0;
|
||||
}
|
||||
:root .Root__main-view .main-entityHeader-container > div:nth-last-of-type(2) + .main-entityHeader-headerText {
|
||||
flex: unset;
|
||||
justify-content: center;
|
||||
}
|
||||
:root .Root__main-view .main-entityHeader-container > div:nth-last-of-type(2) + .main-entityHeader-headerText .main-entityHeader-title h1 {
|
||||
font-size: 50px !important;
|
||||
}
|
||||
:root .Root__main-view .main-yourEpisodes-yourEpisodesContentWrapper {
|
||||
max-width: unset;
|
||||
}
|
||||
:root .Root__main-view .main-actionBarBackground-background {
|
||||
background: linear-gradient(rgba(var(--spice-rgb-main-transition), 0.6) 0, var(--spice-main) 232px), var(--background-noise) !important;
|
||||
top: 338px;
|
||||
height: calc(100% - 243px);
|
||||
}
|
||||
:root .Root__main-view section[data-testid=playlist-page] .os-host-overflow, :root .Root__main-view section[data-testid=album-page] .os-host-overflow, :root .Root__main-view section[data-testid=your-episodes-page] .os-host-overflow, :root .Root__main-view section[data-testid=artist-page] .os-host-overflow {
|
||||
overflow: visible !important;
|
||||
}
|
||||
:root .Root__main-view section[data-testid=playlist-page] .os-padding, :root .Root__main-view section[data-testid=album-page] .os-padding, :root .Root__main-view section[data-testid=your-episodes-page] .os-padding, :root .Root__main-view section[data-testid=artist-page] .os-padding {
|
||||
overflow: visible !important;
|
||||
}
|
||||
:root .Root__main-view section[data-testid=playlist-page] .os-padding .os-viewport, :root .Root__main-view section[data-testid=album-page] .os-padding .os-viewport, :root .Root__main-view section[data-testid=your-episodes-page] .os-padding .os-viewport, :root .Root__main-view section[data-testid=artist-page] .os-padding .os-viewport {
|
||||
overflow: visible !important;
|
||||
}
|
||||
:root .Root__main-view section[data-testid=playlist-page] .os-padding .os-viewport .main-actionBar-ActionBar, :root .Root__main-view section[data-testid=album-page] .os-padding .os-viewport .main-actionBar-ActionBar, :root .Root__main-view section[data-testid=your-episodes-page] .os-padding .os-viewport .main-actionBar-ActionBar, :root .Root__main-view section[data-testid=artist-page] .os-padding .os-viewport .main-actionBar-ActionBar {
|
||||
padding: 8px 16px 16px 16px;
|
||||
}
|
||||
:root .Root__main-view section[data-testid=playlist-page] .os-padding .os-viewport .main-actionBar-ActionBar .main-actionBar-ActionBarRow, :root .Root__main-view section[data-testid=album-page] .os-padding .os-viewport .main-actionBar-ActionBar .main-actionBar-ActionBarRow, :root .Root__main-view section[data-testid=your-episodes-page] .os-padding .os-viewport .main-actionBar-ActionBar .main-actionBar-ActionBarRow, :root .Root__main-view section[data-testid=artist-page] .os-padding .os-viewport .main-actionBar-ActionBar .main-actionBar-ActionBarRow {
|
||||
margin-bottom: -8px;
|
||||
margin-left: 8px;
|
||||
margin-right: 22px;
|
||||
}
|
||||
:root .Root__main-view section[data-testid=playlist-page] .os-padding .os-viewport .main-actionBar-ActionBar .main-actionBar-ActionBarRow .main-playButton-PlayButton, :root .Root__main-view section[data-testid=album-page] .os-padding .os-viewport .main-actionBar-ActionBar .main-actionBar-ActionBarRow .main-playButton-PlayButton, :root .Root__main-view section[data-testid=your-episodes-page] .os-padding .os-viewport .main-actionBar-ActionBar .main-actionBar-ActionBarRow .main-playButton-PlayButton, :root .Root__main-view section[data-testid=artist-page] .os-padding .os-viewport .main-actionBar-ActionBar .main-actionBar-ActionBarRow .main-playButton-PlayButton {
|
||||
margin-left: 24px;
|
||||
margin-top: -24px;
|
||||
}
|
||||
:root .Root__main-view section[data-testid=your-episodes-page] > .contentSpacing > section {
|
||||
height: calc(100vh - 494px);
|
||||
}
|
||||
:root .Root__main-view section[data-testid=your-episodes-page] > .main-yourEpisodes-yourEpisodesContentWrapper {
|
||||
height: calc(100vh - 438px);
|
||||
}
|
||||
:root .Root__main-view section[data-testid=your-episodes-page] > .main-yourEpisodes-yourEpisodesContentWrapper [data-testid^=episode-] {
|
||||
margin: 0;
|
||||
}
|
||||
:root .Root__main-view section[data-testid=playlist-page] > div:last-child, :root .Root__main-view section[data-testid=album-page] > div:nth-last-child(2), :root .Root__main-view section[data-testid=episode] > div:last-child, :root .Root__main-view section[data-testid=your-episodes-page] > div:last-child, :root .Root__main-view section[data-testid=artist-page] > div > div:last-child {
|
||||
background: none;
|
||||
}
|
||||
:root .Root__main-view section[data-testid=playlist-page] > div:last-child .main-trackList-trackListRowGrid, :root .Root__main-view section[data-testid=album-page] > div:nth-last-child(2) .main-trackList-trackListRowGrid, :root .Root__main-view section[data-testid=episode] > div:last-child .main-trackList-trackListRowGrid, :root .Root__main-view section[data-testid=your-episodes-page] > div:last-child .main-trackList-trackListRowGrid, :root .Root__main-view section[data-testid=artist-page] > div > div:last-child .main-trackList-trackListRowGrid {
|
||||
border-radius: var(--border-radius);
|
||||
border: none;
|
||||
padding-left: 18px;
|
||||
transition: 200ms background-color;
|
||||
}
|
||||
:root .Root__main-view section[data-testid=playlist-page] > div:last-child .main-trackList-trackListRowGrid .main-type-mesto,
|
||||
:root .Root__main-view section[data-testid=playlist-page] > div:last-child .main-trackList-trackListRowGrid .main-type-ballad, :root .Root__main-view section[data-testid=album-page] > div:nth-last-child(2) .main-trackList-trackListRowGrid .main-type-mesto,
|
||||
:root .Root__main-view section[data-testid=album-page] > div:nth-last-child(2) .main-trackList-trackListRowGrid .main-type-ballad, :root .Root__main-view section[data-testid=episode] > div:last-child .main-trackList-trackListRowGrid .main-type-mesto,
|
||||
:root .Root__main-view section[data-testid=episode] > div:last-child .main-trackList-trackListRowGrid .main-type-ballad, :root .Root__main-view section[data-testid=your-episodes-page] > div:last-child .main-trackList-trackListRowGrid .main-type-mesto,
|
||||
:root .Root__main-view section[data-testid=your-episodes-page] > div:last-child .main-trackList-trackListRowGrid .main-type-ballad, :root .Root__main-view section[data-testid=artist-page] > div > div:last-child .main-trackList-trackListRowGrid .main-type-mesto,
|
||||
:root .Root__main-view section[data-testid=artist-page] > div > div:last-child .main-trackList-trackListRowGrid .main-type-ballad {
|
||||
transition: 300ms color;
|
||||
}
|
||||
:root .Root__main-view section[data-testid=playlist-page] > div:last-child .main-trackList-trackListRowGrid:hover, :root .Root__main-view section[data-testid=album-page] > div:nth-last-child(2) .main-trackList-trackListRowGrid:hover, :root .Root__main-view section[data-testid=episode] > div:last-child .main-trackList-trackListRowGrid:hover, :root .Root__main-view section[data-testid=your-episodes-page] > div:last-child .main-trackList-trackListRowGrid:hover, :root .Root__main-view section[data-testid=artist-page] > div > div:last-child .main-trackList-trackListRowGrid:hover {
|
||||
background-color: rgba(255, 255, 255, 0.05);
|
||||
}
|
||||
:root .Root__main-view section[data-testid=playlist-page] > div:last-child .main-trackList-trackListRowGrid.main-trackList-selected, :root .Root__main-view section[data-testid=album-page] > div:nth-last-child(2) .main-trackList-trackListRowGrid.main-trackList-selected, :root .Root__main-view section[data-testid=episode] > div:last-child .main-trackList-trackListRowGrid.main-trackList-selected, :root .Root__main-view section[data-testid=your-episodes-page] > div:last-child .main-trackList-trackListRowGrid.main-trackList-selected, :root .Root__main-view section[data-testid=artist-page] > div > div:last-child .main-trackList-trackListRowGrid.main-trackList-selected {
|
||||
background-color: rgba(255, 255, 255, 0.1);
|
||||
}
|
||||
:root .Root__main-view section[data-testid=playlist-page] > div:last-child .main-trackList-trackListHeader, :root .Root__main-view section[data-testid=album-page] > div:nth-last-child(2) .main-trackList-trackListHeader, :root .Root__main-view section[data-testid=episode] > div:last-child .main-trackList-trackListHeader, :root .Root__main-view section[data-testid=your-episodes-page] > div:last-child .main-trackList-trackListHeader, :root .Root__main-view section[data-testid=artist-page] > div > div:last-child .main-trackList-trackListHeader {
|
||||
display: none;
|
||||
}
|
||||
:root .Root__main-view section[data-testid] {
|
||||
position: relative;
|
||||
}
|
||||
:root .Root__main-view section[class=contentSpacing] .main-trackList-rowSectionIndex,
|
||||
:root .Root__main-view .rHpv7osDRvs3SUPMpQ_g .main-trackList-rowSectionIndex {
|
||||
top: 7px !important;
|
||||
left: 16px !important;
|
||||
}
|
||||
:root .Root__main-view section:not([data-testid=album-page]):not([data-testid=artist-page]) .main-trackList-trackListRow,
|
||||
:root .Root__main-view .NLaDALU71zxOtBUbsrfH .main-trackList-trackListRow {
|
||||
grid-template-columns: [first] 6fr [var1] 4fr [var2] 3fr [last] minmax(120px, 1fr) !important;
|
||||
}
|
||||
:root .Root__main-view section:not([data-testid=album-page]):not([data-testid=artist-page]) .main-trackList-trackListRow > .main-trackList-rowSectionIndex,
|
||||
:root .Root__main-view .NLaDALU71zxOtBUbsrfH .main-trackList-trackListRow > .main-trackList-rowSectionIndex {
|
||||
position: absolute;
|
||||
z-index: 1000;
|
||||
top: 8px;
|
||||
left: 18px;
|
||||
width: 40px;
|
||||
height: 40px;
|
||||
justify-content: center;
|
||||
text-indent: -1000px;
|
||||
}
|
||||
:root .Root__main-view section:not([data-testid=album-page]):not([data-testid=artist-page]) .main-trackList-trackList[aria-colcount="6"] .main-trackList-trackListRow,
|
||||
:root .Root__main-view .NLaDALU71zxOtBUbsrfH .main-trackList-trackList[aria-colcount="6"] .main-trackList-trackListRow {
|
||||
grid-template-columns: [first] 6fr [var1] 4fr [var2] 3fr [var3] minmax(120px, 2fr) [last] minmax(120px, 1fr) !important;
|
||||
}
|
||||
:root .Root__main-view section:not([data-testid=album-page]):not([data-testid=artist-page]) button.main-trackList-rowImagePlayButton,
|
||||
:root .Root__main-view .NLaDALU71zxOtBUbsrfH button.main-trackList-rowImagePlayButton {
|
||||
color: black;
|
||||
}
|
||||
:root .Root__main-view section:not([data-testid=album-page]):not([data-testid=artist-page]) .main-trackList-trackListRow:hover .main-trackList-rowSectionIndex, :root .Root__main-view section:not([data-testid=album-page]):not([data-testid=artist-page]) .main-trackList-trackListRow:focus-within .main-trackList-rowSectionIndex,
|
||||
:root .Root__main-view .NLaDALU71zxOtBUbsrfH .main-trackList-trackListRow:hover .main-trackList-rowSectionIndex,
|
||||
:root .Root__main-view .NLaDALU71zxOtBUbsrfH .main-trackList-trackListRow:focus-within .main-trackList-rowSectionIndex {
|
||||
background: rgba(var(--spice-rgb-play-button), 0.5);
|
||||
border-radius: var(--border-radius);
|
||||
}
|
||||
:root .Root__main-view section:not([data-testid=album-page]):not([data-testid=artist-page]) .main-trackList-trackListRow:hover button.main-trackList-rowImagePlayButton, :root .Root__main-view section:not([data-testid=album-page]):not([data-testid=artist-page]) .main-trackList-trackListRow:focus-within button.main-trackList-rowImagePlayButton,
|
||||
:root .Root__main-view .NLaDALU71zxOtBUbsrfH .main-trackList-trackListRow:hover button.main-trackList-rowImagePlayButton,
|
||||
:root .Root__main-view .NLaDALU71zxOtBUbsrfH .main-trackList-trackListRow:focus-within button.main-trackList-rowImagePlayButton {
|
||||
opacity: 1;
|
||||
}
|
||||
:root .Root__main-view section:not([data-testid=album-page]):not([data-testid=artist-page]) .main-trackList-trackListRow.main-trackList-active .main-trackList-rowTitle,
|
||||
:root .Root__main-view .NLaDALU71zxOtBUbsrfH .main-trackList-trackListRow.main-trackList-active .main-trackList-rowTitle {
|
||||
color: var(--spice-text);
|
||||
text-shadow: 0px 0px 6px var(--spice-text);
|
||||
-webkit-text-stroke: thin;
|
||||
}
|
||||
:root .Root__main-view section:not([data-testid=album-page]):not([data-testid=artist-page]) .main-trackList-trackListRow.main-trackList-active .main-trackList-rowSectionIndex,
|
||||
:root .Root__main-view .NLaDALU71zxOtBUbsrfH .main-trackList-trackListRow.main-trackList-active .main-trackList-rowSectionIndex {
|
||||
background: rgba(var(--spice-rgb-play-button), 0.5);
|
||||
border-radius: var(--border-radius);
|
||||
}
|
||||
:root .Root__main-view section:not([data-testid=album-page]):not([data-testid=artist-page]) .main-trackList-trackListRow.main-trackList-active button.main-trackList-rowImagePlayButton,
|
||||
:root .Root__main-view .NLaDALU71zxOtBUbsrfH .main-trackList-trackListRow.main-trackList-active button.main-trackList-rowImagePlayButton {
|
||||
opacity: 1;
|
||||
}
|
||||
:root .Root__main-view .main-entityHeader-background {
|
||||
height: 83vh;
|
||||
}
|
||||
:root .Root__main-view .main-entityHeader-background.main-entityHeader-overlay:after {
|
||||
height: 83vh;
|
||||
}
|
||||
|
||||
:root .Root__nav-bar {
|
||||
overflow: hidden;
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints {
|
||||
column-gap: 16px;
|
||||
padding: 0 12px;
|
||||
box-sizing: content-box;
|
||||
transition: 350ms background-color;
|
||||
border-radius: var(--border-radius) var(--border-radius) 0 0;
|
||||
margin: 24px 12px 0 12px;
|
||||
background-color: rgba(0, 0, 0, 0.1);
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints#spicetify-sticky-list {
|
||||
white-space: nowrap;
|
||||
border-radius: var(--border-radius);
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints#spicetify-sticky-list > div {
|
||||
display: inline-block;
|
||||
margin-right: 18px;
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints > li {
|
||||
padding: 0;
|
||||
margin: 0 -12px;
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints > li a {
|
||||
padding: 0 12px;
|
||||
border-radius: 0;
|
||||
background-color: transparent;
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints > li a.main-navBar-navBarLinkActive {
|
||||
background-color: rgba(var(--spice-rgb-pagelink-active), 0.1647058824);
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints > li:first-child a {
|
||||
border-radius: var(--border-radius) var(--border-radius) 0 0;
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints > div {
|
||||
padding: 0;
|
||||
margin: 2px 0;
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints > div > *.active {
|
||||
background: none;
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints > div button,
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints > div a {
|
||||
padding: 0;
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints > div button div,
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints > div a div {
|
||||
margin-right: 0;
|
||||
border-radius: var(--border-radius);
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints > div button div.main-rootlist-statusIcons,
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints > div a div.main-rootlist-statusIcons {
|
||||
display: none;
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints > div button div.main-likedSongsButton-likedSongsIcon,
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints > div a div.main-likedSongsButton-likedSongsIcon {
|
||||
background: linear-gradient(135deg, var(--spice-liked-left), var(--spice-liked-right));
|
||||
border-style: solid;
|
||||
border-width: 2px;
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints > div button span,
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints > div a span {
|
||||
display: none;
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints a[href="/"] .home-icon {
|
||||
background: url("https://i.imgur.com/jqDH9TQ.png") center/cover no-repeat;
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints a[href="/"] .home-active-icon {
|
||||
background: url("https://i.imgur.com/60h58oZ.png") center/cover no-repeat;
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints a[href="/"] svg > * {
|
||||
display: none;
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints a[href="/search"] .search-icon {
|
||||
background: url("https://i.imgur.com/UV5JQpE.png") center/cover no-repeat;
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints a[href="/search"] .search-active-icon {
|
||||
background: url("https://i.imgur.com/CTVdQ3d.png") center/cover no-repeat;
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints a[href="/search"] svg > * {
|
||||
display: none;
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints a[href="/collection"] .collection-icon {
|
||||
background: url("https://i.imgur.com/alXGfxW.png") center/cover no-repeat;
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints a[href="/collection"] .collection-active-icon {
|
||||
background: url("https://i.imgur.com/SzvrAfr.png") center/cover no-repeat;
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints a[href="/collection"] svg > * {
|
||||
display: none;
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints a[href="/lyrics-plus"] .collection-icon {
|
||||
background: url("https://i.imgur.com/91fuU3P.png") center/cover no-repeat;
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints a[href="/lyrics-plus"] .collection-active-icon {
|
||||
background: url("https://i.imgur.com/EgRCYe8.png") center/cover no-repeat;
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints a[href="/lyrics-plus"] svg > * {
|
||||
display: none;
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints a[href="/reddit"] .collection-icon {
|
||||
background: url("https://i.imgur.com/6N6ev2V.png") center/cover no-repeat;
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints a[href="/reddit"] .collection-active-icon {
|
||||
background: url("https://i.imgur.com/UENFDdo.png") center/cover no-repeat;
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints a[href="/reddit"] svg > * {
|
||||
display: none;
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints a[href="/new-releases"] .collection-icon {
|
||||
background: url("https://i.imgur.com/BgkCeDG.png") center/cover no-repeat;
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints a[href="/new-releases"] .collection-active-icon {
|
||||
background: url("https://i.imgur.com/CTRVDwF.png") center/cover no-repeat;
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints a[href="/new-releases"] svg > * {
|
||||
display: none;
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints a[href$=marketplace] .collection-icon {
|
||||
background: url("https://i.imgur.com/2pWNa48.png") center/cover no-repeat;
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints a[href$=marketplace] .collection-active-icon {
|
||||
background: url("https://i.imgur.com/rKmXQ6V.png") center/cover no-repeat;
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints a[href$=marketplace] svg > * {
|
||||
display: none;
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints:not(#spicetify-sticky-list) + .main-rootlist-rootlist > div {
|
||||
display: grid;
|
||||
grid-template-areas: "add tracks episodes" "playlists playlists playlists";
|
||||
grid-template-columns: 25px 25px 1fr;
|
||||
grid-template-rows: 25px 1fr;
|
||||
column-gap: 16px;
|
||||
margin: 12px 12px 0 12px;
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints:not(#spicetify-sticky-list) + .main-rootlist-rootlist > div > div:first-child {
|
||||
grid-area: add;
|
||||
margin: -6px 0 0 12px;
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints:not(#spicetify-sticky-list) + .main-rootlist-rootlist > div > div:first-child::before {
|
||||
content: "";
|
||||
position: absolute;
|
||||
width: calc(100% - 24px);
|
||||
height: 40px;
|
||||
margin: -6px 0 0 -12px;
|
||||
background-color: rgba(0, 0, 0, 0.1);
|
||||
border-radius: 0 0 var(--border-radius) var(--border-radius);
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints:not(#spicetify-sticky-list) + .main-rootlist-rootlist > div > div:first-child button {
|
||||
padding: 0;
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints:not(#spicetify-sticky-list) + .main-rootlist-rootlist > div > div:first-child button .main-createPlaylistButton-createPlaylistIcon {
|
||||
border-radius: var(--border-radius);
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints:not(#spicetify-sticky-list) + .main-rootlist-rootlist > div > div:nth-child(2) {
|
||||
grid-area: tracks;
|
||||
margin: -6px 0 0 12px;
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints:not(#spicetify-sticky-list) + .main-rootlist-rootlist > div > div:nth-child(2) a {
|
||||
padding: 0;
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints:not(#spicetify-sticky-list) + .main-rootlist-rootlist > div > div:nth-child(2) a .main-likedSongsButton-likedSongsIcon {
|
||||
border-radius: var(--border-radius);
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints:not(#spicetify-sticky-list) + .main-rootlist-rootlist > div > div:nth-child(3) {
|
||||
grid-area: episodes;
|
||||
margin: -6px 0 0 12px;
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints:not(#spicetify-sticky-list) + .main-rootlist-rootlist > div > div:nth-child(3) a {
|
||||
padding: 0;
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints:not(#spicetify-sticky-list) + .main-rootlist-rootlist > div > div:nth-child(3) a .main-yourEpisodesButton-yourEpisodesIcon {
|
||||
border-radius: var(--border-radius);
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints:not(#spicetify-sticky-list) + .main-rootlist-rootlist > div > div:nth-child(3) a .main-collectionLinkButton-collectionLinkText {
|
||||
display: none;
|
||||
}
|
||||
:root .Root__nav-bar ul.main-navBar-entryPoints:not(#spicetify-sticky-list) + .main-rootlist-rootlist > div > div:last-child {
|
||||
grid-area: playlists;
|
||||
}
|
||||
:root .Root__nav-bar .main-rootlist-rootlistDividerContainer {
|
||||
display: none;
|
||||
}
|
||||
:root .Root__nav-bar .main-rootlist-rootlist {
|
||||
margin-top: 0;
|
||||
}
|
||||
:root .Root__nav-bar .main-rootlist-rootlist .os-content {
|
||||
padding-top: 16px !important;
|
||||
}
|
||||
:root .Root__nav-bar .main-rootlist-rootlist .os-content::before {
|
||||
content: "Playlists";
|
||||
visibility: visible;
|
||||
width: unset;
|
||||
height: unset;
|
||||
line-height: unset;
|
||||
display: block;
|
||||
font-size: 16px;
|
||||
text-align: center;
|
||||
font-weight: bold;
|
||||
}
|
||||
:root .Root__nav-bar .main-rootlist-rootlist .os-content > ul[tabindex="0"] {
|
||||
margin: 12px;
|
||||
}
|
||||
:root .Root__nav-bar .main-rootlist-rootlist .os-content > ul[tabindex="0"]:not(#spicetify-playlist-list) {
|
||||
margin: 12px 0 0 0;
|
||||
}
|
||||
:root .Root__nav-bar .main-rootlist-rootlist .os-content > ul[tabindex="0"] > div {
|
||||
contain: unset;
|
||||
}
|
||||
:root .Root__nav-bar .main-rootlist-rootlist .os-content > ul[tabindex="0"] > div > div:nth-child(2) {
|
||||
background-color: rgba(0, 0, 0, 0.1);
|
||||
border-radius: var(--border-radius);
|
||||
}
|
||||
:root .Root__nav-bar .main-rootlist-rootlist .os-content > ul[tabindex="0"] > div > div:nth-child(2) .main-rootlist-rootlistItem {
|
||||
padding: 0;
|
||||
}
|
||||
:root .Root__nav-bar .main-rootlist-rootlist .os-content > ul[tabindex="0"] > div > div:nth-child(2) .main-rootlist-rootlistItem .main-rootlist-rootlistItemLink {
|
||||
padding-top: 4px;
|
||||
padding-bottom: 4px;
|
||||
padding-left: calc(12px + var(--indentation) * var(--left-sidebar-item-indentation-width));
|
||||
padding-right: var(--left-sidebar-padding-right);
|
||||
box-sizing: content-box;
|
||||
transition: color 350ms ease, background-color 150ms;
|
||||
}
|
||||
:root .Root__nav-bar .main-rootlist-rootlist .os-content > ul[tabindex="0"] > div > div:nth-child(2) .main-rootlist-rootlistItem .main-rootlist-rootlistItemLink + button {
|
||||
border-radius: 0 !important;
|
||||
}
|
||||
:root .Root__nav-bar .main-rootlist-rootlist .os-content > ul[tabindex="0"] > div > div:nth-child(2) .main-rootlist-rootlistItem .main-rootlist-rootlistItemLink + div > button {
|
||||
margin-left: 0;
|
||||
}
|
||||
:root .Root__nav-bar .main-rootlist-rootlist .os-content > ul[tabindex="0"] > div > div:nth-child(2) .main-rootlist-rootlistItem .main-rootlist-rootlistItemLink:hover, :root .Root__nav-bar .main-rootlist-rootlist .os-content > ul[tabindex="0"] > div > div:nth-child(2) .main-rootlist-rootlistItem .main-rootlist-rootlistItemLink:hover + * {
|
||||
transition: 350ms color;
|
||||
cursor: pointer;
|
||||
}
|
||||
:root .Root__nav-bar .main-rootlist-rootlist .os-content > ul[tabindex="0"] > div > div:nth-child(2) .main-rootlist-rootlistItem .main-rootlist-rootlistItemLinkActive, :root .Root__nav-bar .main-rootlist-rootlist .os-content > ul[tabindex="0"] > div > div:nth-child(2) .main-rootlist-rootlistItem .main-rootlist-rootlistItemLink:focus, :root .Root__nav-bar .main-rootlist-rootlist .os-content > ul[tabindex="0"] > div > div:nth-child(2) .main-rootlist-rootlistItem .main-rootlist-rootlistItemLinkActive + *, :root .Root__nav-bar .main-rootlist-rootlist .os-content > ul[tabindex="0"] > div > div:nth-child(2) .main-rootlist-rootlistItem .main-rootlist-rootlistItemLink:focus + * {
|
||||
background-color: rgba(var(--spice-rgb-pagelink-active), 0.1647058824);
|
||||
cursor: default !important;
|
||||
}
|
||||
:root .Root__nav-bar .main-rootlist-rootlist .os-content > ul[tabindex="0"] > div > div:nth-child(2) .main-rootlist-rootlistItem .main-rootlist-statusIcons:not(:empty) {
|
||||
margin-inline-start: 0;
|
||||
padding: 4px 12px;
|
||||
transition: 150ms background-color;
|
||||
}
|
||||
:root .Root__nav-bar .main-rootlist-rootlist .os-content > ul[tabindex="0"] > div > div:nth-child(2) .main-rootlist-rootlistItem .main-rootlist-expandArrow {
|
||||
height: unset;
|
||||
margin-left: 0;
|
||||
padding: 4px 12px;
|
||||
transition: 150ms background-color;
|
||||
}
|
||||
:root .Root__nav-bar .main-rootlist-rootlist .os-content > ul[tabindex="0"] > div > div:nth-child(2) .main-rootlist-rootlistItemOverlay {
|
||||
display: none;
|
||||
}
|
||||
:root .Root__nav-bar .main-coverSlotExpanded-container .cover-art .cover-art-image {
|
||||
border-radius: 0;
|
||||
}
|
||||
:root .Root__nav-bar .os-scrollbar {
|
||||
display: none;
|
||||
}
|
||||
|
||||
:root .Root__now-playing-bar .main-nowPlayingBar-container {
|
||||
position: relative;
|
||||
border-top: none;
|
||||
}
|
||||
:root .Root__now-playing-bar .main-nowPlayingBar-container .main-nowPlayingBar-nowPlayingBar {
|
||||
box-sizing: content-box;
|
||||
padding-bottom: 16px;
|
||||
}
|
||||
:root .Root__now-playing-bar .main-nowPlayingBar-container .main-nowPlayingBar-nowPlayingBar .main-nowPlayingWidget-nowPlaying.main-nowPlayingWidget-coverExpanded {
|
||||
transform: translateX(-100px);
|
||||
}
|
||||
:root .Root__now-playing-bar .main-nowPlayingBar-container .main-nowPlayingBar-nowPlayingBar .main-nowPlayingWidget-nowPlaying .main-coverSlotCollapsed-container {
|
||||
top: -20px;
|
||||
}
|
||||
:root .Root__now-playing-bar .main-nowPlayingBar-container .main-nowPlayingBar-nowPlayingBar .main-nowPlayingWidget-nowPlaying .main-coverSlotCollapsed-container .cover-art {
|
||||
width: 84px !important;
|
||||
height: 84px !important;
|
||||
border-radius: var(--border-radius);
|
||||
overflow: hidden;
|
||||
}
|
||||
:root .Root__now-playing-bar .main-nowPlayingBar-container .main-connectBar-connectBar {
|
||||
position: absolute;
|
||||
top: -15px;
|
||||
right: 15px;
|
||||
padding: 4px 8px;
|
||||
box-sizing: content-box;
|
||||
border-radius: var(--border-radius);
|
||||
color: #fff;
|
||||
background-color: var(--spice-sidebar);
|
||||
}
|
||||
:root .Root__now-playing-bar .main-nowPlayingBar-container .main-connectBar-connectBar::after {
|
||||
content: none;
|
||||
}
|
||||
:root .Root__now-playing-bar .playback-bar {
|
||||
position: absolute;
|
||||
display: grid;
|
||||
grid-template-columns: auto auto;
|
||||
grid-template-areas: "time-left time-right" "bar bar";
|
||||
bottom: 0;
|
||||
}
|
||||
:root .Root__now-playing-bar .playback-bar .saber-hilt {
|
||||
height: 0;
|
||||
}
|
||||
:root .Root__now-playing-bar .playback-bar .playback-progressbar {
|
||||
grid-column: 1/3;
|
||||
grid-area: bar;
|
||||
}
|
||||
:root .Root__now-playing-bar .playback-bar .playback-progressbar > div {
|
||||
--bg-color: rgba(var(--spice-rgb-progress-bg), 0.3);
|
||||
--fg-color: var(--spice-progress-fg);
|
||||
}
|
||||
:root .Root__now-playing-bar .playback-bar .playback-progressbar > div > div {
|
||||
--progress-bar-height: 12px;
|
||||
--progress-bar-radius: 0;
|
||||
}
|
||||
:root .Root__now-playing-bar .playback-bar .playback-progressbar > div > div > div > div {
|
||||
width: 105%;
|
||||
background-color: transparent;
|
||||
background-image: linear-gradient(90deg, var(--spice-progress-fg) 93%, transparent 100%);
|
||||
}
|
||||
:root .Root__now-playing-bar .playback-bar .playback-progressbar > div .progress-bar__slider {
|
||||
display: none;
|
||||
}
|
||||
:root .Root__now-playing-bar .playback-bar > div:first-of-type {
|
||||
grid-area: time-left;
|
||||
}
|
||||
:root .Root__now-playing-bar .playback-bar > div:last-of-type {
|
||||
grid-area: time-right;
|
||||
}
|
||||
:root .Root__now-playing-bar .playback-bar button {
|
||||
width: 0;
|
||||
}
|
||||
|
||||
.x-settings-container {
|
||||
max-width: unset;
|
||||
}
|
||||
.x-settings-container .x-toggle-indicatorWrapper {
|
||||
border-radius: var(--border-radius);
|
||||
}
|
||||
|
||||
:root .Root__top-bar header button {
|
||||
border-radius: var(--border-radius);
|
||||
}
|
||||
:root .Root__top-bar header button[title="Popup Lyrics"] {
|
||||
background-image: url("https://i.imgur.com/91fuU3P.png");
|
||||
background-size: 60%;
|
||||
background-position: center;
|
||||
background-repeat: no-repeat;
|
||||
}
|
||||
:root .Root__top-bar header button[title="Popup Lyrics"] svg {
|
||||
display: none;
|
||||
}
|
||||
:root .Root__top-bar header .main-entityHeader-topbarTitle {
|
||||
padding: 0 0px;
|
||||
}
|
||||
:root .Root__top-bar header .main-playButton-PlayButton {
|
||||
display: none !important;
|
||||
}
|
||||
:root .Root__top-bar header .main-topBar-background {
|
||||
background-color: rgba(var(--spice-rgb-sidebar), 0.95) !important;
|
||||
}
|
||||
:root .Root__top-bar header .main-topBar-overlay {
|
||||
background-color: transparent !important;
|
||||
}
|
||||
:root .Root__top-bar header .main-topBar-historyButtons button,
|
||||
:root .Root__top-bar header .lyrics-tabBar-active {
|
||||
background-color: rgba(11, 11, 17, 0.32);
|
||||
}
|
||||
:root .Root__top-bar header .main-topBar-UpgradeButton {
|
||||
font-size: 0;
|
||||
overflow: hidden;
|
||||
background: url("https://i.imgur.com/nzAfcIL.png") 50%/contain no-repeat;
|
||||
border: none;
|
||||
padding: 5px;
|
||||
box-sizing: content-box;
|
||||
width: 12px;
|
||||
}
|
||||
:root .Root__top-bar header .main-userWidget-box {
|
||||
height: unset;
|
||||
padding: 0;
|
||||
gap: 12px;
|
||||
}
|
||||
:root .Root__top-bar header .main-userWidget-box > div:last-child {
|
||||
display: none;
|
||||
}
|
||||
:root .Root__top-bar header .main-userWidget-box .main-avatar-avatar {
|
||||
width: 40px !important;
|
||||
height: 40px !important;
|
||||
display: flex;
|
||||
}
|
||||
@media (min-width: 1024px) {
|
||||
:root .Root__top-bar header .main-userWidget-box .main-avatar-avatar .main-avatar-image {
|
||||
border-radius: var(--border-radius) 0 0 var(--border-radius);
|
||||
}
|
||||
}
|
||||
:root .Root__top-bar header .main-userWidget-box .main-avatar-avatar > div {
|
||||
width: unset !important;
|
||||
height: unset !important;
|
||||
}
|
||||
:root .Root__top-bar header .main-userWidget-box .main-userWidget-displayName {
|
||||
padding-right: 12px;
|
||||
}
|
||||
:root .Root__top-bar header .main-userWidget-box .main-userWidget-chevron {
|
||||
display: none;
|
||||
}
|
||||
|
||||
:root {
|
||||
--border-radius: 8px;
|
||||
}
|
||||
:root button,
|
||||
:root button span,
|
||||
:root input,
|
||||
:root img {
|
||||
border-radius: var(--border-radius) !important;
|
||||
}
|
||||
:root .os-scrollbar-vertical {
|
||||
background: none;
|
||||
}
|
||||
:root .os-scrollbar-vertical .os-scrollbar-track {
|
||||
width: 10px;
|
||||
}
|
||||
:root .os-scrollbar-vertical .os-scrollbar-handle {
|
||||
border: 2px solid rgba(200, 200, 200, 0.275);
|
||||
border-radius: 4.5px;
|
||||
}
|
||||
:root .encore-bright-accent-set {
|
||||
--background-base: var(--spice-play-button);
|
||||
--background-highlight: var(--spice-play-button-active);
|
||||
--background-press: var(--spice-play-button-active);
|
||||
}
|
||||
:root .main-addButton-active {
|
||||
color: var(--spice-heart);
|
||||
}
|
||||
:root .main-addButton-active:hover {
|
||||
color: rgba(var(--spice-rgb-heart), 0.7);
|
||||
}
|
||||
:root #_R_G *:not([stroke=none]) {
|
||||
stroke: var(--spice-heart);
|
||||
}
|
||||
:root .main-trackList-rowHeartButton *:not([fill=none]),
|
||||
:root .control-button-heart *:not([fill=none]),
|
||||
:root #_R_G *:not([fill=none]) {
|
||||
fill: var(--spice-heart) !important;
|
||||
}
|
||||
:root .lyrics-lyricsContainer-Provider {
|
||||
font-size: 0;
|
||||
}
|
||||
:root .lyrics-lyricsContainer-LyricsBackground {
|
||||
z-index: -1;
|
||||
background-repeat: no-repeat;
|
||||
background-size: cover;
|
||||
-webkit-mask-image: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6));
|
||||
mask-image: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6));
|
||||
}
|
||||
:root #context-menu {
|
||||
overflow: hidden;
|
||||
}
|
||||
:root #context-menu ul {
|
||||
background-color: var(--spice-player);
|
||||
}
|
||||
:root #context-menu ul button,
|
||||
:root #context-menu ul a {
|
||||
border-radius: 0;
|
||||
}
|
||||
:root #context-menu ul button::before, :root #context-menu ul button::after,
|
||||
:root #context-menu ul a::before,
|
||||
:root #context-menu ul a::after {
|
||||
content: none;
|
||||
}
|
||||
:root #context-menu ul button:not(.main-contextMenu-disabled):focus, :root #context-menu ul button:not(.main-contextMenu-disabled):hover, :root #context-menu ul button[aria-expanded=true],
|
||||
:root #context-menu ul a:not(.main-contextMenu-disabled):focus,
|
||||
:root #context-menu ul a:not(.main-contextMenu-disabled):hover,
|
||||
:root #context-menu ul a[aria-expanded=true] {
|
||||
background-color: rgba(92, 110, 177, 0.1647058824);
|
||||
transition: 150ms background-color;
|
||||
}
|
||||
:root #bookmark-menu {
|
||||
background-color: var(--spice-player);
|
||||
border-radius: var(--border-radius);
|
||||
}
|
||||
:root #bookmark-menu .bookmark-filter {
|
||||
background-color: var(--spice-player);
|
||||
}
|
||||
:root #bookmark-menu button,
|
||||
:root #bookmark-menu a {
|
||||
border-radius: 0;
|
||||
}
|
||||
:root #bookmark-menu button::before, :root #bookmark-menu button::after,
|
||||
:root #bookmark-menu a::before,
|
||||
:root #bookmark-menu a::after {
|
||||
content: none;
|
||||
}
|
||||
:root #bookmark-menu button:not(.main-contextMenu-disabled):focus, :root #bookmark-menu button:not(.main-contextMenu-disabled):hover, :root #bookmark-menu button[aria-expanded=true],
|
||||
:root #bookmark-menu a:not(.main-contextMenu-disabled):focus,
|
||||
:root #bookmark-menu a:not(.main-contextMenu-disabled):hover,
|
||||
:root #bookmark-menu a[aria-expanded=true] {
|
||||
background-color: rgba(92, 110, 177, 0.1647058824);
|
||||
transition: 150ms background-color;
|
||||
}
|
||||
@@ -1,120 +0,0 @@
|
||||
@forward "assets/main";
|
||||
@forward "assets/navbar";
|
||||
@forward "assets/now_playing";
|
||||
@forward "assets/settings";
|
||||
@forward "assets/top_bar";
|
||||
|
||||
:root {
|
||||
--border-radius: 8px;
|
||||
|
||||
button,
|
||||
button span,
|
||||
input,
|
||||
img {
|
||||
border-radius: var(--border-radius) !important;
|
||||
}
|
||||
|
||||
// -- Other --
|
||||
|
||||
// Scrollbar
|
||||
.os-scrollbar-vertical {
|
||||
background: none;
|
||||
|
||||
.os-scrollbar-track {
|
||||
width: 10px;
|
||||
}
|
||||
|
||||
.os-scrollbar-handle {
|
||||
border: 2px solid rgba(200, 200, 200, 0.275);
|
||||
border-radius: 4.5px;
|
||||
}
|
||||
}
|
||||
|
||||
// Play Buttons
|
||||
.encore-bright-accent-set {
|
||||
--background-base: var(--spice-play-button);
|
||||
--background-highlight: var(--spice-play-button-active);
|
||||
--background-press: var(--spice-play-button-active);
|
||||
}
|
||||
|
||||
// Coloured hearts
|
||||
.main-addButton-active {
|
||||
color: var(--spice-heart);
|
||||
&:hover {
|
||||
color: rgba(var(--spice-rgb-heart), 0.7);
|
||||
}
|
||||
}
|
||||
|
||||
#_R_G *:not([stroke="none"]) {
|
||||
stroke: var(--spice-heart);
|
||||
}
|
||||
|
||||
.main-trackList-rowHeartButton,
|
||||
.control-button-heart,
|
||||
#_R_G {
|
||||
& *:not([fill="none"]) {
|
||||
fill: var(--spice-heart) !important;
|
||||
}
|
||||
}
|
||||
|
||||
// Lyrics plus
|
||||
.lyrics-lyricsContainer-Provider {
|
||||
font-size: 0;
|
||||
}
|
||||
.lyrics-lyricsContainer-LyricsBackground {
|
||||
z-index: -1;
|
||||
background-repeat: no-repeat;
|
||||
background-size: cover;
|
||||
-webkit-mask-image: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6));
|
||||
mask-image: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6));
|
||||
}
|
||||
|
||||
#context-menu {
|
||||
overflow: hidden;
|
||||
|
||||
ul {
|
||||
background-color: var(--spice-player);
|
||||
|
||||
button,
|
||||
a {
|
||||
border-radius: 0;
|
||||
|
||||
&::before,
|
||||
&::after {
|
||||
content: none;
|
||||
}
|
||||
&:not(.main-contextMenu-disabled):focus,
|
||||
&:not(.main-contextMenu-disabled):hover,
|
||||
&[aria-expanded="true"] {
|
||||
background-color: #5c6eb12a;
|
||||
transition: 150ms background-color;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#bookmark-menu {
|
||||
background-color: var(--spice-player);
|
||||
border-radius: var(--border-radius);
|
||||
|
||||
.bookmark-filter {
|
||||
background-color: var(--spice-player);
|
||||
}
|
||||
|
||||
button,
|
||||
a {
|
||||
border-radius: 0;
|
||||
|
||||
&::before,
|
||||
&::after {
|
||||
content: none;
|
||||
}
|
||||
&:not(.main-contextMenu-disabled):focus,
|
||||
&:not(.main-contextMenu-disabled):hover,
|
||||
&[aria-expanded="true"] {
|
||||
background-color: #5c6eb12a;
|
||||
transition: 150ms background-color;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,283 +0,0 @@
|
||||
:root .Root__main-view {
|
||||
#preloadImage {
|
||||
position: absolute;
|
||||
width: 0;
|
||||
height: 0;
|
||||
overflow: hidden;
|
||||
z-index: -1;
|
||||
}
|
||||
|
||||
#mainImage {
|
||||
position: absolute; // instead of background-attachment
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
top: 0;
|
||||
left: 0;
|
||||
background-size: 100%;
|
||||
background-repeat: no-repeat;
|
||||
background-position: center;
|
||||
will-change: transform; // creates a new paint layer
|
||||
z-index: -1;
|
||||
transition: 300ms background-image ease-in-out;
|
||||
filter: blur(4px);
|
||||
-webkit-mask-image: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6));
|
||||
mask-image: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6));
|
||||
}
|
||||
|
||||
@media (max-width: 1500px) {
|
||||
#mainImage {
|
||||
background-position: top;
|
||||
}
|
||||
}
|
||||
|
||||
.main-view-container__scroll-node-child {
|
||||
padding-bottom: 0;
|
||||
}
|
||||
|
||||
// Now playing bar queue button
|
||||
#main
|
||||
> div
|
||||
> div.Root__top-container
|
||||
> div.Root__top-bar
|
||||
> header
|
||||
> div.main-topBar-topbarContentWrapper
|
||||
> div
|
||||
> div
|
||||
> button
|
||||
> span
|
||||
> span {
|
||||
fill: var(--spice-selected-row) !important;
|
||||
}
|
||||
|
||||
// Settings radio buttons
|
||||
input:checked ~ .x-toggle-indicatorWrapper {
|
||||
background-color: var(--spice-radio-btn-active);
|
||||
}
|
||||
|
||||
// Home playlist cards
|
||||
.view-homeShortcutsGrid-shortcut {
|
||||
border-radius: var(--border-radius);
|
||||
.view-homeShortcutsGrid-imageWrapper {
|
||||
border-radius: calc(var(--border-radius) + 15px);
|
||||
}
|
||||
}
|
||||
|
||||
// Music card
|
||||
.main-card-card {
|
||||
border-radius: var(--border-radius);
|
||||
padding: 0;
|
||||
overflow: hidden;
|
||||
|
||||
.main-card-imageContainer {
|
||||
margin-bottom: -4px;
|
||||
|
||||
.main-cardImage-circular,
|
||||
img {
|
||||
border-radius: 0;
|
||||
}
|
||||
}
|
||||
.main-card-cardMetadata {
|
||||
padding: 16px;
|
||||
}
|
||||
}
|
||||
|
||||
// Header
|
||||
.main-home-homeHeader {
|
||||
display: none !important;
|
||||
}
|
||||
.main-entityHeader-container .main-entityHeader-backgroundColor {
|
||||
background: none !important;
|
||||
}
|
||||
|
||||
.main-entityHeader-container {
|
||||
padding: 32px;
|
||||
justify-content: center;
|
||||
|
||||
& > div:nth-last-of-type(2) {
|
||||
align-self: center;
|
||||
flex-shrink: 0;
|
||||
|
||||
& + .main-entityHeader-headerText {
|
||||
flex: unset;
|
||||
justify-content: center;
|
||||
|
||||
.main-entityHeader-title h1 {
|
||||
font-size: 50px !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.main-yourEpisodes-yourEpisodesContentWrapper {
|
||||
max-width: unset;
|
||||
}
|
||||
.main-actionBarBackground-background {
|
||||
background: linear-gradient(
|
||||
rgba(var(--spice-rgb-main-transition), 0.6) 0,
|
||||
var(--spice-main) 232px
|
||||
),
|
||||
var(--background-noise) !important;
|
||||
top: 338px;
|
||||
height: calc(100% - 243px);
|
||||
}
|
||||
|
||||
// Playlist, Album & Liked songs
|
||||
section {
|
||||
&[data-testid="playlist-page"],
|
||||
&[data-testid="album-page"],
|
||||
&[data-testid="your-episodes-page"],
|
||||
&[data-testid="artist-page"] {
|
||||
.os-host-overflow {
|
||||
overflow: visible !important;
|
||||
}
|
||||
|
||||
.os-padding {
|
||||
overflow: visible !important;
|
||||
|
||||
.os-viewport {
|
||||
overflow: visible !important;
|
||||
|
||||
.main-actionBar-ActionBar {
|
||||
padding: 8px 16px 16px 16px;
|
||||
|
||||
.main-actionBar-ActionBarRow {
|
||||
margin-bottom: -8px;
|
||||
margin-left: 8px;
|
||||
margin-right: 22px;
|
||||
|
||||
.main-playButton-PlayButton {
|
||||
margin-left: 24px;
|
||||
margin-top: -24px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&[data-testid="your-episodes-page"] > .contentSpacing > section {
|
||||
height: calc(100vh - 494px);
|
||||
}
|
||||
&[data-testid="your-episodes-page"]
|
||||
> .main-yourEpisodes-yourEpisodesContentWrapper {
|
||||
height: calc(100vh - 438px);
|
||||
|
||||
[data-testid^="episode-"] {
|
||||
margin: 0;
|
||||
}
|
||||
}
|
||||
|
||||
&[data-testid="playlist-page"] > div:last-child,
|
||||
&[data-testid="album-page"] > div:nth-last-child(2),
|
||||
&[data-testid="episode"] > div:last-child,
|
||||
&[data-testid="your-episodes-page"] > div:last-child,
|
||||
&[data-testid="artist-page"] > div > div:last-child {
|
||||
background: none;
|
||||
|
||||
.main-trackList-trackListRowGrid {
|
||||
border-radius: var(--border-radius);
|
||||
border: none;
|
||||
padding-left: 18px;
|
||||
transition: 200ms background-color;
|
||||
|
||||
.main-type-mesto,
|
||||
.main-type-ballad {
|
||||
transition: 300ms color;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
background-color: rgba(255, 255, 255, 0.05);
|
||||
}
|
||||
&.main-trackList-selected {
|
||||
background-color: rgba(255, 255, 255, 0.1);
|
||||
}
|
||||
}
|
||||
.main-trackList-trackListHeader {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
// Album & Liked songs
|
||||
&[data-testid] {
|
||||
position: relative;
|
||||
}
|
||||
}
|
||||
|
||||
// Tracklists
|
||||
section[class="contentSpacing"],
|
||||
.rHpv7osDRvs3SUPMpQ_g {
|
||||
.main-trackList-rowSectionIndex {
|
||||
top: 7px !important;
|
||||
left: 16px !important;
|
||||
}
|
||||
}
|
||||
|
||||
section:not([data-testid="album-page"]):not([data-testid="artist-page"]),
|
||||
.NLaDALU71zxOtBUbsrfH {
|
||||
.main-trackList-trackListRow {
|
||||
grid-template-columns: [first] 6fr [var1] 4fr [var2] 3fr [last] minmax(
|
||||
120px,
|
||||
1fr
|
||||
) !important;
|
||||
|
||||
& > .main-trackList-rowSectionIndex {
|
||||
position: absolute;
|
||||
z-index: 1000;
|
||||
top: 8px;
|
||||
left: 18px;
|
||||
width: 40px;
|
||||
height: 40px;
|
||||
justify-content: center;
|
||||
text-indent: -1000px;
|
||||
}
|
||||
}
|
||||
|
||||
.main-trackList-trackList[aria-colcount="6"] .main-trackList-trackListRow {
|
||||
grid-template-columns:
|
||||
[first] 6fr [var1] 4fr [var2] 3fr [var3] minmax(120px, 2fr)
|
||||
[last] minmax(120px, 1fr) !important;
|
||||
}
|
||||
|
||||
button.main-trackList-rowImagePlayButton {
|
||||
color: black;
|
||||
}
|
||||
|
||||
// Image overlay + visible play buttons on interact
|
||||
.main-trackList-trackListRow {
|
||||
&:hover,
|
||||
&:focus-within {
|
||||
.main-trackList-rowSectionIndex {
|
||||
background: rgba(var(--spice-rgb-play-button), 0.5);
|
||||
border-radius: var(--border-radius);
|
||||
}
|
||||
button.main-trackList-rowImagePlayButton {
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
|
||||
// Title highlight of active song
|
||||
&.main-trackList-active {
|
||||
.main-trackList-rowTitle {
|
||||
color: var(--spice-text);
|
||||
text-shadow: 0px 0px 6px var(--spice-text);
|
||||
-webkit-text-stroke: thin;
|
||||
}
|
||||
.main-trackList-rowSectionIndex {
|
||||
background: rgba(var(--spice-rgb-play-button), 0.5);
|
||||
border-radius: var(--border-radius);
|
||||
}
|
||||
button.main-trackList-rowImagePlayButton {
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Artist page art fix
|
||||
.main-entityHeader-background {
|
||||
height: 83vh;
|
||||
&.main-entityHeader-overlay:after {
|
||||
height: 83vh;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,356 +0,0 @@
|
||||
:root .Root__nav-bar {
|
||||
overflow: hidden;
|
||||
|
||||
ul.main-navBar-entryPoints {
|
||||
&#spicetify-sticky-list {
|
||||
white-space: nowrap;
|
||||
border-radius: var(--border-radius);
|
||||
|
||||
> div {
|
||||
display: inline-block;
|
||||
margin-right: 18px;
|
||||
}
|
||||
}
|
||||
|
||||
column-gap: 16px;
|
||||
padding: 0 12px;
|
||||
box-sizing: content-box;
|
||||
transition: 350ms background-color;
|
||||
border-radius: var(--border-radius) var(--border-radius) 0 0;
|
||||
margin: 24px 12px 0 12px;
|
||||
background-color: rgba(0, 0, 0, 0.1);
|
||||
|
||||
& > li {
|
||||
padding: 0;
|
||||
margin: 0 -12px;
|
||||
|
||||
a {
|
||||
padding: 0 12px;
|
||||
border-radius: 0;
|
||||
background-color: transparent;
|
||||
|
||||
&.main-navBar-navBarLinkActive {
|
||||
background-color: rgba(
|
||||
var(--spice-rgb-pagelink-active),
|
||||
0.1647058824
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
&:first-child a {
|
||||
border-radius: var(--border-radius) var(--border-radius) 0 0;
|
||||
}
|
||||
}
|
||||
|
||||
& > div {
|
||||
padding: 0;
|
||||
margin: 2px 0;
|
||||
|
||||
& > *.active {
|
||||
background: none;
|
||||
}
|
||||
|
||||
button,
|
||||
a {
|
||||
padding: 0;
|
||||
|
||||
div {
|
||||
margin-right: 0;
|
||||
border-radius: var(--border-radius);
|
||||
&.main-rootlist-statusIcons {
|
||||
display: none;
|
||||
}
|
||||
&.main-likedSongsButton-likedSongsIcon {
|
||||
background: linear-gradient(
|
||||
135deg,
|
||||
var(--spice-liked-left),
|
||||
var(--spice-liked-right)
|
||||
);
|
||||
border-style: solid;
|
||||
border-width: 2px;
|
||||
}
|
||||
}
|
||||
|
||||
span {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
a[href="/"] {
|
||||
.home-icon {
|
||||
background: url("https://i.imgur.com/jqDH9TQ.png") center/cover
|
||||
no-repeat;
|
||||
}
|
||||
.home-active-icon {
|
||||
background: url("https://i.imgur.com/60h58oZ.png") center/cover
|
||||
no-repeat;
|
||||
}
|
||||
svg > * {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
a[href="/search"] {
|
||||
.search-icon {
|
||||
background: url("https://i.imgur.com/UV5JQpE.png") center/cover
|
||||
no-repeat;
|
||||
}
|
||||
.search-active-icon {
|
||||
background: url("https://i.imgur.com/CTVdQ3d.png") center/cover
|
||||
no-repeat;
|
||||
}
|
||||
svg > * {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
a[href="/collection"] {
|
||||
.collection-icon {
|
||||
background: url("https://i.imgur.com/alXGfxW.png") center/cover
|
||||
no-repeat;
|
||||
}
|
||||
.collection-active-icon {
|
||||
background: url("https://i.imgur.com/SzvrAfr.png") center/cover
|
||||
no-repeat;
|
||||
}
|
||||
svg > * {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
a[href="/lyrics-plus"] {
|
||||
.collection-icon {
|
||||
background: url("https://i.imgur.com/91fuU3P.png") center/cover
|
||||
no-repeat;
|
||||
}
|
||||
.collection-active-icon {
|
||||
background: url("https://i.imgur.com/EgRCYe8.png") center/cover
|
||||
no-repeat;
|
||||
}
|
||||
svg > * {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
a[href="/reddit"] {
|
||||
.collection-icon {
|
||||
background: url("https://i.imgur.com/6N6ev2V.png") center/cover
|
||||
no-repeat;
|
||||
}
|
||||
.collection-active-icon {
|
||||
background: url("https://i.imgur.com/UENFDdo.png") center/cover
|
||||
no-repeat;
|
||||
}
|
||||
svg > * {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
a[href="/new-releases"] {
|
||||
.collection-icon {
|
||||
background: url("https://i.imgur.com/BgkCeDG.png") center/cover
|
||||
no-repeat;
|
||||
}
|
||||
.collection-active-icon {
|
||||
background: url("https://i.imgur.com/CTRVDwF.png") center/cover
|
||||
no-repeat;
|
||||
}
|
||||
svg > * {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
a[href$="marketplace"] {
|
||||
.collection-icon {
|
||||
background: url("https://i.imgur.com/2pWNa48.png") center/cover
|
||||
no-repeat;
|
||||
}
|
||||
.collection-active-icon {
|
||||
background: url("https://i.imgur.com/rKmXQ6V.png") center/cover
|
||||
no-repeat;
|
||||
}
|
||||
svg > * {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
&:not(#spicetify-sticky-list) + .main-rootlist-rootlist {
|
||||
& > div {
|
||||
display: grid;
|
||||
grid-template-areas:
|
||||
"add tracks episodes"
|
||||
"playlists playlists playlists";
|
||||
grid-template-columns: 25px 25px 1fr;
|
||||
grid-template-rows: 25px 1fr;
|
||||
column-gap: 16px;
|
||||
margin: 12px 12px 0 12px;
|
||||
|
||||
& > div:first-child {
|
||||
grid-area: add;
|
||||
margin: -6px 0 0 12px;
|
||||
|
||||
&::before {
|
||||
content: "";
|
||||
position: absolute;
|
||||
width: calc(100% - 24px);
|
||||
height: 40px;
|
||||
margin: -6px 0 0 -12px;
|
||||
background-color: rgba(0, 0, 0, 0.1);
|
||||
border-radius: 0 0 var(--border-radius) var(--border-radius);
|
||||
}
|
||||
|
||||
button {
|
||||
padding: 0;
|
||||
|
||||
.main-createPlaylistButton-createPlaylistIcon {
|
||||
border-radius: var(--border-radius);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
& > div:nth-child(2) {
|
||||
grid-area: tracks;
|
||||
margin: -6px 0 0 12px;
|
||||
|
||||
a {
|
||||
padding: 0;
|
||||
|
||||
.main-likedSongsButton-likedSongsIcon {
|
||||
border-radius: var(--border-radius);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
& > div:nth-child(3) {
|
||||
grid-area: episodes;
|
||||
margin: -6px 0 0 12px;
|
||||
|
||||
a {
|
||||
padding: 0;
|
||||
|
||||
.main-yourEpisodesButton-yourEpisodesIcon {
|
||||
border-radius: var(--border-radius);
|
||||
}
|
||||
|
||||
.main-collectionLinkButton-collectionLinkText {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
& > div:last-child {
|
||||
grid-area: playlists;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.main-rootlist-rootlistDividerContainer {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.main-rootlist-rootlist {
|
||||
margin-top: 0;
|
||||
|
||||
.os-content {
|
||||
padding-top: 16px !important;
|
||||
|
||||
&::before {
|
||||
content: "Playlists";
|
||||
visibility: visible;
|
||||
width: unset;
|
||||
height: unset;
|
||||
line-height: unset;
|
||||
display: block;
|
||||
font-size: 16px;
|
||||
text-align: center;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
& > ul[tabindex="0"] {
|
||||
margin: 12px;
|
||||
|
||||
&:not(#spicetify-playlist-list) {
|
||||
margin: 12px 0 0 0;
|
||||
}
|
||||
|
||||
& > div {
|
||||
contain: unset;
|
||||
|
||||
& > div:nth-child(2) {
|
||||
background-color: rgba(0, 0, 0, 0.1);
|
||||
border-radius: var(--border-radius);
|
||||
|
||||
.main-rootlist-rootlistItem {
|
||||
padding: 0;
|
||||
|
||||
.main-rootlist-rootlistItemLink {
|
||||
padding-top: 4px;
|
||||
padding-bottom: 4px;
|
||||
padding-left: calc(
|
||||
12px + var(--indentation) *
|
||||
var(--left-sidebar-item-indentation-width)
|
||||
);
|
||||
padding-right: var(--left-sidebar-padding-right);
|
||||
box-sizing: content-box;
|
||||
transition: color 350ms ease, background-color 150ms;
|
||||
|
||||
& + button {
|
||||
border-radius: 0 !important;
|
||||
}
|
||||
& + div > button {
|
||||
margin-left: 0;
|
||||
}
|
||||
|
||||
&:hover,
|
||||
&:hover + * {
|
||||
transition: 350ms color;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
&Active,
|
||||
&:focus,
|
||||
&Active + *,
|
||||
&:focus + * {
|
||||
background-color: rgba(
|
||||
var(--spice-rgb-pagelink-active),
|
||||
0.1647058824
|
||||
);
|
||||
cursor: default !important;
|
||||
}
|
||||
}
|
||||
|
||||
.main-rootlist-statusIcons:not(:empty) {
|
||||
margin-inline-start: 0;
|
||||
padding: 4px 12px;
|
||||
transition: 150ms background-color;
|
||||
}
|
||||
|
||||
.main-rootlist-expandArrow {
|
||||
height: unset;
|
||||
margin-left: 0;
|
||||
padding: 4px 12px;
|
||||
transition: 150ms background-color;
|
||||
}
|
||||
}
|
||||
|
||||
.main-rootlist-rootlistItemOverlay {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Cover art expanded
|
||||
.main-coverSlotExpanded-container .cover-art .cover-art-image {
|
||||
border-radius: 0;
|
||||
}
|
||||
|
||||
// Scrollbar
|
||||
.os-scrollbar {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
@@ -1,97 +0,0 @@
|
||||
:root .Root__now-playing-bar {
|
||||
.main-nowPlayingBar-container {
|
||||
position: relative;
|
||||
border-top: none;
|
||||
|
||||
.main-nowPlayingBar-nowPlayingBar {
|
||||
box-sizing: content-box;
|
||||
padding-bottom: 16px;
|
||||
|
||||
// Cover-art
|
||||
.main-nowPlayingWidget-nowPlaying {
|
||||
&.main-nowPlayingWidget-coverExpanded {
|
||||
transform: translateX(-100px);
|
||||
}
|
||||
|
||||
.main-coverSlotCollapsed-container {
|
||||
top: -20px;
|
||||
|
||||
.cover-art {
|
||||
width: 84px !important;
|
||||
height: 84px !important;
|
||||
border-radius: var(--border-radius);
|
||||
overflow: hidden;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.main-connectBar-connectBar {
|
||||
position: absolute;
|
||||
top: -15px;
|
||||
right: 15px;
|
||||
padding: 4px 8px;
|
||||
box-sizing: content-box;
|
||||
border-radius: var(--border-radius);
|
||||
color: #fff;
|
||||
background-color: var(--spice-sidebar);
|
||||
|
||||
&::after {
|
||||
content: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.playback-bar {
|
||||
position: absolute;
|
||||
display: grid;
|
||||
grid-template-columns: auto auto;
|
||||
grid-template-areas:
|
||||
"time-left time-right"
|
||||
"bar bar";
|
||||
bottom: 0;
|
||||
|
||||
.saber-hilt {
|
||||
height: 0;
|
||||
}
|
||||
|
||||
.playback-progressbar {
|
||||
grid-column: 1/3;
|
||||
grid-area: bar;
|
||||
|
||||
& > div {
|
||||
--bg-color: rgba(var(--spice-rgb-progress-bg), 0.3);
|
||||
--fg-color: var(--spice-progress-fg);
|
||||
& > div {
|
||||
--progress-bar-height: 12px;
|
||||
--progress-bar-radius: 0;
|
||||
|
||||
& > div > div {
|
||||
width: 105%;
|
||||
background-color: transparent;
|
||||
background-image: linear-gradient(
|
||||
90deg,
|
||||
var(--spice-progress-fg) 93%,
|
||||
transparent 100%
|
||||
);
|
||||
}
|
||||
}
|
||||
.progress-bar__slider {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
& > div:first-of-type {
|
||||
grid-area: time-left;
|
||||
}
|
||||
& > div:last-of-type {
|
||||
grid-area: time-right;
|
||||
}
|
||||
|
||||
// Cursor
|
||||
button {
|
||||
width: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,7 +0,0 @@
|
||||
.x-settings-container {
|
||||
max-width: unset;
|
||||
|
||||
.x-toggle-indicatorWrapper {
|
||||
border-radius: var(--border-radius);
|
||||
}
|
||||
}
|
||||
@@ -1,82 +0,0 @@
|
||||
:root .Root__top-bar header {
|
||||
button {
|
||||
border-radius: var(--border-radius);
|
||||
|
||||
&[title="Popup Lyrics"] {
|
||||
background-image: url("https://i.imgur.com/91fuU3P.png");
|
||||
background-size: 60%;
|
||||
background-position: center;
|
||||
background-repeat: no-repeat;
|
||||
|
||||
svg {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.main-entityHeader-topbarTitle {
|
||||
padding: 0 0px;
|
||||
}
|
||||
|
||||
.main-playButton-PlayButton {
|
||||
display: none !important;
|
||||
}
|
||||
.main-topBar-background {
|
||||
background-color: rgba(var(--spice-rgb-sidebar), 0.95) !important;
|
||||
}
|
||||
.main-topBar-overlay {
|
||||
background-color: transparent !important;
|
||||
}
|
||||
|
||||
.main-topBar-historyButtons button,
|
||||
.lyrics-tabBar-active {
|
||||
background-color: rgba(11, 11, 17, 0.32);
|
||||
}
|
||||
|
||||
.main-topBar-UpgradeButton {
|
||||
font-size: 0;
|
||||
overflow: hidden;
|
||||
background: url("https://i.imgur.com/nzAfcIL.png") 50% / contain no-repeat;
|
||||
border: none;
|
||||
padding: 5px;
|
||||
box-sizing: content-box;
|
||||
width: 12px;
|
||||
}
|
||||
|
||||
.main-userWidget-box {
|
||||
height: unset;
|
||||
padding: 0;
|
||||
gap: 12px;
|
||||
|
||||
> div {
|
||||
&:last-child {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
.main-avatar-avatar {
|
||||
width: 40px !important;
|
||||
height: 40px !important;
|
||||
display: flex;
|
||||
|
||||
@media (min-width: 1024px) {
|
||||
.main-avatar-image {
|
||||
border-radius: var(--border-radius) 0 0 var(--border-radius);
|
||||
}
|
||||
}
|
||||
|
||||
& > div {
|
||||
width: unset !important;
|
||||
height: unset !important;
|
||||
}
|
||||
}
|
||||
|
||||
.main-userWidget-displayName {
|
||||
padding-right: 12px;
|
||||
}
|
||||
|
||||
.main-userWidget-chevron {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,215 +0,0 @@
|
||||
;COLORS KEYS DESCRIPTION
|
||||
; text = Main text, playlist names in main field, name of playlist selected in sidebar, headings
|
||||
; subtext = Text in main buttons in sidebar, playlist names in sidebar, artist names, and mini infos
|
||||
; main = Main field background
|
||||
; main-transition = Tracklist field transition
|
||||
; sidebar = Sidebar background
|
||||
; player = Player background
|
||||
; card = Card background on hover and player area outline
|
||||
; shadow = Card drop shadow, button background
|
||||
; selected row = Color of the song selected, scrollbar, caption and playlist details, download and options buttons
|
||||
; button = Playlist buttons background in sidebar, drop-down menus, now playing song, play button background, like button
|
||||
; button-active = Play button background
|
||||
; button-disabled = Seekbar background, volume bar background
|
||||
; tab-active = Tabbar active item background in header
|
||||
; notification = Notification toast
|
||||
; notification-error = Notification error toast
|
||||
; misc = Miscellaneous
|
||||
; play-button = Default play button colours -widget only, not row icons-
|
||||
; play-button-active = Play-button but when hovered/interacted
|
||||
; progress-fg = Progress bar foreground
|
||||
; progress-bg = Progress bar background
|
||||
; heart = Heart icons
|
||||
; liked-left = Liked songs page button gradient left
|
||||
; liked-right = Liked songs page button gradient right
|
||||
; pagelink-active = Background overlay colour of sidebar pagelinks when interacted with
|
||||
; radio-btn-active = Radio buttons such as the toggles in settings, activated colour
|
||||
|
||||
[Comfy]
|
||||
text = FFFFFF
|
||||
subtext = B9BBBE
|
||||
main = 1F1D2E
|
||||
main-transition = 1F1D2E
|
||||
sidebar = 1F1D2E
|
||||
player = 1F1D2E
|
||||
card = 191F2E
|
||||
shadow = 1E2233
|
||||
selected-row = F1F1F1
|
||||
button = 7289DA
|
||||
button-active = 5C6FB1
|
||||
button-disabled = 4B588C
|
||||
tab-active = 1E2233
|
||||
notification = 7289DA
|
||||
notification-error = d25050
|
||||
misc = 000000
|
||||
play-button = 5C6FB1
|
||||
play-button-active = 7289DA
|
||||
progress-fg = D4A4E2
|
||||
progress-bg = 13111C
|
||||
heart = 4B427E
|
||||
liked-left = 3a62f5
|
||||
liked-right = c4efd9
|
||||
pagelink-active = 5c6eb1
|
||||
radio-btn-active = 7289DA
|
||||
|
||||
[Mono]
|
||||
text = FFFFFF
|
||||
subtext = B9BBBE
|
||||
main = 171717
|
||||
main-transition = FFFFFF
|
||||
sidebar = 101010
|
||||
player = 101010
|
||||
card = 343434
|
||||
shadow = 595858
|
||||
selected-row = F1F1F1
|
||||
button = FFFFFF
|
||||
button-active = c5c5c5
|
||||
button-disabled = 4a4949
|
||||
tab-active = 303030
|
||||
notification = 101010
|
||||
notification-error = d25050
|
||||
misc = 000000
|
||||
play-button = FFFFFF
|
||||
play-button-active = FFFFFF
|
||||
progress-fg = FFFFFF
|
||||
progress-bg = 343434
|
||||
heart = FFFFFF
|
||||
liked-left = 000000
|
||||
liked-right = ffffff
|
||||
pagelink-active = 787878
|
||||
radio-btn-active = 737373
|
||||
|
||||
[Sunset]
|
||||
text = ffce3f
|
||||
subtext = fef3bb
|
||||
main = 171717
|
||||
main-transition = 000000
|
||||
sidebar = 101010
|
||||
player = 101010
|
||||
card = cc9756
|
||||
shadow = e3b47b
|
||||
selected-row = fef3bb
|
||||
button = ffce3f
|
||||
button-active = bf9b30
|
||||
button-disabled = 4a4949
|
||||
tab-active = 303030
|
||||
notification = ffffff
|
||||
notification-error = d25050
|
||||
misc = 000000
|
||||
play-button = ffce3f
|
||||
play-button-active = fc9e3a
|
||||
progress-fg = ff8300
|
||||
progress-bg = 343434
|
||||
heart = ff8300
|
||||
liked-left = 000000
|
||||
liked-right = ffffff
|
||||
pagelink-active = fef3bb
|
||||
radio-btn-active = fef3bb
|
||||
|
||||
[Neon]
|
||||
text = 588bae
|
||||
subtext = eaffff
|
||||
main = 171717
|
||||
main-transition = 000000
|
||||
sidebar = 101010
|
||||
player = 101010
|
||||
card = 7fa1b5
|
||||
shadow = a9c9db
|
||||
selected-row = F1F1F1
|
||||
button = 588bae
|
||||
button-active = 3b5d75
|
||||
button-disabled = 4a4949
|
||||
tab-active = 303030
|
||||
notification = FFFFFF
|
||||
notification-error = d25050
|
||||
misc = 000000
|
||||
play-button = 588bae
|
||||
play-button-active = 5085ab
|
||||
progress-fg = 00afdb
|
||||
progress-bg = 343434
|
||||
heart = 00afdb
|
||||
liked-left = 000000
|
||||
liked-right = ffffff
|
||||
pagelink-active = bbe7fe
|
||||
radio-btn-active = eaffff
|
||||
|
||||
[Forest]
|
||||
text = B2C5B3
|
||||
subtext = d5ddde
|
||||
main = 171717
|
||||
main-transition = 000000
|
||||
sidebar = 101010
|
||||
player = 101010
|
||||
card = 5c6e59
|
||||
shadow = 3c5148
|
||||
selected-row = F1F1F1
|
||||
button = B2C5B3
|
||||
button-active = F1F1F1
|
||||
button-disabled = 4a4949
|
||||
tab-active = 303030
|
||||
notification = FFFFFF
|
||||
notification-error = d25050
|
||||
misc = 000000
|
||||
play-button = 3c5148
|
||||
play-button-active = 43705d
|
||||
progress-fg = 3c5148
|
||||
progress-bg = 343434
|
||||
heart = 3c5148
|
||||
liked-left = 000000
|
||||
liked-right = ffffff
|
||||
pagelink-active = 3c5148
|
||||
radio-btn-active = 737373
|
||||
|
||||
[Sakura]
|
||||
text = fcb4ca
|
||||
subtext = ffdcdc
|
||||
main = 171717
|
||||
main-transition = 000000
|
||||
sidebar = 101010
|
||||
player = 101010
|
||||
card = d68ba2
|
||||
shadow = fcb4ca
|
||||
selected-row = ffdcdc
|
||||
button = fcb4ca
|
||||
button-active = d48aa0
|
||||
button-disabled = 4a4949
|
||||
tab-active = 303030
|
||||
notification = FFFFFF
|
||||
notification-error = d25050
|
||||
misc = 000000
|
||||
play-button = f42c38
|
||||
play-button-active = ba182b
|
||||
progress-fg = Cfeefa
|
||||
progress-bg = 343434
|
||||
heart = f25477
|
||||
liked-left = 000000
|
||||
liked-right = ffffff
|
||||
pagelink-active = f5bcdb
|
||||
radio-btn-active = ffdcdc
|
||||
|
||||
[Vaporwave]
|
||||
text = 01CDFE
|
||||
subtext = eaffff
|
||||
main = 171717
|
||||
main-transition = 000000
|
||||
sidebar = 101010
|
||||
player = 101010
|
||||
card = 007f9e
|
||||
shadow = 2ec2e6
|
||||
selected-row = F1F1F1
|
||||
button = 01CDFE
|
||||
button-active = 118ba8
|
||||
button-disabled = 4a4949
|
||||
tab-active = 303030
|
||||
notification = FFFFFF
|
||||
notification-error = d25050
|
||||
misc = 000000
|
||||
play-button = ffd300
|
||||
play-button-active = e3c01b
|
||||
progress-fg = f706cf
|
||||
progress-bg = 343434
|
||||
heart = f706cf
|
||||
liked-left = 000000
|
||||
liked-right = ffffff
|
||||
pagelink-active = c0d6fa
|
||||
radio-btn-active = eaffff
|
||||
@@ -1,9 +0,0 @@
|
||||
(() => {
|
||||
const script = document.createElement("SCRIPT");
|
||||
script.setAttribute("type", "text/javascript");
|
||||
script.setAttribute(
|
||||
"src",
|
||||
"https://comfy-themes.github.io/Spicetify/Comfy/comfy.script.js"
|
||||
);
|
||||
document.head.appendChild(script);
|
||||
})();
|
||||
@@ -1,274 +0,0 @@
|
||||
(async function Comfy() {
|
||||
const { Player, Menu, LocalStorage, Platform } = Spicetify;
|
||||
const mainChild = document.createElement("div");
|
||||
const preloadChild = document.createElement("div");
|
||||
const main = document.querySelector(".Root__main-view");
|
||||
const topbar = document.querySelector("header.main-topBar-container");
|
||||
const LyricsBackground = document.querySelector(
|
||||
".lyrics-lyricsContainer-LyricsBackground"
|
||||
);
|
||||
let activityquery = document.querySelector(
|
||||
"aside[aria-label='Friend Activity']"
|
||||
);
|
||||
|
||||
if (!(Player?.data && Menu && LocalStorage && Platform && main && topbar)) {
|
||||
setTimeout(Comfy, 1000);
|
||||
return;
|
||||
}
|
||||
|
||||
let content = document.createElement("div");
|
||||
let style = document.createElement("style");
|
||||
style.innerHTML = `
|
||||
.setting-row::after {
|
||||
content: "";
|
||||
display: table;
|
||||
clear: both;
|
||||
}
|
||||
.setting-row {
|
||||
display: flex;
|
||||
padding: 10px 0;
|
||||
align-items: center;
|
||||
}
|
||||
.setting-row .col.description {
|
||||
float: left;
|
||||
padding-right: 15px;
|
||||
width: 100%;
|
||||
}
|
||||
.setting-row .col.action {
|
||||
float: right;
|
||||
text-align: right;
|
||||
}
|
||||
button.switch {
|
||||
align-items: center;
|
||||
border: 0px;
|
||||
border-radius: 50%;
|
||||
background-color: rgba(var(--spice-rgb-shadow), .7);
|
||||
color: var(--spice-text);
|
||||
cursor: pointer;
|
||||
display: flex;
|
||||
margin-inline-start: 12px;
|
||||
padding: 8px;
|
||||
}
|
||||
button.switch.disabled,
|
||||
button.switch[disabled] {
|
||||
color: rgba(var(--spice-rgb-text), .3);
|
||||
}
|
||||
button.reset {
|
||||
font-weight: 700;
|
||||
background-color: var(--spice-text);
|
||||
color: var(--spice-main);
|
||||
border-radius: 500px;
|
||||
font-size: inherit;
|
||||
padding-block: 12px;
|
||||
padding-inline: 32px;
|
||||
}
|
||||
button.reset:hover {
|
||||
transform: scale(1.04);
|
||||
}`;
|
||||
content.appendChild(style);
|
||||
|
||||
new Spicetify.Menu.Item("Comfy settings", false, () => {
|
||||
Spicetify.PopupModal.display({
|
||||
title: "Comfy Settings",
|
||||
content,
|
||||
});
|
||||
}).register();
|
||||
|
||||
function hotload(bool, url, classname) {
|
||||
if (bool) {
|
||||
loadCSS(url, classname);
|
||||
} else {
|
||||
unloadCSS(classname);
|
||||
}
|
||||
}
|
||||
|
||||
function getConfig(key) {
|
||||
try {
|
||||
return JSON.parse(Spicetify.LocalStorage.get(key));
|
||||
} catch (e) {
|
||||
console.error(e);
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
function createSlider(name, desc, defaultVal, url = null) {
|
||||
const container = document.createElement("div");
|
||||
container.classList.add("setting-row");
|
||||
container.innerHTML = `
|
||||
<label class="col description">${desc}</label>
|
||||
<div class="col action"><button class="switch">
|
||||
<svg height="16" width="16" viewBox="0 0 16 16" fill="currentColor">
|
||||
${Spicetify.SVGIcons.check}
|
||||
</svg>
|
||||
</button></div>`;
|
||||
|
||||
const slider = container.querySelector("button.switch");
|
||||
slider.classList.toggle("disabled", !defaultVal);
|
||||
|
||||
slider.onclick = () => {
|
||||
const state = slider.classList.contains("disabled");
|
||||
slider.classList.toggle("disabled");
|
||||
Spicetify.LocalStorage.set(name, state);
|
||||
url && hotload(state, url, name);
|
||||
console.log(name, getConfig(name));
|
||||
};
|
||||
|
||||
return container;
|
||||
}
|
||||
|
||||
// Hover Panels
|
||||
const hoverUrl = `https://raw.githubusercontent.com/Comfy-Themes/Spicetify/dev/Comfy/snippets/hover-panels.css`;
|
||||
const hoverClassname = `Hover-Panels-Snippet`;
|
||||
const lsBool = getConfig(hoverClassname) ?? false;
|
||||
hotload(lsBool, hoverUrl, hoverClassname);
|
||||
content.appendChild(
|
||||
createSlider(hoverClassname, "Hover Panels", lsBool, hoverUrl)
|
||||
);
|
||||
|
||||
// ColorScheme Snippets
|
||||
const colorScheme = Spicetify.Config?.color_scheme.toLowerCase();
|
||||
const addonUrl = `https://raw.githubusercontent.com/Comfy-Themes/Spicetify/dev/Comfy/snippets/${colorScheme}.css`;
|
||||
const addonClassname = `Comfy-${colorScheme}-Snippet`;
|
||||
if ((await fetch(addonUrl)).ok) {
|
||||
let lsBool = getConfig(`Comfy-${colorScheme}-Snippet`) ?? true;
|
||||
hotload(lsBool, addonUrl, addonClassname);
|
||||
content.appendChild(
|
||||
createSlider(
|
||||
addonClassname,
|
||||
`Comfy-${
|
||||
colorScheme.charAt(0).toUpperCase() + colorScheme.slice(1)
|
||||
} additional features`,
|
||||
lsBool,
|
||||
addonUrl
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
async function loadCSS(url, classname) {
|
||||
await fetch(url)
|
||||
.then((res) => res.text())
|
||||
.then((css) => {
|
||||
const style = document.createElement("style");
|
||||
style.innerHTML = css;
|
||||
style.classList.add(classname);
|
||||
document.head.appendChild(style);
|
||||
})
|
||||
.catch((e) => console.error(e));
|
||||
}
|
||||
|
||||
function unloadCSS(classname) {
|
||||
return document.querySelector(`.${classname}`)?.remove();
|
||||
}
|
||||
|
||||
// Function that checks [if activityquery.position == absolute (Hover Panels Enabled)] or [activityquery.position == default].
|
||||
// Once checked it will make the changes to topbar as needed.
|
||||
function ComputedStyleCondition() {
|
||||
if (
|
||||
!document
|
||||
.querySelector("html")
|
||||
.classList.contains("spotify__os--is-windows")
|
||||
)
|
||||
return;
|
||||
|
||||
if (
|
||||
!activityquery ||
|
||||
getComputedStyle(activityquery).position == "absolute"
|
||||
) {
|
||||
topbar.style.paddingInlineEnd = "162px";
|
||||
} else {
|
||||
topbar.style.paddingInlineEnd = "32px";
|
||||
}
|
||||
}
|
||||
|
||||
// Setting of topbar
|
||||
ComputedStyleCondition(); // Startup Initialization
|
||||
|
||||
// Hover Events - Adds lag might need a rework
|
||||
// Calls function until condition is met
|
||||
waitActivityPanel = setInterval(() => {
|
||||
// console.log("Activity Panel not found");
|
||||
|
||||
// Reassign variable
|
||||
activityquery = document.querySelector(
|
||||
"aside[aria-label='Friend Activity']"
|
||||
);
|
||||
|
||||
if (activityquery) {
|
||||
// console.log("Activity Panel found!");
|
||||
activityquery.addEventListener(
|
||||
"mouseover",
|
||||
() => {
|
||||
ComputedStyleCondition();
|
||||
},
|
||||
false
|
||||
);
|
||||
|
||||
activityquery.addEventListener(
|
||||
"mouseout",
|
||||
() => {
|
||||
ComputedStyleCondition();
|
||||
},
|
||||
false
|
||||
);
|
||||
clearInterval(waitActivityPanel);
|
||||
}
|
||||
}, 1000);
|
||||
|
||||
// Spotify launching on a playlist
|
||||
const channels = [
|
||||
"/playlist/",
|
||||
"/album/",
|
||||
"/collection/tracks",
|
||||
"/collection/episodes",
|
||||
"/episode/",
|
||||
"/lyrics-plus",
|
||||
];
|
||||
main.appendChild(mainChild);
|
||||
mainChild.id = "mainImage";
|
||||
|
||||
main.appendChild(preloadChild);
|
||||
preloadChild.id = "preloadImage";
|
||||
preloadChild.style.display = "none";
|
||||
|
||||
for (var i = 0; i < channels.length; i++) {
|
||||
if (Platform.History.location.pathname.startsWith(channels[i])) {
|
||||
preloadChild.style.content =
|
||||
"url(" + Player.data.track.metadata.image_xlarge_url + ")";
|
||||
setTimeout(() => {
|
||||
mainChild.style.backgroundImage =
|
||||
"url(" + Player.data.track.metadata.image_xlarge_url + ")";
|
||||
}, 1000);
|
||||
}
|
||||
}
|
||||
|
||||
// Waiting for a switch between channels
|
||||
Platform.History.listen(({ pathname }) => {
|
||||
// If the channel is a playlist
|
||||
for (var i = 0; i < channels.length; i++) {
|
||||
if (pathname.startsWith(channels[i])) {
|
||||
preloadChild.style.content =
|
||||
"url(" + Player.data.track.metadata.image_xlarge_url + ")";
|
||||
setTimeout(() => {
|
||||
mainChild.style.backgroundImage =
|
||||
"url(" + Player.data.track.metadata.image_xlarge_url + ")";
|
||||
}, 1000);
|
||||
return;
|
||||
} else {
|
||||
mainChild.style.backgroundImage = null;
|
||||
}
|
||||
}
|
||||
});
|
||||
// Change the song image on song change
|
||||
Player.addEventListener("songchange", () => {
|
||||
for (var i = 0; i < channels.length; i++) {
|
||||
if (Platform.History.location.pathname.startsWith(channels[i])) {
|
||||
preloadChild.style.content =
|
||||
"url(" + Player.data.track.metadata.image_xlarge_url + ")";
|
||||
setTimeout(() => {
|
||||
mainChild.style.backgroundImage =
|
||||
"url(" + Player.data.track.metadata.image_xlarge_url + ")";
|
||||
}, 1000);
|
||||
}
|
||||
}
|
||||
});
|
||||
})();
|
||||
@@ -1 +0,0 @@
|
||||
.Root__nav-bar {position: absolute;width: 40px;opacity: 0;bottom: 0;left: 0;top: 0;z-index: 1;}nav.Root__nav-bar:hover {position: inherit;width: 225px;opacity: 1;transition: visibility 5s, opacity 0.5s linear;}.LayoutResizer__resize-bar {cursor: none;}.Root__top-bar {opacity: 0;transition: visibility 5s, opacity 1s linear;}.Root__top-bar:hover {transition-delay: 0.5s;opacity: 1;transition: visibility 5s, opacity 0.5s linear;}.main-topBar-container {-webkit-padding-end: 32px;padding: 16px 85px;padding-inline-end: 32px;max-width: none;}aside[aria-label='Friend Activity']:hover {position: inherit;width: var(--buddy-feed-width);opacity: 1;transition: visibility 5s, opacity 0.5s linear;left: 0;}aside[aria-label='Friend Activity'] {position: absolute;width: 65px;opacity: 0;bottom: 0;left: -30px;top: 0;z-index: 1;}
|
||||
@@ -1,29 +0,0 @@
|
||||
/* Needs more but proof of concept here: */
|
||||
|
||||
/*/ Cover Art Mod /*/
|
||||
#main > div > div.Root__top-container > div.Root__now-playing-bar > footer > div > div.main-nowPlayingBar-left > div > div.main-coverSlotCollapsed-container.IcyWfMS5VkeOhaI7OWIx > div > div > a > div > div {
|
||||
width: 115px !important;
|
||||
height: 84px !important;
|
||||
border-radius: 15px;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.cover-art.shadow {
|
||||
box-shadow: 0 0 10px rgba(var(--spice-rgb-shadow),.4);
|
||||
}
|
||||
|
||||
.main-coverSlotCollapsed-expandButton:focus, .main-coverSlotCollapsed-expandButton {
|
||||
color: rgb(0,0,0);
|
||||
}
|
||||
|
||||
.main-coverSlotCollapsed-expandButton:focus, .main-coverSlotCollapsed-expandButton:hover {
|
||||
color: rgb(0,0,0);
|
||||
}
|
||||
|
||||
.main-editImageButton-icon.icon {
|
||||
color: #000000;
|
||||
}
|
||||
|
||||
svg.main-coverSlotExpandedCollapseButton-chevron {
|
||||
color: rgb(0,0,0);
|
||||
}
|
||||
@@ -1 +0,0 @@
|
||||
@import url("https://comfy-themes.github.io/Spicetify/Comfy/app.css");
|
||||
@@ -1,32 +0,0 @@
|
||||
[Preprocesses]
|
||||
remove_rtl_rule = 1
|
||||
expose_apis = 1
|
||||
disable_upgrade_check = 1
|
||||
disable_sentry = 1
|
||||
disable_ui_logging = 1
|
||||
|
||||
[AdditionalOptions]
|
||||
experimental_features = 1
|
||||
extensions = adblock.js|comfy.js
|
||||
custom_apps =
|
||||
sidebar_config = 1
|
||||
home_config = 1
|
||||
|
||||
[Patch]
|
||||
|
||||
[Setting]
|
||||
overwrite_assets = 1
|
||||
spotify_launch_flags =
|
||||
spotify_path = /opt/spotify
|
||||
prefs_path = /home/unreal/.config/spotify/prefs
|
||||
current_theme = Comfy
|
||||
color_scheme =
|
||||
replace_colors = 1
|
||||
inject_css = 1
|
||||
check_spicetify_upgrade = 0
|
||||
|
||||
; DO NOT CHANGE!
|
||||
[Backup]
|
||||
version = 1.1.84.716.gc5f8b819
|
||||
with = 2.12.0
|
||||
|
||||