added base yasb and glazeWM configs
This commit is contained in:
@@ -0,0 +1,413 @@
|
||||
# This is default and very simple configuration file for Yasb.
|
||||
# For more information about configuration options, please visit the Wiki https://github.com/amnweb/yasb/wiki
|
||||
watch_stylesheet: true
|
||||
watch_config: true
|
||||
debug: false
|
||||
update_check: true # Enable automatic update check.
|
||||
komorebi:
|
||||
start_command: "komorebic start --whkd"
|
||||
stop_command: "komorebic stop --whkd"
|
||||
reload_command: "komorebic stop --whkd && komorebic start --whkd"
|
||||
bars:
|
||||
primary-bar:
|
||||
enabled: true
|
||||
screens: ["primary"]
|
||||
class_name: "yasb-bar"
|
||||
alignment:
|
||||
position: "top"
|
||||
center: false
|
||||
animation:
|
||||
enabled: true
|
||||
duration: 1000
|
||||
blur_effect:
|
||||
enabled: true
|
||||
acrylic: false
|
||||
dark_mode: true
|
||||
round_corners: true
|
||||
round_corners_type: "normal"
|
||||
border_color: "System"
|
||||
window_flags:
|
||||
always_on_top: false
|
||||
windows_app_bar: true
|
||||
dimensions:
|
||||
width: "100%"
|
||||
height: 32
|
||||
padding:
|
||||
top: 6
|
||||
left: 6
|
||||
bottom: 0
|
||||
right: 6
|
||||
widgets:
|
||||
left: [
|
||||
"glazewm_tiling_direction",
|
||||
"glazewm_workspaces",
|
||||
"pomodoro",
|
||||
"active_window"
|
||||
]
|
||||
center: [
|
||||
"clock"
|
||||
]
|
||||
right: [
|
||||
"cava",
|
||||
"media",
|
||||
"weather",
|
||||
"microphone",
|
||||
"volume",
|
||||
"cpu",
|
||||
"memory",
|
||||
"notifications",
|
||||
"wallpapers",
|
||||
"power_menu"
|
||||
]
|
||||
widgets:
|
||||
home:
|
||||
type: "yasb.home.HomeWidget"
|
||||
options:
|
||||
label: "<span>\udb81\udf17</span>"
|
||||
menu_list:
|
||||
- { title: "My Crib", path: "~" }
|
||||
- { title: "Loot Bag", path: "~\\Downloads" }
|
||||
- { title: "Boring Stuff", path: "~\\Documents" }
|
||||
- { title: "Cursed Memories", path: "~\\Pictures" }
|
||||
system_menu: true
|
||||
power_menu: true
|
||||
blur: false
|
||||
media:
|
||||
type: "yasb.media.MediaWidget"
|
||||
options:
|
||||
label: "<span>\uf001</span> {title}"
|
||||
label_alt: "<span>\uf001</span> {artist}"
|
||||
callbacks:
|
||||
on_left: "toggle_media_menu"
|
||||
on_middle: "do_nothing"
|
||||
on_right: "do_nothing"
|
||||
max_field_size:
|
||||
label: 50
|
||||
label_alt: 24
|
||||
show_thumbnail: false
|
||||
controls_only: false
|
||||
controls_left: true
|
||||
hide_empty: true
|
||||
thumbnail_alpha: 250
|
||||
thumbnail_padding: 8
|
||||
thumbnail_corner_radius: 0
|
||||
icons:
|
||||
prev_track: ""
|
||||
next_track: ""
|
||||
play: ""
|
||||
pause: ""
|
||||
active_window:
|
||||
type: "yasb.active_window.ActiveWindowWidget"
|
||||
options:
|
||||
label: "{win[title]}"
|
||||
label_alt: "[class_name='{win[class_name]}' exe='{win[process][name]}' hwnd={win[hwnd]}]"
|
||||
label_no_window: ""
|
||||
label_icon: true
|
||||
label_icon_size: 14
|
||||
max_length: 46
|
||||
max_length_ellipsis: "..."
|
||||
monitor_exclusive: true
|
||||
clock:
|
||||
type: "yasb.clock.ClockWidget"
|
||||
options:
|
||||
label: "{%I:%M:%S}"
|
||||
label_alt: "{%I:%M:%S}"
|
||||
timezones: []
|
||||
callbacks:
|
||||
on_left: "toggle_calendar"
|
||||
weather:
|
||||
type: "yasb.weather.WeatherWidget"
|
||||
options:
|
||||
label: "<span>{icon}</span> {temp}"
|
||||
label_alt: "{location}: Min {min_temp}, Max {max_temp}, Humidity {humidity}"
|
||||
api_key: # Get your free API key from https://www.weatherapi.com/
|
||||
update_interval: 600
|
||||
hide_decimal: true
|
||||
location: # You can use "USA Los Angeles 90006" {COUNTRY CITY ZIP_CODE}, or just city.
|
||||
callbacks:
|
||||
on_left: "toggle_card"
|
||||
icons:
|
||||
sunnyDay: "\ue30d"
|
||||
clearNight: "\ue32b"
|
||||
cloudyDay: "\ue312"
|
||||
cloudyNight: "\ue311"
|
||||
rainyDay: "\ue308"
|
||||
rainyNight: "\ue333"
|
||||
snowyIcyDay: "\ue30a"
|
||||
snowyIcyNight: "\ue335"
|
||||
blizzardDay: "\udb83\udf36"
|
||||
blizzardNight: "\udb83\udf36"
|
||||
foggyDay: "\ue303"
|
||||
foggyNight: "\ue346"
|
||||
thunderstormDay: "\ue30f"
|
||||
thunderstormNight: "\ue338"
|
||||
default: "\uebaa"
|
||||
weather_card:
|
||||
blur: True
|
||||
round_corners: True
|
||||
round_corners_type: "normal"
|
||||
border_color: "System"
|
||||
alignment: "right"
|
||||
direction: "down"
|
||||
icon_size: 64
|
||||
show_hourly_forecast: True # Set to False to disable hourly forecast
|
||||
time_format: "12h" # can be 12h or 24h
|
||||
hourly_point_spacing: 76
|
||||
hourly_icon_size: 32 # better to set 16, 32 or 64 for better quality
|
||||
icon_smoothing: true # should be true for smoother icon or false for sharper icon if using 16, 32 or 64 for hourly_icon_size
|
||||
temp_line_width: 2 # can be 0 to hide the temperature line
|
||||
current_line_color: "#8EAEE8"
|
||||
current_line_width: 1 # can be 0 to hide the current hour line
|
||||
current_line_style: "dot"
|
||||
label_shadow:
|
||||
enabled: true
|
||||
color: "black"
|
||||
radius: 3
|
||||
offset: [ 1, 1 ]
|
||||
volume:
|
||||
type: "yasb.volume.VolumeWidget"
|
||||
options:
|
||||
label: "<span>{icon}</span> {level}"
|
||||
label_alt: "{volume}"
|
||||
tooltip: false
|
||||
volume_icons:
|
||||
- "\ueee8"
|
||||
- "\uf026"
|
||||
- "\uf027"
|
||||
- "\uf027"
|
||||
- "\uf028"
|
||||
callbacks:
|
||||
on_left: "toggle_mute"
|
||||
on_right: "exec cmd.exe /c start ms-settings:sound"
|
||||
microphone:
|
||||
type: "yasb.microphone.MicrophoneWidget"
|
||||
options:
|
||||
label: "<span>{icon}</span> {level}"
|
||||
label_alt: "<span>{icon}</span> {level}%"
|
||||
icons:
|
||||
normal: "\udb80\udf6c"
|
||||
muted: "\udb80\udf6d"
|
||||
callbacks:
|
||||
on_left: "toggle_mute"
|
||||
on_middle: "toggle_label"
|
||||
on_right: "exec cmd.exe /c start ms-settings:sound"
|
||||
power_menu:
|
||||
type: "yasb.power_menu.PowerMenuWidget"
|
||||
options:
|
||||
label: "\uf011"
|
||||
uptime: True
|
||||
blur: False
|
||||
blur_background: True
|
||||
animation_duration: 200
|
||||
button_row: 5
|
||||
buttons:
|
||||
shutdown: ["\uf011", "Rage Quit"]
|
||||
restart: ["\uead2", "Oops, Reboot"]
|
||||
signout: ["\udb80\udf43", "Dip Out"]
|
||||
hibernate: ["\uf28e", "Bear Mode"]
|
||||
sleep: ["\u23fe", "Nap Time"]
|
||||
cancel: ["", "Nah, Im Good "]
|
||||
apps:
|
||||
type: "yasb.applications.ApplicationsWidget"
|
||||
options:
|
||||
container_padding:
|
||||
top: 0
|
||||
left: 8
|
||||
bottom: 0
|
||||
right: 8
|
||||
label: "{data}"
|
||||
app_list:
|
||||
- { icon: "\ueb03", launch: "cmd /c Taskmgr" }
|
||||
- { icon: "\uf489", launch: "wt"}
|
||||
notifications:
|
||||
type: "yasb.notifications.NotificationsWidget"
|
||||
options:
|
||||
label: "<span>\uf476</span> {count}"
|
||||
label_alt: "{count} notifications"
|
||||
hide_empty: true
|
||||
tooltip: false
|
||||
callbacks:
|
||||
on_left: "toggle_notification"
|
||||
on_right: "do_nothing"
|
||||
on_middle: "toggle_label"
|
||||
wallpapers:
|
||||
type: "yasb.wallpapers.WallpapersWidget"
|
||||
options:
|
||||
label: "<span>\udb83\ude09</span>"
|
||||
image_path: # Example path to folder with images
|
||||
change_automatically: false # Automatically change wallpaper
|
||||
update_interval: 60 # If change_automatically is true, update interval in seconds
|
||||
gallery:
|
||||
enabled: true
|
||||
blur: true
|
||||
image_width: 220
|
||||
image_per_page: 8
|
||||
show_buttons: true
|
||||
orientation: "portrait"
|
||||
image_spacing: 8
|
||||
lazy_load: true
|
||||
lazy_load_delay: 80
|
||||
lazy_load_fadein: 400
|
||||
image_corner_radius: 20
|
||||
enable_cache: true
|
||||
cava:
|
||||
type: "yasb.cava.CavaWidget"
|
||||
options:
|
||||
bar_height: 12
|
||||
min_bar_height: 0
|
||||
gradient: 1
|
||||
reverse: 0
|
||||
foreground: "#89b4fa"
|
||||
gradient_color_1: '#74c7ec'
|
||||
gradient_color_2: '#89b4fa'
|
||||
gradient_color_3: '#cba6f7'
|
||||
bars_number: 8
|
||||
bar_spacing: 2
|
||||
bar_width: 4
|
||||
hide_empty: true
|
||||
container_padding:
|
||||
top: 0
|
||||
left: 8
|
||||
bottom: 0
|
||||
right: 8
|
||||
cpu:
|
||||
type: "yasb.cpu.CpuWidget"
|
||||
options:
|
||||
label: "<span>\uf4bc</span> {info[percent][total]}"
|
||||
label_alt: "<span>\uf437</span> {info[histograms][cpu_percent]}"
|
||||
update_interval: 2000
|
||||
cpu_thresholds:
|
||||
low: 25
|
||||
medium: 50
|
||||
high: 90
|
||||
histogram_icons:
|
||||
- "\u2581" # 0%
|
||||
- "\u2581" # 10%
|
||||
- "\u2582" # 20%
|
||||
- "\u2583" # 30%
|
||||
- "\u2584" # 40%
|
||||
- "\u2585" # 50%
|
||||
- "\u2586" # 60%
|
||||
- "\u2587" # 70%
|
||||
- "\u2588" # 80%+
|
||||
histogram_num_columns: 8
|
||||
callbacks:
|
||||
on_right: "exec cmd /c Taskmgr"
|
||||
label_shadow:
|
||||
enabled: true
|
||||
color: "black"
|
||||
radius: 3
|
||||
offset: [ 1, 1 ]
|
||||
glazewm_workspaces:
|
||||
type: "glazewm.workspaces.GlazewmWorkspacesWidget"
|
||||
options:
|
||||
# Offline behavior (matching komorebi's label_offline and hide_if_offline)
|
||||
offline_label: "GlazeWM Offline"
|
||||
hide_if_offline: true
|
||||
|
||||
# Workspace display labels (matching komorebi's label_workspace_btn and label_workspace_active_btn)
|
||||
populated_label: "\udb85\udcfc"
|
||||
empty_label: "\udb85\udcfc"
|
||||
active_populated_label: "\udb85\udcfb"
|
||||
active_empty_label: "\udb85\udcfb"
|
||||
|
||||
# Workspace management (matching komorebi's hide_empty_workspaces)
|
||||
hide_empty_workspaces: false
|
||||
|
||||
# Server connection
|
||||
glazewm_server_uri: "ws://localhost:6123"
|
||||
|
||||
# Additional GlazeWM-specific options (keeping defaults)
|
||||
enable_scroll_switching: true
|
||||
reverse_scroll_direction: true
|
||||
container_padding:
|
||||
top: 0
|
||||
left: 0
|
||||
bottom: 0
|
||||
right: 0
|
||||
glazewm_tiling_direction:
|
||||
type: "glazewm.tiling_direction.GlazewmTilingDirectionWidget"
|
||||
options:
|
||||
horizontal_label: "\udb81\udce1"
|
||||
vertical_label: "\udb81\udce2"
|
||||
btn_shadow:
|
||||
enabled: true
|
||||
color: "black"
|
||||
radius: 3
|
||||
offset: [ 1, 1 ]
|
||||
pomodoro:
|
||||
type: "yasb.pomodoro.PomodoroWidget"
|
||||
options:
|
||||
label: "<span>{icon}</span> {remaining}"
|
||||
label_alt: "<span>{icon}</span> {session}/{total_sessions} - {status}"
|
||||
work_duration: 25
|
||||
break_duration: 5
|
||||
long_break_duration: 15
|
||||
long_break_interval: 4
|
||||
auto_start_breaks: true
|
||||
auto_start_work: true
|
||||
sound_notification: true
|
||||
show_notification: true
|
||||
hide_on_break: false
|
||||
session_target: 8
|
||||
icons:
|
||||
work: "\uf252"
|
||||
break: "\uf253"
|
||||
paused: "\uf254"
|
||||
container_padding:
|
||||
top: 0
|
||||
left: 12
|
||||
bottom: 0
|
||||
right: 12
|
||||
menu:
|
||||
blur: true
|
||||
round_corners: true
|
||||
round_corners_type: "normal"
|
||||
border_color: "System"
|
||||
alignment: "right"
|
||||
direction: "down"
|
||||
offset_top: 6
|
||||
offset_left: 0
|
||||
circle_background_color: "#09ffffff"
|
||||
circle_work_progress_color: "#88c0d0"
|
||||
circle_break_progress_color: "#a3be8c"
|
||||
circle_thickness: 8
|
||||
circle_size: 160
|
||||
callbacks:
|
||||
on_left: "toggle_menu"
|
||||
on_middle: "reset_timer"
|
||||
on_right: "toggle_label"
|
||||
label_shadow:
|
||||
enabled: true
|
||||
color: "black"
|
||||
radius: 3
|
||||
offset: [ 1, 1 ]
|
||||
memory:
|
||||
type: "yasb.memory.MemoryWidget"
|
||||
options:
|
||||
label: "<span>\uf4bc</span> {virtual_mem_percent}"
|
||||
label_alt: "<span>\uf4bc</span> VIRT: {virtual_mem_percent}% SWAP: {swap_mem_percent}%"
|
||||
update_interval: 5000
|
||||
callbacks:
|
||||
on_left: "toggle_label"
|
||||
on_middle: "do_nothing"
|
||||
on_right: "do_nothing"
|
||||
memory_thresholds:
|
||||
low: 25
|
||||
medium: 50
|
||||
high: 90
|
||||
histogram_icons:
|
||||
- "\u2581" # 0%
|
||||
- "\u2581" # 10%
|
||||
- "\u2582" # 20%
|
||||
- "\u2583" # 30%
|
||||
- "\u2584" # 40%
|
||||
- "\u2585" # 50%
|
||||
- "\u2586" # 60%
|
||||
- "\u2587" # 70%
|
||||
- "\u2588" # 80%+
|
||||
label_shadow:
|
||||
enabled: true
|
||||
color: "black"
|
||||
radius: 3
|
||||
offset: [ 1, 1 ]
|
||||
@@ -0,0 +1,446 @@
|
||||
* {
|
||||
font-size: 12px;
|
||||
color: #cdd6f4;
|
||||
font-weight: 500;
|
||||
font-family: "JetBrainsMono NFP";
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
.yasb-bar {
|
||||
padding: 0 8px;
|
||||
margin: 0;
|
||||
background-color: #1e1e2e;
|
||||
border-radius: 16px;
|
||||
}
|
||||
.widget {
|
||||
padding: 0 10px;
|
||||
margin: 0;
|
||||
}
|
||||
.widget .label {
|
||||
padding: 2px 2px 1px 2px;
|
||||
|
||||
}
|
||||
.widget .label.alt {
|
||||
padding: 1px 8px 1px 8px;
|
||||
}
|
||||
.clock-widget .label {
|
||||
padding-left:8px;
|
||||
}
|
||||
.glazewm-workspaces {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.glazewm-workspaces .ws-btn {
|
||||
font-size: 18px;
|
||||
background-color: transparent;
|
||||
border: none;
|
||||
padding: 0 2px 0 2px;
|
||||
margin: 0;
|
||||
color: #95a0ad;
|
||||
}
|
||||
|
||||
.glazewm-workspaces .ws-btn.active_populated {
|
||||
color: #89b4fa;
|
||||
}
|
||||
|
||||
.glazewm-workspaces .ws-btn.active_empty {
|
||||
color: #89b4fa;
|
||||
}
|
||||
|
||||
.glazewm-workspaces .ws-btn.populated {
|
||||
color: #74c7ec;
|
||||
}
|
||||
|
||||
.glazewm-workspaces .ws-btn.empty {
|
||||
color: #95a0ad;
|
||||
}
|
||||
|
||||
.glazewm-workspaces .ws-btn:hover,
|
||||
.glazewm-workspaces .ws-btn.populated:hover,
|
||||
.glazewm-workspaces .ws-btn.empty:hover {
|
||||
color: #89b4fa;
|
||||
}
|
||||
|
||||
.glazewm-tiling-direction {
|
||||
background-color: transparent;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.glazewm-tiling-direction .btn {
|
||||
font-size: 18px;
|
||||
width: 14px;
|
||||
padding: 0 4px 0 4px;
|
||||
color: #CDD6F4;
|
||||
border: none;
|
||||
}
|
||||
|
||||
.glazewm-tiling-direction .btn:hover {
|
||||
background-color: #727272;
|
||||
}
|
||||
/*POWER MENU WIDGET*/
|
||||
/* Uptime text */
|
||||
.uptime {
|
||||
font-size: 14px;
|
||||
margin-bottom: 10px;
|
||||
color: rgba(191, 202, 219, 0.726);
|
||||
font-weight: 600;
|
||||
font-family: "JetBrainsMono NFP";
|
||||
}
|
||||
.power-menu-widget .label {
|
||||
color: #eba0ac;
|
||||
font-size: 16px;
|
||||
}
|
||||
.power-menu-popup .button {
|
||||
padding: 0;
|
||||
width: 160px;
|
||||
height: 240px;
|
||||
border-radius: 4px;
|
||||
background-color: rgba(41, 42, 58, 0.75);
|
||||
font-family: "JetBrainsMono NFP";
|
||||
color: white;
|
||||
border: 4px solid rgba(255, 255, 255, 0);
|
||||
|
||||
}
|
||||
.power-menu-popup .button.hover {
|
||||
background-color: rgb(55, 56, 75);
|
||||
border: 4px solid rgb(55, 56, 75);
|
||||
}
|
||||
.power-menu-popup .button .label {
|
||||
margin-bottom: 8px;
|
||||
font-size: 16px;
|
||||
font-weight: 600;
|
||||
color: rgba(255, 255, 255, 0.6);
|
||||
font-family: "JetBrainsMono NFP";
|
||||
}
|
||||
.power-menu-popup .button .icon {
|
||||
font-size: 64px;
|
||||
padding-top: 54px;
|
||||
color: rgba(255, 255, 255, 0.25);
|
||||
}
|
||||
.power-menu-popup .button.cancel {
|
||||
height: 20px !important; /* Much thinner than the 240px of other buttons */
|
||||
width: 100%; /* Full width to span across */
|
||||
padding-top: 10px;
|
||||
padding-bottom: 10px;
|
||||
}
|
||||
|
||||
.power-menu-popup .button.cancel .icon {
|
||||
font-size: 24px !important; /* Smaller icon for the thinner button */
|
||||
padding-top: 0px !important; /* Remove the large top padding */
|
||||
color: rgba(243, 139, 168, 0.55);
|
||||
}
|
||||
|
||||
.power-menu-popup .button.cancel .label {
|
||||
margin-bottom: 0px !important; /* Remove bottom margin */
|
||||
color: rgba(243, 139, 168, 0.95);
|
||||
}
|
||||
/* ICONS */
|
||||
.icon {
|
||||
font-size: 16px;
|
||||
}
|
||||
.volume-widget .icon {
|
||||
color: #89b4fa;
|
||||
margin: 1px 2px 0 0;
|
||||
}
|
||||
.start-menu .icon {
|
||||
font-size: 18px;
|
||||
color: #89b4fa
|
||||
}
|
||||
.clock-widget .icon {
|
||||
color: #cba6f7;
|
||||
font-size: 14px;
|
||||
}
|
||||
/* WEATHER WIDGET */
|
||||
.weather-card {
|
||||
background-color: rgba(17, 17, 27, 0.5);
|
||||
}
|
||||
.weather-card-today {
|
||||
border: 1px solid #282936;
|
||||
border-radius: 8px;
|
||||
background-color: rgba(17, 17, 27, 0.2);
|
||||
}
|
||||
.weather-card-today .label {
|
||||
font-size: 12px;
|
||||
}
|
||||
.weather-card-today .label.location {
|
||||
font-size: 24px;
|
||||
font-weight: 700;
|
||||
}
|
||||
.weather-card-today .label.alert {
|
||||
font-size: 12px;
|
||||
font-weight: 700;
|
||||
background-color: rgba(247, 199, 42, 0.05);
|
||||
border: 1px solid rgba(247, 209, 42, 0.1);
|
||||
color: rgba(196, 181, 162, 0.85);
|
||||
border-radius: 6px;
|
||||
padding: 5px 0;
|
||||
}
|
||||
.weather-card-day {
|
||||
border: 1px solid #45475a;
|
||||
border-radius: 8px;
|
||||
background-color: rgba(17, 17, 27, 0.2);
|
||||
}
|
||||
|
||||
.weather-card-day.active {
|
||||
background-color: rgba(40, 40, 60, 0.6);
|
||||
border: 1px solid rgba(50, 50, 75, 1);
|
||||
}
|
||||
|
||||
.weather-card-day:hover {
|
||||
background-color: rgba(40, 40, 60, 0.6);
|
||||
}
|
||||
|
||||
.weather-card-day .label {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
.weather-card .hourly-container {
|
||||
border: 1px solid #282936;
|
||||
background-color: #3c5fa0;
|
||||
border-radius: 8px;
|
||||
min-height: 150px;
|
||||
}
|
||||
|
||||
.weather-card .hourly-data {
|
||||
/* font-family: 'Segoe UI';*/
|
||||
/* color: cyan;*/ /* <- Font color */
|
||||
background-color: #FAE93F; /* <- Curve color */
|
||||
font-size: 12px;
|
||||
font-weight: bold;
|
||||
}
|
||||
.media-widget {
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
}
|
||||
.media-widget .label {
|
||||
color: #b4befe;
|
||||
padding: 0px;
|
||||
padding-right: 4px;
|
||||
}
|
||||
.media-menu {
|
||||
min-width: 420px;
|
||||
max-width: 420px;
|
||||
background-color: rgba(31, 39, 49, 0.5);
|
||||
}
|
||||
.media-menu .title,
|
||||
.media-menu .artist,
|
||||
.media-menu .source {
|
||||
font-size: 14px;
|
||||
font-weight: 600;
|
||||
margin-left: 10px;
|
||||
font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
|
||||
}
|
||||
.media-menu .artist {
|
||||
font-size: 13px;
|
||||
color: #6c7086;
|
||||
margin-top: 0px;
|
||||
margin-bottom: 8px;
|
||||
}
|
||||
.media-menu .source {
|
||||
font-size: 11px;
|
||||
color: #000;
|
||||
font-weight: normal;
|
||||
border-radius: 3px;
|
||||
background-color: #bac2de;
|
||||
padding: 2px 4px;
|
||||
|
||||
}
|
||||
/* The source class name is the same as what you see in the media widget; just replace spaces with dashes and convert it to lowercase.
|
||||
Example: "Windows Media" becomes "windows-media" */
|
||||
.media-menu .source.firefox {
|
||||
background-color: #ff583b;
|
||||
color: #ffffff;
|
||||
}
|
||||
.media-menu .source.spotify {
|
||||
background-color: #199143;
|
||||
color: #ffffff;
|
||||
}
|
||||
.media-menu .source.edge {
|
||||
background-color: #0078d4;
|
||||
color: #ffffff;
|
||||
}
|
||||
.media-menu .source.windows-media {
|
||||
background-color: #0078d4;
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
.media-menu .btn {
|
||||
font-family: "Segoe Fluent Icons";
|
||||
font-size: 14px;
|
||||
font-weight: 400;
|
||||
margin: 10px 2px 0px 2px;
|
||||
min-width: 40px;
|
||||
max-width: 40px;
|
||||
min-height: 40px;
|
||||
max-height: 40px;
|
||||
border-radius: 20px;
|
||||
}
|
||||
.media-menu .btn.prev {
|
||||
margin-left: 10px;
|
||||
}
|
||||
.media-menu .btn:hover {
|
||||
color: white;
|
||||
background-color: rgba(255, 255, 255, 0.1);
|
||||
}
|
||||
.media-menu .btn.play {
|
||||
background-color: rgba(255, 255, 255, 0.1);
|
||||
font-size: 20px
|
||||
}
|
||||
.media-menu .btn.disabled:hover,
|
||||
.media-menu .btn.disabled {
|
||||
color: #4e525c;
|
||||
background-color: rgba(0, 0, 0, 0);
|
||||
}
|
||||
|
||||
.media-menu .playback-time {
|
||||
font-size: 13px;
|
||||
font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
|
||||
color: #7f849c;
|
||||
margin-top: 20px;
|
||||
min-width: 100px;
|
||||
}
|
||||
.media-menu .progress-slider {
|
||||
height: 10px;
|
||||
margin: 5px 4px;
|
||||
border-radius: 3px;
|
||||
}
|
||||
.media-menu .progress-slider::groove {
|
||||
background: transparent;
|
||||
height: 2px;
|
||||
border-radius: 3px;
|
||||
background: rgba(255, 255, 255, 0.1);
|
||||
|
||||
}
|
||||
.media-menu .progress-slider::groove:hover {
|
||||
background: transparent;
|
||||
height: 6px;
|
||||
border-radius: 3px;
|
||||
background: rgba(255, 255, 255, 0.2);
|
||||
}
|
||||
.media-menu .progress-slider::sub-page {
|
||||
background: white;
|
||||
border-radius: 3px;
|
||||
height: 4px;
|
||||
}
|
||||
/* Hide media widget buttons */
|
||||
.media-widget .btn {
|
||||
padding: 0;
|
||||
margin: 0 -6px;
|
||||
padding-left: 4px;
|
||||
}
|
||||
.pomodoro-widget {
|
||||
padding: 0 0 0 0;
|
||||
}
|
||||
.pomodoro-widget .icon {
|
||||
font-size: 12px;
|
||||
padding-right: 4px;
|
||||
}
|
||||
.pomodoro-widget .label.paused,
|
||||
.pomodoro-widget .icon.paused {
|
||||
color: #7d7e8b;
|
||||
}
|
||||
.pomodoro-widget .label.work,
|
||||
.pomodoro-widget .icon.work {
|
||||
color: #a6e3a1;
|
||||
}
|
||||
.pomodoro-widget .label.break,
|
||||
.pomodoro-widget .icon.break {
|
||||
color: #89b4fa;
|
||||
}
|
||||
/* Pomodoro menu styling */
|
||||
.pomodoro-menu {
|
||||
background-color: rgba(17, 17, 27, 0.2);
|
||||
border-radius: 8px;
|
||||
}
|
||||
.pomodoro-menu .header {
|
||||
font-size: 16px;
|
||||
font-weight: 600;
|
||||
max-height: 0px;
|
||||
color: #ffffff;
|
||||
}
|
||||
.pomodoro-menu .status {
|
||||
font-size: 18px;
|
||||
font-weight: 600;
|
||||
color: #cdd6f4;
|
||||
}
|
||||
.pomodoro-menu .session {
|
||||
font-size: 12px;
|
||||
color: #a6adc8;
|
||||
}
|
||||
.pomodoro-menu .button {
|
||||
background-color: #3f4053;
|
||||
color: #cdd6f4;
|
||||
border: none;
|
||||
border-radius: 4px;
|
||||
padding: 6px 12px;
|
||||
}
|
||||
.pomodoro-menu .button.start {
|
||||
background-color: #3f4053;
|
||||
}
|
||||
.pomodoro-menu .button.reset {
|
||||
background-color: #3f4053;
|
||||
}
|
||||
.pomodoro-menu .button:hover {
|
||||
background-color: rgba(255, 255, 255, 0.158);
|
||||
}
|
||||
.pomodoro-menu .button.pause {
|
||||
background-color: #a6e3a1;
|
||||
color: #1e1e2e;
|
||||
}
|
||||
.pomodoro-menu .button:pressed {
|
||||
background-color: #5a5b6e;
|
||||
}
|
||||
|
||||
.calendar {
|
||||
background-color: rgba(17, 17, 27, 0.4);
|
||||
}
|
||||
.calendar .calendar-table,
|
||||
.calendar .calendar-table::item {
|
||||
background-color: rgba(17, 17, 27, 0);
|
||||
color: rgba(162, 177, 196, 0.85);
|
||||
font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
border: none;
|
||||
outline: none;
|
||||
}
|
||||
.calendar .calendar-table::item:selected {
|
||||
color: rgb(255, 255, 255);
|
||||
background-color: #007acc;
|
||||
border-radius: 10px;
|
||||
}
|
||||
.calendar .day-label {
|
||||
margin-top: 20px;
|
||||
}
|
||||
.calendar .day-label,
|
||||
.calendar .month-label,
|
||||
.calendar .date-label,
|
||||
.calendar .week-label,
|
||||
.calendar .holiday-label {
|
||||
font-family: 'Segoe UI';
|
||||
font-size: 16px;
|
||||
color: #fff;
|
||||
font-weight: 700;
|
||||
min-width: 180px;
|
||||
max-width: 180px;
|
||||
}
|
||||
.calendar .week-label,
|
||||
.calendar .holiday-label {
|
||||
font-size: 12px;
|
||||
font-weight: 600;
|
||||
color: rgba(162, 177, 196, 0.85);
|
||||
}
|
||||
.calendar .holiday-label {
|
||||
color: rgba(162, 177, 196, 0.85);
|
||||
font-weight: 700;
|
||||
}
|
||||
.calendar .month-label {
|
||||
font-weight: normal;
|
||||
}
|
||||
.calendar .date-label {
|
||||
font-size: 88px;
|
||||
font-weight: 900;
|
||||
color: rgb(255, 255, 255);
|
||||
margin-top: -20px;
|
||||
}
|
||||
@@ -0,0 +1,145 @@
|
||||
2026-03-30 21:48:22,794 [INFO] [MainThread] [root/log.py:95]: YASB v1.9.0
|
||||
2026-03-30 21:48:22,795 [INFO] [CLIPipeServer] [cli_server/cli_server.py:215]: CLI server started v1.1.6
|
||||
2026-03-30 21:48:22,795 [INFO] [MainThread] [cli_server/cli_server.py:106]: Log pipe server started
|
||||
2026-03-30 21:48:22,922 [DEBUG] [MainThread] [qasync._windows._EventPoller/_windows.py:215]: Starting (proactor: <_IocpProactor overlapped#=0 result#=0>)...
|
||||
2026-03-30 21:48:22,922 [DEBUG] [Dummy-3] [qasync._windows._EventWorker/_windows.py:195]: Thread started
|
||||
2026-03-30 21:48:23,904 [INFO] [MainThread] [root/service.py:41]: AudioInputService starting...
|
||||
2026-03-30 21:48:24,152 [INFO] [MainThread] [root/service.py:52]: AudioOutputService starting...
|
||||
2026-03-30 21:48:24,429 [DEBUG] [MainThread] [root/win32_accent.py:124]: Failed to apply settings: [WinError 0] The operation completed successfully.
|
||||
2026-03-30 21:48:25,162 [INFO] [MainThread] [root/bar_manager.py:88]: Starting SystemEventListener...
|
||||
2026-03-30 21:48:25,162 [INFO] [MainThread] [root/bar_manager.py:88]: Starting WindowsNotificationEventListener...
|
||||
2026-03-30 21:48:25,163 [ERROR] [MainThread] [root/widget_builder.py:111]: Failed to validate widget(s) due to invalid options - weather
|
||||
location:
|
||||
- Input should be a valid string
|
||||
api_key:
|
||||
- Input should be a valid string
|
||||
icons:
|
||||
snowyIcyDay:
|
||||
- Extra inputs are not permitted
|
||||
snowyIcyNight:
|
||||
- Extra inputs are not permitted
|
||||
|
||||
- wallpapers
|
||||
image_path:
|
||||
str:
|
||||
- Input should be a valid string
|
||||
list[str]:
|
||||
- Input should be a valid list
|
||||
|
||||
2026-03-30 21:48:25,458 [INFO] [MainThread] [root/watcher.py:65]: Watching directory: c:\users\win10\.config\yasb
|
||||
2026-03-30 21:48:25,459 [INFO] [MainThread] [root/watcher.py:104]: Created file watcher
|
||||
2026-03-30 21:48:25,535 [INFO] [MainThread] [root/update_service.py:429]: Background update checker started
|
||||
2026-03-30 21:48:46,928 [DEBUG] [Thread-6] [root/watcher.py:90]: Config file modified: c:\users\win10\.config\yasb\config.yaml
|
||||
2026-03-30 21:51:25,966 [INFO] [MainThread] [root/controller.py:15]: Reloading Application from tray...
|
||||
2026-03-30 21:51:26,068 [INFO] [MainThread] [cli_server/cli_server.py:114]: Log pipe server stopped
|
||||
2026-03-30 21:51:26,068 [DEBUG] [MainThread] [cli_server/cli_server.py:209]: CLI server stopped
|
||||
2026-03-30 21:51:26,287 [INFO] [MainThread] [root/bar_manager.py:104]: Stopping SystemEventListener...
|
||||
2026-03-30 21:51:26,290 [INFO] [MainThread] [root/bar_manager.py:104]: Stopping WindowsNotificationEventListener...
|
||||
2026-03-30 21:51:26,701 [INFO] [MainThread] [root/log.py:95]: YASB v1.9.0
|
||||
2026-03-30 21:51:26,702 [INFO] [CLIPipeServer] [cli_server/cli_server.py:215]: CLI server started v1.1.6
|
||||
2026-03-30 21:51:26,702 [INFO] [MainThread] [cli_server/cli_server.py:106]: Log pipe server started
|
||||
2026-03-30 21:51:26,724 [DEBUG] [MainThread] [qasync._windows._EventPoller/_windows.py:215]: Starting (proactor: <_IocpProactor overlapped#=0 result#=0>)...
|
||||
2026-03-30 21:51:26,724 [DEBUG] [Dummy-3] [qasync._windows._EventWorker/_windows.py:195]: Thread started
|
||||
2026-03-30 21:51:27,144 [INFO] [MainThread] [root/service.py:41]: AudioInputService starting...
|
||||
2026-03-30 21:51:27,192 [INFO] [MainThread] [root/service.py:52]: AudioOutputService starting...
|
||||
2026-03-30 21:51:27,321 [DEBUG] [MainThread] [root/win32_accent.py:124]: Failed to apply settings: [WinError 0] The operation completed successfully.
|
||||
2026-03-30 21:51:27,458 [INFO] [MainThread] [root/bar_manager.py:88]: Starting WindowsNotificationEventListener...
|
||||
2026-03-30 21:51:27,459 [INFO] [MainThread] [root/bar_manager.py:88]: Starting SystemEventListener...
|
||||
2026-03-30 21:51:27,459 [ERROR] [MainThread] [root/widget_builder.py:111]: Failed to validate widget(s) due to invalid options - weather
|
||||
location:
|
||||
- Input should be a valid string
|
||||
api_key:
|
||||
- Input should be a valid string
|
||||
icons:
|
||||
snowyIcyDay:
|
||||
- Extra inputs are not permitted
|
||||
snowyIcyNight:
|
||||
- Extra inputs are not permitted
|
||||
|
||||
- wallpapers
|
||||
image_path:
|
||||
str:
|
||||
- Input should be a valid string
|
||||
list[str]:
|
||||
- Input should be a valid list
|
||||
|
||||
2026-03-30 21:51:27,522 [INFO] [MainThread] [root/watcher.py:65]: Watching directory: c:\users\win10\.config\yasb
|
||||
2026-03-30 21:51:27,522 [INFO] [MainThread] [root/watcher.py:104]: Created file watcher
|
||||
2026-03-30 21:51:27,586 [INFO] [MainThread] [root/update_service.py:429]: Background update checker started
|
||||
2026-03-30 21:52:14,366 [DEBUG] [MainThread] [root/utilities.py:205]: Failed to get version info for C:\Program Files\Alacritty\alacritty.exe: (1813, 'GetFileVersionInfo:GetFileVersionInfoSize', 'The specified resource type cannot be found in the image file.')
|
||||
2026-03-30 21:52:32,086 [DEBUG] [MainThread] [root/utilities.py:205]: Failed to get version info for C:\Program Files\Alacritty\alacritty.exe: (1813, 'GetFileVersionInfo:GetFileVersionInfoSize', 'The specified resource type cannot be found in the image file.')
|
||||
2026-03-30 21:58:55,082 [DEBUG] [MainThread] [root/utilities.py:205]: Failed to get version info for C:\Program Files\Alacritty\alacritty.exe: (1813, 'GetFileVersionInfo:GetFileVersionInfoSize', 'The specified resource type cannot be found in the image file.')
|
||||
2026-03-30 22:01:21,452 [INFO] [MainThread] [root/controller.py:15]: Reloading Application from tray...
|
||||
2026-03-30 22:01:21,554 [INFO] [MainThread] [cli_server/cli_server.py:114]: Log pipe server stopped
|
||||
2026-03-30 22:01:21,554 [DEBUG] [MainThread] [cli_server/cli_server.py:209]: CLI server stopped
|
||||
2026-03-30 22:01:21,818 [INFO] [MainThread] [root/bar_manager.py:104]: Stopping WindowsNotificationEventListener...
|
||||
2026-03-30 22:01:21,819 [INFO] [MainThread] [root/bar_manager.py:104]: Stopping SystemEventListener...
|
||||
2026-03-30 22:01:22,248 [INFO] [MainThread] [root/log.py:95]: YASB v1.9.0
|
||||
2026-03-30 22:01:22,249 [INFO] [CLIPipeServer] [cli_server/cli_server.py:215]: CLI server started v1.1.6
|
||||
2026-03-30 22:01:22,249 [INFO] [MainThread] [cli_server/cli_server.py:106]: Log pipe server started
|
||||
2026-03-30 22:01:22,271 [DEBUG] [MainThread] [qasync._windows._EventPoller/_windows.py:215]: Starting (proactor: <_IocpProactor overlapped#=0 result#=0>)...
|
||||
2026-03-30 22:01:22,272 [DEBUG] [Dummy-3] [qasync._windows._EventWorker/_windows.py:195]: Thread started
|
||||
2026-03-30 22:01:22,705 [INFO] [MainThread] [root/service.py:41]: AudioInputService starting...
|
||||
2026-03-30 22:01:22,753 [INFO] [MainThread] [root/service.py:52]: AudioOutputService starting...
|
||||
2026-03-30 22:01:22,973 [DEBUG] [MainThread] [root/win32_accent.py:124]: Failed to apply settings: [WinError 0] The operation completed successfully.
|
||||
2026-03-30 22:01:23,108 [INFO] [MainThread] [root/bar_manager.py:88]: Starting WindowsNotificationEventListener...
|
||||
2026-03-30 22:01:23,109 [INFO] [MainThread] [root/bar_manager.py:88]: Starting SystemEventListener...
|
||||
2026-03-30 22:01:23,109 [ERROR] [MainThread] [root/widget_builder.py:111]: Failed to validate widget(s) due to invalid options - weather
|
||||
location:
|
||||
- Input should be a valid string
|
||||
api_key:
|
||||
- Input should be a valid string
|
||||
icons:
|
||||
snowyIcyDay:
|
||||
- Extra inputs are not permitted
|
||||
snowyIcyNight:
|
||||
- Extra inputs are not permitted
|
||||
|
||||
- wallpapers
|
||||
image_path:
|
||||
str:
|
||||
- Input should be a valid string
|
||||
list[str]:
|
||||
- Input should be a valid list
|
||||
|
||||
2026-03-30 22:01:23,177 [INFO] [MainThread] [root/watcher.py:65]: Watching directory: c:\users\win10\.config\yasb
|
||||
2026-03-30 22:01:23,178 [INFO] [MainThread] [root/watcher.py:104]: Created file watcher
|
||||
2026-03-30 22:01:23,244 [INFO] [MainThread] [root/update_service.py:429]: Background update checker started
|
||||
2026-03-30 22:01:42,152 [INFO] [MainThread] [root/bar_manager.py:104]: Stopping WindowsNotificationEventListener...
|
||||
2026-03-30 22:01:42,152 [INFO] [MainThread] [root/bar_manager.py:104]: Stopping SystemEventListener...
|
||||
2026-03-30 22:03:44,650 [INFO] [MainThread] [root/log.py:95]: YASB v1.9.0
|
||||
2026-03-30 22:03:44,651 [INFO] [CLIPipeServer] [cli_server/cli_server.py:215]: CLI server started v1.1.6
|
||||
2026-03-30 22:03:44,651 [INFO] [MainThread] [cli_server/cli_server.py:106]: Log pipe server started
|
||||
2026-03-30 22:03:44,842 [DEBUG] [MainThread] [qasync._windows._EventPoller/_windows.py:215]: Starting (proactor: <_IocpProactor overlapped#=0 result#=0>)...
|
||||
2026-03-30 22:03:44,844 [DEBUG] [Dummy-3] [qasync._windows._EventWorker/_windows.py:195]: Thread started
|
||||
2026-03-30 22:03:46,088 [INFO] [MainThread] [root/service.py:41]: AudioInputService starting...
|
||||
2026-03-30 22:03:46,531 [INFO] [MainThread] [root/service.py:52]: AudioOutputService starting...
|
||||
2026-03-30 22:03:46,811 [DEBUG] [MainThread] [root/win32_accent.py:124]: Failed to apply settings: [WinError 0] The operation completed successfully.
|
||||
2026-03-30 22:03:46,896 [INFO] [MainThread] [root/bar_manager.py:88]: Starting WindowsNotificationEventListener...
|
||||
2026-03-30 22:03:46,897 [INFO] [MainThread] [root/bar_manager.py:88]: Starting SystemEventListener...
|
||||
2026-03-30 22:03:46,898 [ERROR] [MainThread] [root/widget_builder.py:111]: Failed to validate widget(s) due to invalid options - weather
|
||||
location:
|
||||
- Input should be a valid string
|
||||
api_key:
|
||||
- Input should be a valid string
|
||||
icons:
|
||||
snowyIcyDay:
|
||||
- Extra inputs are not permitted
|
||||
snowyIcyNight:
|
||||
- Extra inputs are not permitted
|
||||
|
||||
- wallpapers
|
||||
image_path:
|
||||
str:
|
||||
- Input should be a valid string
|
||||
list[str]:
|
||||
- Input should be a valid list
|
||||
|
||||
2026-03-30 22:03:47,270 [INFO] [MainThread] [root/watcher.py:65]: Watching directory: c:\users\win10\.config\yasb
|
||||
2026-03-30 22:03:47,270 [INFO] [MainThread] [root/watcher.py:104]: Created file watcher
|
||||
2026-03-30 22:03:47,352 [INFO] [MainThread] [root/update_service.py:429]: Background update checker started
|
||||
2026-03-30 22:04:28,276 [INFO] [MainThread] [root/bar.py:149]: Screen geometry changed. Updating position for bar primary-bar on screen \\.\DISPLAY1
|
||||
2026-03-30 22:04:28,678 [INFO] [MainThread] [root/bar_helper.py:526]: AppBarManager need to re-register 1 bar
|
||||
2026-03-30 22:04:28,850 [INFO] [MainThread] [root/bar_helper.py:535]: Re-registered AppBar for primary-bar_DISPLAY1_882ba90a (space reservation + fullscreen)
|
||||
2026-03-30 22:10:08,146 [INFO] [MainThread] [root/bar_manager.py:104]: Stopping WindowsNotificationEventListener...
|
||||
2026-03-30 22:10:08,146 [INFO] [MainThread] [root/bar_manager.py:104]: Stopping SystemEventListener...
|
||||
Reference in New Issue
Block a user