refactor: remove s from config path
This commit is contained in:
parent
35b0135dd7
commit
e00412252a
32 changed files with 5 additions and 5 deletions
config
eww
hypr
swaync
3
config/eww/README.md
Normal file
3
config/eww/README.md
Normal file
|
@ -0,0 +1,3 @@
|
|||
credits: https://github.com/AlphaTechnolog/dotfiles/tree/openbox
|
||||
|
||||
it has been slightly modified
|
1
config/eww/closer/README.md
Normal file
1
config/eww/closer/README.md
Normal file
|
@ -0,0 +1 @@
|
|||
always open this widget last
|
9
config/eww/closer/closer.yuck
Normal file
9
config/eww/closer/closer.yuck
Normal file
|
@ -0,0 +1,9 @@
|
|||
(defwidget closer []
|
||||
(eventbox :onclick "$EWW_PATH/close-opened.sh && eww close closer"))
|
||||
|
||||
(defwindow closer
|
||||
:monitor 0
|
||||
:geometry (geometry :width "100%" :height "100%")
|
||||
:stacking "overlay"
|
||||
:focusable false
|
||||
(closer :window ""))
|
31
config/eww/colors.scss
Normal file
31
config/eww/colors.scss
Normal file
|
@ -0,0 +1,31 @@
|
|||
$darkbg: #0b0d16;
|
||||
$bg: rgb(40, 42, 54); //rgba(69, 71, 90, 0.3); #0d0f18;
|
||||
$contrastbg: rgba(189, 147, 249, 0.8);
|
||||
$bgSecondary: #11131c;
|
||||
$bgSecondaryAlt: #a5b6cf;
|
||||
$fg: #a5b6cf;
|
||||
$fgDim: #a5b6cf;
|
||||
$watermelon: #dd6777;
|
||||
|
||||
// Aliases
|
||||
$background: $bg;
|
||||
$backgroundSecondary: $bgSecondary;
|
||||
$backgroundSecondaryAlt: $bgSecondaryAlt;
|
||||
$foreground: $fg;
|
||||
$foregroundDim: $fgDim;
|
||||
|
||||
$black: #151720;
|
||||
$dimblack: #1a1c25;
|
||||
$lightblack: #262831;
|
||||
$red: #dd6777;
|
||||
$blue: #86aaec;
|
||||
$cyan: #93cee9;
|
||||
$blue-desaturated: #93cee9;
|
||||
$magenta: #c296eb;
|
||||
$purple: #c296eb;
|
||||
$green: #90ceaa;
|
||||
$aquamarine: #90ceaa;
|
||||
$yellow: #ecd3a0;
|
||||
$accent: $blue;
|
||||
$javacafeMagenta: #c296eb;
|
||||
$javacafeBlue: #86aaec;
|
72
config/eww/date/date.scss
Normal file
72
config/eww/date/date.scss
Normal file
|
@ -0,0 +1,72 @@
|
|||
.date {
|
||||
background-color: $bg;
|
||||
color: $fg;
|
||||
border-radius: 30px;
|
||||
border: 5px solid $contrastbg;
|
||||
}
|
||||
|
||||
.timebox {
|
||||
margin: 30px 0px;
|
||||
.time-container {
|
||||
.content {
|
||||
font-family: Product Sans;
|
||||
font-weight: bolder;
|
||||
font-size: 60px;
|
||||
}
|
||||
.divider {
|
||||
margin: 8px 15px;
|
||||
padding: 0px 1px;
|
||||
background: linear-gradient($red, $magenta, $blue, $cyan);
|
||||
}
|
||||
}
|
||||
.date-container {
|
||||
font-family: Product Sans;
|
||||
margin-top: 2px;
|
||||
}
|
||||
}
|
||||
|
||||
.cal-box {
|
||||
font-family: Product Sans;
|
||||
background-color: $bg;
|
||||
border-radius: 15px;
|
||||
padding: 0 1rem .2rem;
|
||||
color: $fg;
|
||||
background-color: $contrastbg;
|
||||
margin: 0px 12px 12px 12px;
|
||||
|
||||
.cal {
|
||||
background-color: inherit;
|
||||
padding: .5rem .10rem 0rem;
|
||||
margin-left: 10px;
|
||||
|
||||
& > * {
|
||||
border: solid 0px transparent;
|
||||
}
|
||||
|
||||
&.highlight {
|
||||
padding: 10rem;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
calendar:selected {
|
||||
color: $cyan;
|
||||
}
|
||||
|
||||
calendar.header {
|
||||
color: $cyan;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
calendar.button {
|
||||
color: $cyan;
|
||||
}
|
||||
|
||||
calendar.highlight {
|
||||
color: $green;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
calendar:indeterminate {
|
||||
color: $lightblack;
|
||||
}
|
63
config/eww/date/date.yuck
Normal file
63
config/eww/date/date.yuck
Normal file
|
@ -0,0 +1,63 @@
|
|||
(defwidget divider []
|
||||
(box :class "divider"
|
||||
:orientation "v"
|
||||
:space-evenly true)
|
||||
)
|
||||
|
||||
(defwidget time []
|
||||
(box :class "timebox"
|
||||
:orientation "v"
|
||||
:space-evenly false
|
||||
(box :class "time-container"
|
||||
:orientation "h"
|
||||
:space-evenly false
|
||||
:halign "center"
|
||||
:valign "center"
|
||||
(label :text "${lithour}" :class "content")
|
||||
(divider)
|
||||
(label :text "${litmin}" :class "content")
|
||||
)
|
||||
(box :class "date-container"
|
||||
:orientation "h"
|
||||
:space-evenly true
|
||||
:halign "center"
|
||||
(label :text "${completeday}")
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(defwidget cal []
|
||||
(box :class "cal-box"
|
||||
:orientation "v"
|
||||
:space-evenly false
|
||||
(calendar :class "cal"
|
||||
:day calendar_day
|
||||
:month calendar_month
|
||||
:year calendar_year)
|
||||
)
|
||||
)
|
||||
|
||||
(defwidget date []
|
||||
(box :class "date"
|
||||
:orientation "v"
|
||||
:space-evenly false
|
||||
(time)
|
||||
(cal)
|
||||
)
|
||||
)
|
||||
|
||||
(defvar date-visible false)
|
||||
|
||||
(defwindow date-reveal
|
||||
:monitor 0
|
||||
:stacking "overlay"
|
||||
:geometry (geometry :x "70px"
|
||||
:y "4px"
|
||||
:width "0px" ; automatically generated
|
||||
:height "0px" ; automatically generated
|
||||
:anchor "top right")
|
||||
(revealer
|
||||
:transition "crossfade"
|
||||
:reveal date-visible
|
||||
:duration "550ms"
|
||||
(date)))
|
8
config/eww/eww.scss
Normal file
8
config/eww/eww.scss
Normal file
|
@ -0,0 +1,8 @@
|
|||
* {
|
||||
all: unset;
|
||||
}
|
||||
|
||||
@import "colors.scss";
|
||||
@import "date/date.scss";
|
||||
@import "powermenu/powermenu.scss";
|
||||
@import "traybuttons/traybuttons.scss";
|
5
config/eww/eww.yuck
Normal file
5
config/eww/eww.yuck
Normal file
|
@ -0,0 +1,5 @@
|
|||
(include "variables.yuck")
|
||||
(include "date/date.yuck")
|
||||
(include "powermenu/powermenu.yuck")
|
||||
(include "closer/closer.yuck")
|
||||
(include "traybuttons/traybuttons.yuck")
|
28
config/eww/powermenu/powermenu.scss
Normal file
28
config/eww/powermenu/powermenu.scss
Normal file
|
@ -0,0 +1,28 @@
|
|||
.powermenu {
|
||||
background-color: $bg;
|
||||
color: $fg;
|
||||
padding: 20px;
|
||||
font-family: MesloLGS NF;
|
||||
/*font-family: Iosevka Nerd Font;*/
|
||||
font-size: 70px;
|
||||
border-radius: 30px;
|
||||
border: 5px solid $contrastbg;
|
||||
button {
|
||||
border-radius: 12px;
|
||||
min-width: 80px;
|
||||
transition: all ease .2s;
|
||||
&:hover { background-color: $bgSecondary; }
|
||||
&:active { background-color: $bg; }
|
||||
.content {
|
||||
border-radius: 4px;
|
||||
padding: 0px 15px 0px 15px;
|
||||
}
|
||||
}
|
||||
.shutdown { color: $red; }
|
||||
.reboot { color: $magenta; }
|
||||
.logout { color: $yellow; }
|
||||
}
|
||||
|
||||
.powermenu-clickhandler {
|
||||
background-color: black;
|
||||
}
|
55
config/eww/powermenu/powermenu.yuck
Normal file
55
config/eww/powermenu/powermenu.yuck
Normal file
|
@ -0,0 +1,55 @@
|
|||
(defwidget powermenu []
|
||||
(box :class "powermenu"
|
||||
:orientation "h"
|
||||
:space-evenly true
|
||||
:spacing 20
|
||||
(button :class "shutdown"
|
||||
:onclick "systemctl poweroff"
|
||||
(label :text "襤" :class "content")
|
||||
)
|
||||
(button :class "reboot"
|
||||
:onclick "systemctl reboot"
|
||||
(label :text "勒" :class "content")
|
||||
)
|
||||
(button :class "logout"
|
||||
:onclick "hyprctl dispatch exit"
|
||||
(label :text "" :class "content")
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(defwidget powermenu-clickhandler []
|
||||
(button :class "powermenu-clickhandler"
|
||||
:onclick "eww close powermenu powermenu-clickhandler"
|
||||
""
|
||||
)
|
||||
)
|
||||
|
||||
(defwindow powermenu-clickhandler
|
||||
:monitor 0
|
||||
:geometry (geometry :x "0px"
|
||||
:y "0px"
|
||||
:width "100%"
|
||||
:height "100%"
|
||||
:anchor "center")
|
||||
:wm-ignore true
|
||||
(powermenu-clickhandler)
|
||||
)
|
||||
|
||||
(defvar powermenu-visible false)
|
||||
|
||||
(defwindow powermenu-reveal
|
||||
:monitor 0
|
||||
:stacking "overlay"
|
||||
:geometry (geometry :x "0px"
|
||||
:y "0px"
|
||||
:width "500px"
|
||||
:height "150px"
|
||||
:anchor "center")
|
||||
(revealer
|
||||
:transition "crossfade"
|
||||
:reveal powermenu-visible
|
||||
:duration "550ms"
|
||||
(powermenu)
|
||||
)
|
||||
)
|
50
config/eww/scripts/brightness.sh
Executable file
50
config/eww/scripts/brightness.sh
Executable file
|
@ -0,0 +1,50 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
# @requires: brightnessctl
|
||||
|
||||
percentage () {
|
||||
local val=$(echo $1 | tr '%' ' ' | awk '{print $1}')
|
||||
local icon1=$2
|
||||
local icon2=$3
|
||||
local icon3=$4
|
||||
local icon4=$5
|
||||
if [ "$val" -le 15 ]; then
|
||||
echo $icon1
|
||||
elif [ "$val" -le 30 ]; then
|
||||
echo $icon2
|
||||
elif [ "$val" -le 60 ]; then
|
||||
echo $icon3
|
||||
else
|
||||
echo $icon4
|
||||
fi
|
||||
}
|
||||
|
||||
get_brightness () {
|
||||
(( br = $(brightnessctl get) * 100 / $(brightnessctl max) ))
|
||||
echo $br
|
||||
}
|
||||
|
||||
get_percent () {
|
||||
echo $(get_brightness)%
|
||||
}
|
||||
|
||||
get_icon () {
|
||||
local br=$(get_percent)
|
||||
echo $(percentage "$br" "" "" "" "")
|
||||
}
|
||||
|
||||
if [[ $1 == "br" ]]; then
|
||||
get_brightness
|
||||
fi
|
||||
|
||||
if [[ $1 == "percent" ]]; then
|
||||
get_percent
|
||||
fi
|
||||
|
||||
if [[ $1 == "icon" ]]; then
|
||||
get_icon
|
||||
fi
|
||||
|
||||
if [[ $1 == "set" ]]; then
|
||||
brightnessctl set $2%
|
||||
fi
|
19
config/eww/scripts/close-opened.sh
Executable file
19
config/eww/scripts/close-opened.sh
Executable file
|
@ -0,0 +1,19 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
# Store the output of the command in an array, keeping only lines with '*'
|
||||
readarray -t array <<< "$(eww windows | grep '^\*')"
|
||||
|
||||
# Remove the '*' from each element
|
||||
for ((i=0; i<${#array[@]}; i++))
|
||||
do
|
||||
array[i]=${array[i]#'*'}
|
||||
array[i]=${array[i]%-reveal}
|
||||
done
|
||||
|
||||
# Close every window except permanent ones
|
||||
for element in "${array[@]}"
|
||||
do
|
||||
if [[ "$element" != "tablet-toggle" ]]; then
|
||||
$EWW_PATH/close.sh "$element"
|
||||
fi
|
||||
done
|
8
config/eww/scripts/close.sh
Executable file
8
config/eww/scripts/close.sh
Executable file
|
@ -0,0 +1,8 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
WINDOW="$1"
|
||||
(
|
||||
eww update $WINDOW-visible=false
|
||||
sleep .55
|
||||
eww close $WINDOW-reveal
|
||||
) &
|
4
config/eww/scripts/exec
Executable file
4
config/eww/scripts/exec
Executable file
|
@ -0,0 +1,4 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
cd ~
|
||||
${@} 2>&1 >/dev/null &
|
31
config/eww/scripts/notif.sh
Executable file
31
config/eww/scripts/notif.sh
Executable file
|
@ -0,0 +1,31 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
state () {
|
||||
if [[ $(hyprctl layers | grep swaync-control-center) == "" ]]; then
|
||||
if [[ $(eww get notif-panel-state) == "true" ]]; then
|
||||
eww update notif-panel-state=false
|
||||
eww reload
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
icon () {
|
||||
local COUNT=$(swaync-client -c)
|
||||
|
||||
if [[ $(swaync-client -D) == "true" ]]; then
|
||||
echo " "
|
||||
elif [[ $COUNT == "0" ]]; then
|
||||
echo "$COUNT "
|
||||
else
|
||||
echo "$COUNT "
|
||||
fi
|
||||
state
|
||||
}
|
||||
|
||||
if [[ $1 == "icon" ]]; then
|
||||
while true; do
|
||||
sleep 0.2
|
||||
icon
|
||||
done
|
||||
fi
|
||||
|
10
config/eww/scripts/on-release.sh
Executable file
10
config/eww/scripts/on-release.sh
Executable file
|
@ -0,0 +1,10 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
function run() {
|
||||
echo "touch up"
|
||||
exit 0
|
||||
}
|
||||
|
||||
while IFS='$\n' read -r line; do
|
||||
[[ $(echo "$line" | grep TOUCH_UP) != "" ]] && run
|
||||
done < <(stdbuf -oL journalctl --user -feu libinput-events)
|
6
config/eww/scripts/open.sh
Executable file
6
config/eww/scripts/open.sh
Executable file
|
@ -0,0 +1,6 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
WINDOW="$1"
|
||||
|
||||
eww open $WINDOW-reveal
|
||||
eww update $WINDOW-visible=true
|
93
config/eww/scripts/volume.sh
Executable file
93
config/eww/scripts/volume.sh
Executable file
|
@ -0,0 +1,93 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
# @requires: pactl
|
||||
|
||||
#SINK=$(pactl list short sinks | sed -e 's,^\([0-9][0-9]*\)[^0-9].*,\1,' | head -n 1)
|
||||
SINK="@DEFAULT_SINK@"
|
||||
|
||||
percentage () {
|
||||
local val=$(echo $1 | tr '%' ' ' | awk '{print $1}')
|
||||
local icon1=$2
|
||||
local icon2=$3
|
||||
local icon3=$4
|
||||
local icon4=$5
|
||||
if [ "$val" -le 15 ]; then
|
||||
echo $icon1
|
||||
elif [ "$val" -le 30 ]; then
|
||||
echo $icon2
|
||||
elif [ "$val" -le 60 ]; then
|
||||
echo $icon3
|
||||
else
|
||||
echo $icon4
|
||||
fi
|
||||
}
|
||||
|
||||
is_muted () {
|
||||
pacmd list-sinks | awk '/muted/ { print $2 }'
|
||||
}
|
||||
|
||||
get_percentage () {
|
||||
local muted=$(is_muted)
|
||||
if [[ $muted == 'yes' ]]; then
|
||||
echo 0%
|
||||
else
|
||||
vol=$(pactl get-sink-volume @DEFAULT_SINK@ | grep Volume | awk '{print $5}' | tr % " ")
|
||||
echo "${vol}%"
|
||||
fi
|
||||
}
|
||||
|
||||
get_icon () {
|
||||
local vol=$(get_percentage)
|
||||
if [[ $vol == "0%" ]]; then
|
||||
echo "婢"
|
||||
else
|
||||
echo $(percentage "$vol" "" "" "墳" "")
|
||||
fi
|
||||
}
|
||||
|
||||
get_class () {
|
||||
local vol=$(get_percentage)
|
||||
if [[ $vol == "0%" ]]; then
|
||||
echo "red"
|
||||
else
|
||||
echo $(percentage "$vol" "red" "magenta" "yellow" "blue")
|
||||
fi
|
||||
}
|
||||
|
||||
get_vol () {
|
||||
#local percent=$(get_percentage)
|
||||
#echo $percent | tr -d '%'
|
||||
echo $(pactl get-sink-volume @DEFAULT_SINK@ | grep Volume | awk '{print $5}' | tr % " ")
|
||||
}
|
||||
|
||||
if [[ $1 == "icon" ]]; then
|
||||
get_icon
|
||||
fi
|
||||
|
||||
if [[ $1 == "class" ]]; then
|
||||
get_class
|
||||
fi
|
||||
|
||||
if [[ $1 == "percentage" ]]; then
|
||||
get_percentage
|
||||
fi
|
||||
|
||||
if [[ $1 == "vol" ]]; then
|
||||
get_vol
|
||||
fi
|
||||
|
||||
if [[ $1 == "muted" ]]; then
|
||||
is_muted
|
||||
fi
|
||||
|
||||
if [[ $1 == "toggle-muted" ]]; then
|
||||
pactl set-sink-mute $SINK toggle
|
||||
fi
|
||||
|
||||
if [[ $1 == "set" ]]; then
|
||||
val=$(echo $2 | tr '.' ' ' | awk '{print $1}')
|
||||
if test $val -gt 100; then
|
||||
val=100
|
||||
fi
|
||||
pactl set-sink-volume $SINK $val%
|
||||
fi
|
44
config/eww/traybuttons/traybuttons.scss
Normal file
44
config/eww/traybuttons/traybuttons.scss
Normal file
|
@ -0,0 +1,44 @@
|
|||
.osk-toggle {
|
||||
font-size: 30px;
|
||||
min-height: 26px;
|
||||
min-width: 50px;
|
||||
padding: 0px 0px 0px 5px;
|
||||
}
|
||||
|
||||
.notif-panel {
|
||||
min-width: 50px;
|
||||
min-height: 26px;
|
||||
font-size: 20px;
|
||||
padding: 2px 25px 2px 35px;
|
||||
}
|
||||
|
||||
.tablet-toggle {
|
||||
font-size: 26px;
|
||||
padding: 2px 13px 2px 16px;
|
||||
}
|
||||
|
||||
.toggle-off {
|
||||
background-color: $bg;
|
||||
transition: border-color 0.5s ease-in-out;
|
||||
color: #CBA6F7;
|
||||
border-radius: 80px;
|
||||
border: 2px solid #1b1b2b;
|
||||
}
|
||||
|
||||
.toggle-off:hover {
|
||||
background-color: rgba(127, 132, 156, 0.4);
|
||||
transition: background-color 0.5s ease-in-out;
|
||||
}
|
||||
|
||||
.toggle-on {
|
||||
background-color: $bg;
|
||||
transition: border-color 0.5s ease-in-out;
|
||||
color: #CBA6F7;
|
||||
border-radius: 80px;
|
||||
border: 2px solid $contrastbg;
|
||||
}
|
||||
|
||||
.toggle-on:hover {
|
||||
background-color: rgba(127, 132, 156, 0.4);
|
||||
transition: background-color 0.5s ease-in-out;
|
||||
}
|
86
config/eww/traybuttons/traybuttons.yuck
Normal file
86
config/eww/traybuttons/traybuttons.yuck
Normal file
|
@ -0,0 +1,86 @@
|
|||
(defvar osk-toggle-state false)
|
||||
|
||||
(defwidget osk-toggle []
|
||||
(eventbox :class {osk-toggle-state ? "toggle-on" : "toggle-off"}
|
||||
:onclick "$HYPR_PATH/osk-toggle.sh toggle &"
|
||||
(box :class "osk-toggle"
|
||||
:space-evenly true
|
||||
:spacing 6
|
||||
:orientation "h"
|
||||
(label :text " ")
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(defwindow osk-toggle
|
||||
:monitor 0
|
||||
:stacking "overlay"
|
||||
:exclusive "ignore"
|
||||
:geometry (geometry :x "10px"
|
||||
:y "9px"
|
||||
:width "0px"
|
||||
:height "0px"
|
||||
:anchor "top left"
|
||||
)
|
||||
(osk-toggle)
|
||||
)
|
||||
|
||||
|
||||
|
||||
(defvar toggle-state false)
|
||||
|
||||
(defwidget tablet-toggle []
|
||||
(eventbox :class {toggle-state ? "toggle-on" : "toggle-off"}
|
||||
:onclick {toggle-state ? "$HYPR_PATH/laptop-mode.sh &" :
|
||||
"$HYPR_PATH/tablet-mode.sh &"}
|
||||
(box :class "tablet-toggle"
|
||||
:space-evenly true
|
||||
:spacing 6
|
||||
:orientation "h"
|
||||
(label :text " ")
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(defwindow tablet-toggle
|
||||
:monitor 0
|
||||
:stacking "overlay"
|
||||
:exclusive "ignore"
|
||||
:geometry (geometry :x "72px"
|
||||
:y "9px"
|
||||
:width "0px"
|
||||
:height "0px"
|
||||
:anchor "top left"
|
||||
)
|
||||
(tablet-toggle)
|
||||
)
|
||||
|
||||
|
||||
|
||||
(defvar notif-panel-state false)
|
||||
|
||||
(defwidget notif-panel []
|
||||
(button :class {notif-panel-state ? "toggle-on" : "toggle-off"}
|
||||
:onclick {notif-panel-state ? "swaync-client -cp; eww update notif-panel-state=false" :
|
||||
"swaync-client -op; eww update notif-panel-state=true"}
|
||||
(box :class "notif-panel"
|
||||
:space-evenly true
|
||||
:spacing 6
|
||||
:orientation "h"
|
||||
(label :text " ${notif_icon} ")
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(defwindow notif-panel
|
||||
:monitor 0
|
||||
:stacking "overlay"
|
||||
:exclusive "ignore"
|
||||
:geometry (geometry :x "50px"
|
||||
:y "11px"
|
||||
:width "0px"
|
||||
:height "0px"
|
||||
:anchor "top right"
|
||||
)
|
||||
(notif-panel)
|
||||
)
|
19
config/eww/variables.yuck
Normal file
19
config/eww/variables.yuck
Normal file
|
@ -0,0 +1,19 @@
|
|||
(deflisten notif_icon "$EWW_PATH/notif.sh icon")
|
||||
|
||||
(defpoll volume_icon :interval "1s" "$EWW_PATH/volume.sh icon")
|
||||
(defpoll volume :interval "1s" "$EWW_PATH/volume.sh percentage")
|
||||
(defpoll volume_value :interval "1s" "$EWW_PATH/volume.sh vol")
|
||||
(defpoll is_muted :interval "1s" "$EWW_PATH/volume.sh muted")
|
||||
|
||||
(defpoll br_icon :interval "1s" "$EWW_PATH/brightness.sh icon")
|
||||
(defpoll br :interval "1s" "$EWW_PATH/brightness.sh br")
|
||||
|
||||
(defpoll completeday :interval "1h" "date '+%A, %d %B'")
|
||||
(defpoll lithour :interval "30m" "date +%H")
|
||||
(defpoll litmin :interval "30s" "date +%M")
|
||||
(defpoll calendar_day :interval "10h" "date '+%d'")
|
||||
(defpoll calendar_month :interval "10h" "date '+%m")
|
||||
(defpoll calendar_year :interval "10h" "date '+%Y'")
|
||||
(defpoll date :interval "30s" "date '+%d %b, %I:%M %p'")
|
||||
(defpoll shortday :interval "1h" "date '+%d %b %y'")
|
||||
(defpoll weekday :interval "24h" "date +%A")
|
2
config/hypr/hyprpaper.conf
Normal file
2
config/hypr/hyprpaper.conf
Normal file
|
@ -0,0 +1,2 @@
|
|||
preload = ~/Pictures/BG/bonzai.jpg
|
||||
wallpaper = eDP-1, ~/Pictures/BG/bonzai.jpg
|
237
config/hypr/main.conf
Normal file
237
config/hypr/main.conf
Normal file
|
@ -0,0 +1,237 @@
|
|||
# Plugins
|
||||
plugin {
|
||||
touch_gestures {
|
||||
# default sensitivity is probably too low on tablet screens,
|
||||
# I recommend turning it up to 4.0
|
||||
sensitivity = 20.0
|
||||
}
|
||||
}
|
||||
|
||||
# See https://wiki.hyprland.org/Configuring/Monitors/
|
||||
monitor=eDP-1,1920x1200@60,0x0,1
|
||||
|
||||
exec-once = $HOME/.config/lisgd/config &
|
||||
|
||||
# See https://wiki.hyprland.org/Configuring/Keywords/ for more
|
||||
|
||||
# Execute your favorite apps at launch
|
||||
exec-once = bash -c "sleep 3; XDG_DATA_DIRS=$kora nm-applet"
|
||||
exec-once = bash -c "sleep 4; blueberry-tray"
|
||||
exec-once = bash -c "sleep 5; nextcloud --background"
|
||||
exec-once = bash -c "sleep 6; tutanota-desktop -a"
|
||||
exec-once = bash -c "sleep 7; GalaxyBudsClient /StartMinimized"
|
||||
|
||||
exec-once = eww daemon
|
||||
exec-once = eww open tablet-toggle
|
||||
exec-once = eww open notif-panel
|
||||
exec-once = eww open osk-toggle
|
||||
# TODO: put this in eww configs?
|
||||
exec-once = $HYPR_PATH/osk-toggle.sh getState
|
||||
|
||||
# sometimes waybar starts after and stops me from pressing eww buttons
|
||||
exec-once = bash -c "sleep 0.5; eww reload"
|
||||
|
||||
exec-once = gnome-keyring-daemon --start --components=secrets
|
||||
exec-once = squeekboard
|
||||
|
||||
exec-once = wofi --show drun
|
||||
exec-once = hyprpaper
|
||||
|
||||
# after boot, there are 2 bars for some reason, so I kill them and rerun the command
|
||||
exec-once = bash -c "killall -r -0 waybar && killall -r waybar; XDG_DATA_DIRS=$kora waybar"
|
||||
exec-once = swaync
|
||||
|
||||
exec-once = wl-paste --watch cliphist store
|
||||
|
||||
# OSD window
|
||||
exec-once = swayosd
|
||||
|
||||
# Change HandleLidSwitch to lock in logind.conf
|
||||
exec-once = swayidle -w lock $HOME/.config/gtklock/scripts/lock.sh
|
||||
|
||||
# Some default env vars.
|
||||
env = XCURSOR_SIZE,24
|
||||
|
||||
# For all categories, see https://wiki.hyprland.org/Configuring/Variables/
|
||||
input {
|
||||
kb_layout = ca
|
||||
kb_variant = multix
|
||||
kb_model =
|
||||
kb_options =
|
||||
kb_rules =
|
||||
|
||||
follow_mouse = 1
|
||||
|
||||
touchpad {
|
||||
natural_scroll = yes
|
||||
}
|
||||
|
||||
sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
|
||||
}
|
||||
|
||||
general {
|
||||
# See https://wiki.hyprland.org/Configuring/Variables/ for more
|
||||
|
||||
gaps_in = 5
|
||||
gaps_out = 5
|
||||
border_size = 2
|
||||
col.active_border = rgb(411C6C)
|
||||
#col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg
|
||||
col.inactive_border = rgba(595959aa)
|
||||
|
||||
layout = dwindle
|
||||
}
|
||||
|
||||
misc {
|
||||
disable_hyprland_logo = true
|
||||
disable_splash_rendering = true
|
||||
vfr = true
|
||||
}
|
||||
|
||||
decoration {
|
||||
# See https://wiki.hyprland.org/Configuring/Variables/ for more
|
||||
|
||||
rounding = 20
|
||||
blur = yes
|
||||
blur_size = 3
|
||||
blur_passes = 1
|
||||
blur_new_optimizations = on
|
||||
|
||||
drop_shadow = false
|
||||
#shadow_range = 4
|
||||
#shadow_render_power = 3
|
||||
#col.shadow = rgba(1a1a1aee)
|
||||
}
|
||||
|
||||
animations {
|
||||
enabled = yes
|
||||
|
||||
# Some default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more
|
||||
|
||||
bezier = myBezier, 0.05, 0.9, 0.1, 1.05
|
||||
|
||||
animation = windows, 1, 7, myBezier
|
||||
animation = windowsOut, 1, 7, default, popin 80%
|
||||
animation = border, 1, 10, default
|
||||
animation = borderangle, 1, 8, default
|
||||
animation = fade, 1, 7, default
|
||||
animation = workspaces, 1, 6, default
|
||||
}
|
||||
|
||||
dwindle {
|
||||
# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
|
||||
pseudotile = yes # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
|
||||
preserve_split = yes # you probably want this
|
||||
}
|
||||
|
||||
master {
|
||||
# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
|
||||
new_is_master = true
|
||||
}
|
||||
|
||||
gestures {
|
||||
# See https://wiki.hyprland.org/Configuring/Variables/ for more
|
||||
workspace_swipe = yes
|
||||
workspace_swipe_fingers = 3
|
||||
workspace_swipe_cancel_ratio = 0.15
|
||||
#workspace_swipe_forever = yes
|
||||
}
|
||||
|
||||
# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
|
||||
|
||||
windowrule = noborder,^(wofi)$
|
||||
|
||||
windowrule = float,^(org.kde.polkit-kde-authentication-agent-1)$
|
||||
windowrule = size 741 288,^(org.kde.polkit-kde-authentication-agent-1)$
|
||||
windowrule = center,^(org.kde.polkit-kde-authentication-agent-1)$
|
||||
|
||||
windowrule = size 741 288,^(org.kde.ksshaskpass)$
|
||||
windowrule = move cursor -370 -144,^(org.kde.ksshaskpass)$
|
||||
|
||||
windowrule = float,^(org.gnome.Calculator)$
|
||||
windowrule = float,^(GalaxyBudsClient)$
|
||||
|
||||
windowrule = size 1231 950,title:^(Open Folder)$
|
||||
windowrule = float,title:^(Open Folder)$
|
||||
|
||||
windowrule = size 1231 950,title:^(Open File)$
|
||||
windowrule = float,title:^(Open File)$
|
||||
|
||||
windowrule = float,^(com.nextcloud.desktopclient.nextcloud)$
|
||||
windowrule = move cursor 0 25,^(com.nextcloud.desktopclient.nextcloud)$
|
||||
windowrule = size 400 581,^(com.nextcloud.desktopclient.nextcloud)$
|
||||
|
||||
windowrule = tile,^(photoshop.exe)$
|
||||
|
||||
# See https://wiki.hyprland.org/Configuring/Keywords/ for more
|
||||
$mainMod = SUPER
|
||||
|
||||
bind = SUPER, F, fullscreen
|
||||
|
||||
bind = $mainMod, V, exec, cliphist list | wofi --dmenu | cliphist decode | wl-copy
|
||||
|
||||
# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
|
||||
bind = $mainMod, Q, exec, alacritty
|
||||
bind = $mainMod, C, killactive,
|
||||
|
||||
bind = $mainMod, L, exec, $HOME/.config/gtklock/scripts/lock.sh
|
||||
bind = $mainMod SHIFT, E, exec, eww open closer && $EWW_PATH/open.sh powermenu
|
||||
bindn =, Escape, exec, $EWW_PATH/close-opened.sh
|
||||
bind = $mainMod SHIFT, SPACE, togglefloating,
|
||||
bind = $mainMod, D, exec, wofi --show drun
|
||||
bind = $mainMod, P, pseudo, # dwindle
|
||||
bind = $mainMod, J, togglesplit, # dwindle
|
||||
|
||||
# Move focus with mainMod + arrow keys
|
||||
bind = $mainMod, left, movefocus, l
|
||||
bind = $mainMod, right, movefocus, r
|
||||
bind = $mainMod, up, movefocus, u
|
||||
bind = $mainMod, down, movefocus, d
|
||||
|
||||
# Switch workspaces with mainMod + [0-9]
|
||||
bind = $mainMod, 1, workspace, 1
|
||||
bind = $mainMod, 2, workspace, 2
|
||||
bind = $mainMod, 3, workspace, 3
|
||||
bind = $mainMod, 4, workspace, 4
|
||||
bind = $mainMod, 5, workspace, 5
|
||||
bind = $mainMod, 6, workspace, 6
|
||||
bind = $mainMod, 7, workspace, 7
|
||||
bind = $mainMod, 8, workspace, 8
|
||||
bind = $mainMod, 9, workspace, 9
|
||||
bind = $mainMod, 0, workspace, 10
|
||||
|
||||
# Move active window to a workspace with mainMod + SHIFT + [0-9]
|
||||
bind = $mainMod SHIFT, 1, movetoworkspace, 1
|
||||
bind = $mainMod SHIFT, 2, movetoworkspace, 2
|
||||
bind = $mainMod SHIFT, 3, movetoworkspace, 3
|
||||
bind = $mainMod SHIFT, 4, movetoworkspace, 4
|
||||
bind = $mainMod SHIFT, 5, movetoworkspace, 5
|
||||
bind = $mainMod SHIFT, 6, movetoworkspace, 6
|
||||
bind = $mainMod SHIFT, 7, movetoworkspace, 7
|
||||
bind = $mainMod SHIFT, 8, movetoworkspace, 8
|
||||
bind = $mainMod SHIFT, 9, movetoworkspace, 9
|
||||
bind = $mainMod SHIFT, 0, movetoworkspace, 10
|
||||
|
||||
# Scroll through existing workspaces with mainMod + scroll
|
||||
bind = $mainMod, mouse_down, workspace, e+1
|
||||
bind = $mainMod, mouse_up, workspace, e-1
|
||||
|
||||
# Move/resize windows with mainMod + LMB/RMB and dragging
|
||||
bindm = $mainMod, mouse:272, movewindow
|
||||
bindm = $mainMod, mouse:273, resizewindow
|
||||
|
||||
# Take a screenshot
|
||||
bind =, Print, exec, bash -c 'grim -g "$(slurp)" - | swappy -f -'
|
||||
bind = $mainMod SHIFT, C, exec, wl-color-picker
|
||||
|
||||
# Volume control
|
||||
binde =, XF86AudioRaiseVolume, exec, swayosd --output-volume raise
|
||||
binde =, XF86AudioLowerVolume, exec, swayosd --output-volume lower
|
||||
bind =, XF86AudioMute, exec, swayosd --output-volume mute-toggle
|
||||
bind =, XF86AudioMicMute, exec, swayosd --input-volume mute-toggle
|
||||
|
||||
bindr = CAPS, Caps_Lock, exec, swayosd --caps-lock
|
||||
|
||||
# Brightness control
|
||||
binde =, XF86MonBrightnessUp, exec, swayosd --brightness raise
|
||||
binde =, XF86MonBrightnessDown, exec, swayosd --brightness lower
|
51
config/hypr/scripts/autorotate.sh
Executable file
51
config/hypr/scripts/autorotate.sh
Executable file
|
@ -0,0 +1,51 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
# This script was forked from https://gitlab.com/snippets/1793649 by Fishonadish
|
||||
|
||||
|
||||
SCREEN="eDP-1"
|
||||
WAYLANDINPUT=("wacom-hid-52eb-finger"
|
||||
"wacom-hid-52eb-pen")
|
||||
|
||||
|
||||
|
||||
function rotate_ms {
|
||||
if [[ $(hyprctl activewindow | grep Waydroid) == "" ]]; then
|
||||
case $1 in
|
||||
"normal")
|
||||
rotate 0
|
||||
;;
|
||||
"right-up")
|
||||
rotate 3
|
||||
;;
|
||||
"bottom-up")
|
||||
rotate 2
|
||||
;;
|
||||
"left-up")
|
||||
rotate 1
|
||||
;;
|
||||
esac
|
||||
elif [[ $(hyprctl monitors | grep "transform: 0") == "" ]]; then
|
||||
rotate 0
|
||||
fi
|
||||
}
|
||||
|
||||
function rotate {
|
||||
TARGET_ORIENTATION=$1
|
||||
|
||||
echo "Rotating to" $TARGET_ORIENTATION
|
||||
|
||||
hyprctl keyword monitor $SCREEN,transform,$TARGET_ORIENTATION
|
||||
|
||||
for i in "${WAYLANDINPUT[@]}"
|
||||
do
|
||||
hyprctl keyword device:"$i":transform $TARGET_ORIENTATION
|
||||
done
|
||||
|
||||
/home/matt/.config/lisgd/config &
|
||||
}
|
||||
|
||||
while IFS='$\n' read -r line; do
|
||||
rotation="$(echo $line | sed -En "s/^.*orientation changed: (.*)/\1/p")"
|
||||
[[ ! -z $rotation ]] && rotate_ms $rotation
|
||||
done < <(stdbuf -oL monitor-sensor)
|
10
config/hypr/scripts/laptop-mode.sh
Executable file
10
config/hypr/scripts/laptop-mode.sh
Executable file
|
@ -0,0 +1,10 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
gsettings set org.gnome.desktop.a11y.applications screen-keyboard-enabled false
|
||||
|
||||
brightnessctl -d tpacpi::kbd_backlight s 2
|
||||
|
||||
killall -r autorotate.sh
|
||||
killall -r evtest
|
||||
|
||||
eww update toggle-state=false
|
16
config/hypr/scripts/lose-focus.sh
Executable file
16
config/hypr/scripts/lose-focus.sh
Executable file
|
@ -0,0 +1,16 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
while true
|
||||
do
|
||||
while killall -0 .blueman-manage > /dev/null 2>&1
|
||||
do
|
||||
if [[ $(bluetoothctl show | grep Powered | grep yes) ]]; then
|
||||
if [[ $(hyprctl activewindow | grep blueman-manager) == "" && $(hyprctl clients | grep blueman-manager) != "" ]]; then
|
||||
killall .blueman-manage
|
||||
break
|
||||
fi
|
||||
sleep 0.1
|
||||
fi
|
||||
done
|
||||
sleep 0.1
|
||||
done
|
35
config/hypr/scripts/osk-toggle.sh
Executable file
35
config/hypr/scripts/osk-toggle.sh
Executable file
|
@ -0,0 +1,35 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
state () {
|
||||
if [[ $(busctl get-property --user sm.puri.OSK0 /sm/puri/OSK0 sm.puri.OSK0 Visible) == "b true" ]]; then
|
||||
echo "Running"
|
||||
eww update osk-toggle-state=true
|
||||
else
|
||||
echo "Stopped"
|
||||
eww update osk-toggle-state=false
|
||||
fi
|
||||
}
|
||||
|
||||
toggle () {
|
||||
if [[ $(busctl get-property --user sm.puri.OSK0 /sm/puri/OSK0 sm.puri.OSK0 Visible) == "b true" ]]; then
|
||||
echo "Running"
|
||||
busctl call --user sm.puri.OSK0 /sm/puri/OSK0 sm.puri.OSK0 SetVisible b false
|
||||
eww update osk-toggle-state=false
|
||||
else
|
||||
echo "Stopped"
|
||||
busctl call --user sm.puri.OSK0 /sm/puri/OSK0 sm.puri.OSK0 SetVisible b true
|
||||
eww update osk-toggle-state=true
|
||||
fi
|
||||
}
|
||||
|
||||
if [[ $1 == "getState" ]]; then
|
||||
while true; do
|
||||
sleep 0.2
|
||||
state
|
||||
done
|
||||
fi
|
||||
|
||||
if [[ $1 == "toggle" ]];then
|
||||
toggle
|
||||
fi
|
||||
|
16
config/hypr/scripts/tablet-mode.sh
Executable file
16
config/hypr/scripts/tablet-mode.sh
Executable file
|
@ -0,0 +1,16 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
echo $XDG_DATA_DIRS >> ~/log.log
|
||||
gsettings set org.gnome.desktop.a11y.applications screen-keyboard-enabled true
|
||||
|
||||
brightnessctl -d tpacpi::kbd_backlight s 0
|
||||
|
||||
$HYPR_PATH/autorotate.sh &
|
||||
|
||||
evtest --grab "/dev/input/by-path/platform-i8042-serio-0-event-kbd" &
|
||||
evtest --grab "/dev/input/by-path/platform-i8042-serio-1-event-mouse" &
|
||||
evtest --grab "/dev/input/by-path/platform-AMDI0010:02-event-mouse" &
|
||||
evtest --grab "/dev/input/by-path/platform-thinkpad_acpi-event" &
|
||||
evtest --grab "/dev/video-bus" &
|
||||
|
||||
eww update toggle-state=true
|
104
config/swaync/config.json
Normal file
104
config/swaync/config.json
Normal file
|
@ -0,0 +1,104 @@
|
|||
{
|
||||
"$schema": "/etc/xdg/swaync/configSchema.json",
|
||||
|
||||
"positionX": "right",
|
||||
"positionY": "top",
|
||||
"control-center-positionX": "none",
|
||||
"control-center-positionY": "none",
|
||||
"control-center-margin-top": 8,
|
||||
"control-center-margin-bottom": 8,
|
||||
"control-center-margin-right": 8,
|
||||
"control-center-margin-left": 8,
|
||||
"control-center-width": 500,
|
||||
"control-center-height": 1000,
|
||||
"fit-to-screen": false,
|
||||
|
||||
"layer": "top",
|
||||
"control-center-layer": "top",
|
||||
"cssPriority": "user",
|
||||
"notification-icon-size": 64,
|
||||
"notification-body-image-height": 300,
|
||||
"notification-body-image-width": 200,
|
||||
"notification-inline-replies": true,
|
||||
"timeout": 10,
|
||||
"timeout-low": 5,
|
||||
"timeout-critical": 0,
|
||||
"notification-window-width": 500,
|
||||
"keyboard-shortcuts": true,
|
||||
"image-visibility": "when-available",
|
||||
"transition-time": 200,
|
||||
"hide-on-clear": true,
|
||||
"hide-on-action": true,
|
||||
"script-fail-notify": true,
|
||||
|
||||
"widgets": [
|
||||
"label",
|
||||
"buttons-grid",
|
||||
"backlight",
|
||||
"volume",
|
||||
"mpris",
|
||||
"title",
|
||||
"inhibitors",
|
||||
"dnd",
|
||||
"notifications"
|
||||
],
|
||||
"widget-config": {
|
||||
"backlight": {
|
||||
"label": " ",
|
||||
"device": "amdgpu_bl0",
|
||||
"min": 10
|
||||
},
|
||||
"volume": {
|
||||
"label": " "
|
||||
},
|
||||
"inhibitors": {
|
||||
"text": "Inhibitors",
|
||||
"button-text": "Clear All",
|
||||
"clear-all-button": true
|
||||
},
|
||||
"title": {
|
||||
"text": "Notifications",
|
||||
"clear-all-button": true,
|
||||
"button-text": "Clear All"
|
||||
},
|
||||
"dnd": {
|
||||
"text": "Do Not Disturb"
|
||||
},
|
||||
"label": {
|
||||
"max-lines": 5,
|
||||
"text": "Control Center"
|
||||
},
|
||||
"mpris": {
|
||||
"image-size": 96,
|
||||
"image-radius": 12
|
||||
},
|
||||
"buttons-grid": {
|
||||
"actions": [
|
||||
{
|
||||
"label": " ",
|
||||
"command": "nm-connection-editor &"
|
||||
},
|
||||
{
|
||||
"label": "",
|
||||
"command": "blueberry &"
|
||||
},
|
||||
{
|
||||
"label": "",
|
||||
"command": "$HOME/.config/gtklock/scripts/lock.sh"
|
||||
},
|
||||
{
|
||||
"label": "",
|
||||
"command": "pavucontrol"
|
||||
},
|
||||
{
|
||||
"label": "",
|
||||
"command": "swayosd --input-volume mute-toggle"
|
||||
},
|
||||
{
|
||||
"label": "",
|
||||
"command": "swaync-client -cp; sleep 0.9; eww open closer; $EWW_PATH/open.sh powermenu"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
347
config/swaync/style.css
Normal file
347
config/swaync/style.css
Normal file
|
@ -0,0 +1,347 @@
|
|||
/* Dracula Theme */
|
||||
/* https://gist.github.com/MrRoy/3a4a0b1462921e78bf667e1b36697268 */
|
||||
@define-color foreground rgb(248, 248, 242);
|
||||
@define-color background rgb(40, 42, 54);
|
||||
@define-color background-alpha rgba(40, 42, 54, 0.8);
|
||||
@define-color accent rgba(189, 147, 249, 0.8);
|
||||
@define-color current-line rgb(68, 71, 90);
|
||||
@define-color comment rgb(98, 114, 164);
|
||||
|
||||
.notification-row {
|
||||
transition: all 200ms ease;
|
||||
outline: none;
|
||||
margin-bottom: 4px;
|
||||
border-radius: 30px;
|
||||
}
|
||||
|
||||
.control-center .notification-row:focus,
|
||||
.control-center .notification-row:hover {
|
||||
opacity: 1;
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
.notification-row:focus .notification,
|
||||
.notification-row:hover .notification {
|
||||
box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.5);
|
||||
border: 0px solid @accent;
|
||||
background: @current-line;
|
||||
}
|
||||
|
||||
.control-center .notification {
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
.control-center .notification-row {
|
||||
opacity: 0.5;
|
||||
margin: -5px;
|
||||
}
|
||||
|
||||
.notification {
|
||||
transition: all 200ms ease;
|
||||
border-radius: 8px;
|
||||
margin: 12px 7px 0px 7px;
|
||||
box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.5);
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
/* Uncomment to enable specific urgency colors
|
||||
.low {
|
||||
background: yellow;
|
||||
padding: 6px;
|
||||
border-radius: 12px;
|
||||
}
|
||||
.normal {
|
||||
background: green;
|
||||
padding: 6px;
|
||||
border-radius: 12px;
|
||||
}
|
||||
.critical {
|
||||
background: red;
|
||||
padding: 6px;
|
||||
border-radius: 12px;
|
||||
}
|
||||
*/
|
||||
|
||||
.notification-content {
|
||||
background: transparent;
|
||||
padding: 6px;
|
||||
border-radius: 30px;
|
||||
}
|
||||
|
||||
.close-button {
|
||||
background: @current-line;
|
||||
color: @foreground;
|
||||
text-shadow: none;
|
||||
padding: 0;
|
||||
border-radius: 100%;
|
||||
margin-top: 17px;
|
||||
margin-right: 10px;
|
||||
box-shadow: none;
|
||||
border: none;
|
||||
min-width: 24px;
|
||||
min-height: 24px;
|
||||
}
|
||||
|
||||
.close-button:hover {
|
||||
box-shadow: none;
|
||||
background: @comment;
|
||||
transition: all 0.15s ease-in-out;
|
||||
border: none;
|
||||
}
|
||||
|
||||
.notification-default-action,
|
||||
.notification-action {
|
||||
padding: 4px;
|
||||
margin: 0px;
|
||||
box-shadow: none;
|
||||
background: @current-line;
|
||||
border: 2px solid @accent;
|
||||
color: @foreground;
|
||||
min-height: 40px;
|
||||
}
|
||||
|
||||
.notification-default-action:hover,
|
||||
.notification-action:hover {
|
||||
-gtk-icon-effect: none;
|
||||
background: @current-line;
|
||||
}
|
||||
|
||||
.notification-default-action {
|
||||
border-radius: 8px;
|
||||
}
|
||||
|
||||
/* When alternative actions are visible */
|
||||
.notification-default-action:not(:only-child) {
|
||||
border-bottom-left-radius: 0px;
|
||||
border-bottom-right-radius: 0px;
|
||||
}
|
||||
|
||||
.notification-action {
|
||||
border-radius: 0px;
|
||||
border-top: none;
|
||||
border-right: none;
|
||||
}
|
||||
|
||||
/* add bottom border radius to eliminate clipping */
|
||||
.notification-action:first-child {
|
||||
border-bottom-left-radius: 8px;
|
||||
}
|
||||
|
||||
.notification-action:last-child {
|
||||
border-bottom-right-radius: 8px;
|
||||
border-right: 1px solid @accent;
|
||||
}
|
||||
|
||||
.image {
|
||||
}
|
||||
|
||||
.body-image {
|
||||
margin-top: 6px;
|
||||
background-color: @foreground;
|
||||
border-radius: 30px;
|
||||
}
|
||||
|
||||
.summary {
|
||||
font-size: 16px;
|
||||
font-weight: bold;
|
||||
background: transparent;
|
||||
color: @foreground;
|
||||
text-shadow: none;
|
||||
}
|
||||
|
||||
.time {
|
||||
font-size: 16px;
|
||||
font-weight: bold;
|
||||
background: transparent;
|
||||
color: @foreground;
|
||||
text-shadow: none;
|
||||
margin-right: 18px;
|
||||
}
|
||||
|
||||
.body {
|
||||
font-size: 15px;
|
||||
font-weight: normal;
|
||||
background: transparent;
|
||||
color: @foreground;
|
||||
text-shadow: none;
|
||||
}
|
||||
|
||||
/* The "Notifications" and "Do Not Disturb" text widget */
|
||||
.top-action-title {
|
||||
color: @foreground;
|
||||
text-shadow: none;
|
||||
}
|
||||
|
||||
.control-center-clear-all {
|
||||
color: @foreground;
|
||||
text-shadow: none;
|
||||
background: @background;
|
||||
border: 2px solid @accent;
|
||||
box-shadow: none;
|
||||
border-radius: 30px;
|
||||
}
|
||||
|
||||
.control-center-clear-all:hover {
|
||||
background: @background;
|
||||
}
|
||||
|
||||
.control-center-dnd {
|
||||
border-radius: 30px;
|
||||
background: @background;
|
||||
border: 1px solid @accent;
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
.control-center-dnd:checked {
|
||||
background: @accent;
|
||||
}
|
||||
|
||||
.control-center-dnd slider {
|
||||
background: @background;
|
||||
border-radius: 30px;
|
||||
}
|
||||
|
||||
.control-center {
|
||||
background: @background-alpha;
|
||||
border-radius: 35px;
|
||||
background-clip: border-box;
|
||||
padding: 4px;
|
||||
box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.3), 0 1px 3px 1px rgba(0, 0, 0, 0.7),
|
||||
0 2px 6px 2px rgba(0, 0, 0, 0.3);
|
||||
color: @foreground;
|
||||
border: 2px solid @accent;
|
||||
}
|
||||
|
||||
.control-center-list {
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
.floating-notifications {
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
/* Window behind control center and on all other monitors */
|
||||
.blank-window {
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
/*** Widgets ***/
|
||||
|
||||
/* Title widget */
|
||||
.widget-title {
|
||||
margin: 8px;
|
||||
font-size: 1.5rem;
|
||||
padding: 16px 0px 0px 0px;
|
||||
}
|
||||
.widget-title > button {
|
||||
font-size: initial;
|
||||
color: @foreground;
|
||||
text-shadow: none;
|
||||
background: @background;
|
||||
border: 2px solid @accent;
|
||||
box-shadow: none;
|
||||
border-radius: 30px;
|
||||
}
|
||||
.widget-title > button:hover {
|
||||
background: @current-line;
|
||||
}
|
||||
|
||||
/* DND widget */
|
||||
.widget-dnd {
|
||||
margin: 8px;
|
||||
font-size: 1.1rem;
|
||||
}
|
||||
.widget-dnd > switch {
|
||||
font-size: initial;
|
||||
border-radius: 30px;
|
||||
background: @background;
|
||||
border: 1px solid @accent;
|
||||
box-shadow: none;
|
||||
}
|
||||
.widget-dnd > switch:checked {
|
||||
background: @accent;
|
||||
}
|
||||
.widget-dnd > switch slider {
|
||||
background: @background;
|
||||
border-radius: 30px;
|
||||
border: 1px solid @foreground;
|
||||
}
|
||||
|
||||
/* Label widget */
|
||||
.widget-label {
|
||||
margin: 8px;
|
||||
padding: 16px 0px 0px 0px;
|
||||
}
|
||||
.widget-label > label {
|
||||
font-size: 1.5rem;
|
||||
}
|
||||
|
||||
/* Mpris widget */
|
||||
.widget-mpris {
|
||||
/* The parent to all players */
|
||||
}
|
||||
.widget-mpris-player {
|
||||
padding: 8px;
|
||||
margin: 8px;
|
||||
background-color: @background;
|
||||
border-radius: 30px;
|
||||
border-top: 2px solid @accent;
|
||||
border-bottom: 2px solid @accent;
|
||||
color: @foreground;
|
||||
}
|
||||
.widget-mpris-title {
|
||||
font-weight: bold;
|
||||
font-size: 1.25rem;
|
||||
}
|
||||
.widget-mpris-subtitle {
|
||||
font-size: 1.1rem;
|
||||
}
|
||||
|
||||
/* Buttons widget */
|
||||
.widget-buttons-grid {
|
||||
font-size: 30px;
|
||||
padding: 8px;
|
||||
margin: 20px 10px 10px 10px;
|
||||
border-radius: 12px;
|
||||
border-bottom: 2px solid @accent;
|
||||
border-top: 2px solid @accent;
|
||||
background-color: @background;
|
||||
}
|
||||
|
||||
.widget-buttons-grid>flowbox>flowboxchild>button {
|
||||
margin: 10px;
|
||||
min-width: 80px;
|
||||
background: #1b1b2b;
|
||||
border-radius: 12px;
|
||||
color: @foreground;
|
||||
border: 2px solid @accent;
|
||||
}
|
||||
|
||||
.widget-buttons-grid>flowbox>flowboxchild>button:hover {
|
||||
background: @current-line;
|
||||
color: @accent;
|
||||
}
|
||||
|
||||
.widget-volume {
|
||||
background-color: @background;
|
||||
padding: 4px 16px 8px 8px;
|
||||
margin: 0px 8px 8px 8px;
|
||||
font-size: x-large;
|
||||
border-bottom: 2px solid @accent;
|
||||
border-bottom-left-radius: 12px;
|
||||
border-bottom-right-radius: 12px;
|
||||
border-top-left-radius: 0px;
|
||||
border-top-right-radius: 0px;
|
||||
}
|
||||
|
||||
.widget-backlight {
|
||||
background-color: @background;
|
||||
padding: 8px 16px 4px 8px;
|
||||
margin: 8px 8px 0px 8px;
|
||||
font-size: x-large;
|
||||
border-top: 2px solid @accent;
|
||||
border-bottom-left-radius: 0px;
|
||||
border-bottom-right-radius: 0px;
|
||||
border-top-left-radius: 12px;
|
||||
border-top-right-radius: 12px;
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue