From e4725055b90af0187f39879ede804f9477af0f96 Mon Sep 17 00:00:00 2001 From: Louis047 Date: Tue, 24 Feb 2026 22:14:26 +0530 Subject: [PATCH 1/2] feat: update config + style to latest update standards --- .../config.yaml | 241 ++++++++++++------ .../readme.md | 2 + .../styles.css | 226 ++++++++++++++-- 3 files changed, 365 insertions(+), 104 deletions(-) diff --git a/themes/43cef139-7c16-4cd2-904f-7b0aa82cc7d3/config.yaml b/themes/43cef139-7c16-4cd2-904f-7b0aa82cc7d3/config.yaml index 6486f60..2c4d7da 100644 --- a/themes/43cef139-7c16-4cd2-904f-7b0aa82cc7d3/config.yaml +++ b/themes/43cef139-7c16-4cd2-904f-7b0aa82cc7d3/config.yaml @@ -1,9 +1,10 @@ # Bar For GlazeWM # For more information about configuration options, please visit the Wiki https://github.com/amnweb/yasb/wiki watch_stylesheet: True -watch_config: True -debug: False +watch_config: False +debug: True update_check: False +show_systray: True glazewm: start_command: "glazewm.exe start" stop_command: "glazewm.exe command wm-exit" @@ -11,11 +12,11 @@ glazewm: bars: primary-bar: enabled: True - screens: ["*"] + screens: ['*'] class_name: "yasb-bar" alignment: position: "top" - center: False + align: "center" animation: enabled: False duration: 0 @@ -24,12 +25,24 @@ bars: acrylic: False dark_mode: False round_corners: False - border_color: "None" + border_color: None window_flags: always_on_top: False windows_app_bar: True # This interferes with apps in full-screen. Notably while watching videos in full screen - hide_on_fullscreen: True - dimensions: + hide_on_fullscreen: False + hide_on_maximized: False + auto_hide: False + layouts: + left: + alignment: "left" + stretch: True + center: + alignment: "center" + stretch: True + right: + alignment: "right" + stretch: True + dimensions: width: "100%" height: 30 padding: @@ -39,8 +52,9 @@ bars: right: 0 widgets: left: [ - "start_menu", + "power_menu", "media", + "glazewm_binding_mode", "glazewm_workspaces" ] center: [ @@ -54,21 +68,80 @@ bars: "lines", "sysinfo", "notifications", - "weather", + "open_meteo", "wallpapers", "notes", "clock" ] widgets: - start_menu: - type: "yasb.custom.CustomWidget" + open_meteo: + type: "yasb.open_meteo.OpenMeteoWidget" options: - label: "\ue62a" - label_alt: "\ue62a" - class_name: "start-menu-widget" + label: "{icon} {temp}" + label_alt: "{location}: Min {min_temp} Max {max_temp} Hum {humidity}" + update_interval: 600 + hide_decimal: True + units: "metric" + tooltip: False + icons: + sunnyDay: "\ue30d" + clearNight: "\ue32b" + cloudyDay: "\ue312" + cloudyNight: "\ue311" + drizzleDay: "\udb81\ude7e" + drizzleNight: "\udb81\ude7e" + rainyDay: "\ue308" + rainyNight: "\ue333" + snowyDay: "\ue30a" + snowyNight: "\ue335" + foggyDay: "\ue303" + foggyNight: "\ue346" + thunderstormDay: "\ue30f" + thunderstormNight: "\ue338" + default: "\uebaa" + animation: + enabled: False + duration: 0 callbacks: - on_left: "exec start_menu" - on_right: "exec quick_link" + on_left: "toggle_card" + on_middle: "do_nothing" + on_right: "toggle_label" + weather_card: + blur: False + round_corners: False + round_corners_type: "normal" + border_color: "none" + alignment: "right" + direction: "down" + offset_top: 4 + offset_left: 85 + icon_size: 48 + show_hourly_forecast: True + time_format: "24h" + hourly_point_spacing: 76 + hourly_icon_size: 24 + icon_smoothing: True + temp_line_width: 2 + current_line_color: "#8EAEE8" + current_line_width: 1 + current_line_style: "dot" + hourly_gradient: + enabled: False + top_color: "#8EAEE8" + bottom_color: "#2A3E68" + hourly_forecast_buttons: + enabled: True + default_view: "temperature" + temperature_icon: "\udb81\udd99" + rain_icon: "\udb81\udd96" + snow_icon: "\udb81\udd98" + weather_animation: + enabled: False + snow_overrides_rain: True + temp_line_animation_style: both + rain_effect_intensity: 1.0 + snow_effect_intensity: 1.0 + scale_with_chance: True lines: type: "yasb.custom.CustomWidget" options: @@ -94,7 +167,7 @@ widgets: offset_left: 44 max_title_size: 150 show_date_time: True - icons: + icons: note: "\udb82\udd0c" delete: "\udb82\udde7" copy: "\uf4bb" @@ -105,18 +178,16 @@ widgets: notifications: type: "yasb.notifications.NotificationsWidget" options: - label: "\ueb9a" - label_alt: "\ueb9a {count}" - hide_empty: True + label: "\udb80\udd78" + label_alt: "\udb80\udd78 {count}" + hide_empty: False tooltip: False callbacks: on_left: "toggle_notification" on_right: "toggle_label" - container_padding: - top: 0 - left: 0 - bottom: 0 - right: 0 + animation: + enabled: False + duration: 0 sysinfo: type: "yasb.grouper.GrouperWidget" options: @@ -188,22 +259,23 @@ widgets: high: 90 callbacks: on_right: "exec cmd /c Taskmgr" - on_left: "toggle_label" + on_left: "toggle_label" wallpapers: type: "yasb.wallpapers.WallpapersWidget" options: label: "\udb83\ude09" # Example path to folder with images. Can be a single string or a list of strings. - # image_path: "C:\\Users\\{Username}\\Images" + # image_path: "C:\\Users\\{Username}\\Images" image_path: "C:\\Users\\Lone\\Pictures\\Wallpapers\\Home Screen\\" change_automatically: false # Automatically change wallpaper update_interval: 60 # If change_automatically is true, update interval in seconds animation: enabled: False duration: 0 + tooltip: False gallery: enabled: true - blur: true + blur: false image_width: 250 image_per_page: 7 gallery_columns: 0 # 0 = auto, matches image_per_page for a single row @@ -246,12 +318,34 @@ widgets: show_volume: False show_network: False glazewm_workspaces: - type: "glazewm.workspaces.GlazewmWorkspacesWidget" - options: - offline_label: "Offline" - hide_empty_workspaces: True - hide_if_offline: True - enable_scroll_switching: True + type: "glazewm.workspaces.GlazewmWorkspacesWidget" + options: + offline_label: "Offline" + hide_if_offline: True + monitor_exclusive: False + enable_scroll_switching: False + animation: False + glazewm_binding_mode: + type: "glazewm.binding_mode.GlazewmBindingModeWidget" + options: + label: "{icon}" + label_alt: "{icon} {binding_mode}" + hide_if_no_active: True + label_if_no_active: "" + default_icon: "" + icons: + none: "" + resize: "\udb82\ude68" + pause: "\uf28c" + binding_modes_to_cycle_through: [ + "none", # none handles if no binding mode is active + "resize", + "pause" + ] + callbacks: + on_left: "next_binding_mode" + on_middle: "do_nothing" + on_right: "disable_binding_mode" media: type: "yasb.media.MediaWidget" options: @@ -259,10 +353,6 @@ widgets: hide_empty: False callbacks: on_left: "toggle_media_menu" - max_field_size: - label: 17 - label_alt: 30 - truncate_whole_label: False show_thumbnail: False controls_only: False controls_left: False @@ -294,7 +384,6 @@ widgets: label: "{%H:%M}" label_alt: "{%A %d %B %Y %H:%M}" tooltip: False - timezones: [] # To be added later once figured out calendar: blur: False round_corners: False @@ -306,33 +395,9 @@ widgets: show_holidays: True holiday_color: "#FF6E00" country_code: "IN" + extended: False animation: enabled: False - weather: - type: "yasb.weather.WeatherWidget" - options: - label: "{icon} {temp}" - label_alt: "Min {min_temp} Max {max_temp} Hum {humidity}" - api_key: env - location: env - update_interval: 3600 - hide_decimal: True - tooltip: False - animation: - enabled: False - duration: 0 - callbacks: - on_left: "toggle_card" - on_right: "toggle_label" - weather_card: - blur: False - round_corners: False - border_color: "None" - alignment: "right" - direction: "down" - icon_size: 64 - offset_top: 4 - offset_left: 85 wifi: type: "yasb.wifi.WifiWidget" options: @@ -362,11 +427,11 @@ widgets: enabled: False duration: 0 volume_icons: - - "\ueee8" # Icon for muted - - "\uf026" # Icon for 0-10% volume - - "\uf027" # Icon for 11-30% volume - - "\uf027" # Icon for 31-60% volume - - "\uf028" # Icon for 61-100% volume + - "\ue74f" # Icon for muted + - "\ue994" # Icon for 0-10% volume + - "\ue994" # Icon for 11-30% volume + - "\ue994" # Icon for 31-60% volume + - "\ue994" # Icon for 61-100% volume audio_menu: blur: False round_corners: False @@ -382,15 +447,16 @@ widgets: type: "yasb.battery.BatteryWidget" options: label: "{icon}{percent}%" - label_alt: "{icon}{time_remaining}" + label_alt: "Pow {power}W HP {health}%" update_interval: 5000 hide_unsupported: True - time_remaining_natural: True + time_remaining_natural: False animation: enabled: False duration: 0 charging_options: icon_format: "{charging_icon}" + blink_charging_icon: False status_thresholds: critical: 10 low: 25 @@ -409,46 +475,61 @@ widgets: options: label: "\ue62a" uptime: True + show_user: True + profile_image_size: 180 + menu_style: "fullscreen" blur: False blur_background: True animation_duration: 50 button_row: 3 buttons: - lock: ["\uea75", "Lock"] - sleep: ["\u23fe","Sleep"] - signout: ["\udb80\udf43", "Sign out"] + lock: ["\uf456", "Lock"] + sleep: ["\uf4ee","Sleep"] + signout: ["\uf08b", "Sign out"] shutdown: ["\uf011", "Shut Down"] restart: ["\uead2", "Restart"] cancel: ["\udb81\udf3a", "Cancel"] active_window: # TO-DO: Add rewrite rules for specific apps type: "yasb.active_window.ActiveWindowWidget" options: - label: "{win[title]}" + label: "{win[app_name]}" label_no_window: "" label_alt: "{win[process]}" label_icon: False label_icon_size: 14 max_length: 75 max_length_ellipsis: "" - monitor_exclusive: True + monitor_exclusive: False + animation: + enabled: False + duration: 0 + callbacks: + on_left: "do_nothing" rewrite: # Strip trailing “.exe” (case-insensitive) and lowercase: - pattern: "^(.+?)\\.exe$" replacement: "\\1" case: title - # Uppercase UI + + # Uppercase UI - pattern: "\\bui\\b" replacement: "UI" + # Change "* – Zen Browser" to "Zen Browser" - - pattern: "^(.*) — Zen Browser$" + - pattern: "^(.*) — Zen Browser" replacement: "Zen Browser" + # Change "WinSpy *" to "WinSpy" - pattern: "^WinSpy .*" replacement: "WinSpy" + # Ignore ShareX window showing at startup (show nothing) - pattern: "^ShareX .*" replacement: "" + - pattern: "^ShareX - .*" replacement: "ShareX" - callbacks: - on_left: "do_nothing" + + # BCUninstaller Title + - pattern: "^Bulk Crap Uninstaller .*" + replacement: "Bulk Crap Uninstaller" diff --git a/themes/43cef139-7c16-4cd2-904f-7b0aa82cc7d3/readme.md b/themes/43cef139-7c16-4cd2-904f-7b0aa82cc7d3/readme.md index 850e44c..1f592d4 100644 --- a/themes/43cef139-7c16-4cd2-904f-7b0aa82cc7d3/readme.md +++ b/themes/43cef139-7c16-4cd2-904f-7b0aa82cc7d3/readme.md @@ -2,3 +2,5 @@ A minimal, i3-inspired YASB bar setup designed specifically for **GlazeWM on Windows**. Focuses on clarity, low animation overhead, and dense system information while keeping visuals flat and consistent. + +For full customization, do checkout this dotfiles repository for a complete guide: https://github.com/Louis047/Windows-Dots diff --git a/themes/43cef139-7c16-4cd2-904f-7b0aa82cc7d3/styles.css b/themes/43cef139-7c16-4cd2-904f-7b0aa82cc7d3/styles.css index cc605ae..8a27caa 100644 --- a/themes/43cef139-7c16-4cd2-904f-7b0aa82cc7d3/styles.css +++ b/themes/43cef139-7c16-4cd2-904f-7b0aa82cc7d3/styles.css @@ -52,6 +52,10 @@ For more information about configuration options, please visit their documentati --media_menu_btn_disabled: #3b3b3b; --media_menu_btn: #acacac; --media_menu_btn_alt: #4A4A4A; + --open_meteo_card_day_hover: rgba(255, 255, 255, 0.01); + --open_meteo_card_day_active: rgba(255, 255, 255, 0.04); + --open_meteo_card_hourly_active: rgba(255, 255, 255, 0.1); + --power_menu_overlay_bg: rgba(0, 0, 0, 0); } /* COMMON YASB ELEMENTS */ @@ -84,13 +88,32 @@ For more information about configuration options, please visit their documentati font-size: 14px; font-weight: 700; } + /* WIDGETS */ /* Power Menu */ +.power-menu-popup .profile-info { + padding: 0 0 16px 0; + background-color: transparent; + margin-bottom: 16px; +} +.power-menu-popup .profile-info .profile-username { + font-size: 32px; + font-weight: 750; + color: var(--text); + margin-bottom: 12px; + margin-top: 24px; +} +.power-menu-popup .profile-info .profile-account-type { + font-size: 18px; + color: var(--text); + font-weight: 600; +} .power-menu-widget .label { padding: 0 2px 0 2px; } .power-menu-popup { background: transparent; + margin-bottom: 56px; } .power-menu-popup .button { padding: 0; @@ -103,7 +126,7 @@ For more information about configuration options, please visit their documentati border-right: 4px solid rgba(58, 59, 83, 0); border-top: 4px solid rgba(58, 59, 83, 0); border-bottom: 4px solid rgba(58, 59, 83, 0); - margin: 0px; + margin: 4px; } .power-menu-popup .button.hover { background-color: var(--power_menu_elem_hover); @@ -118,13 +141,14 @@ For more information about configuration options, please visit their documentati font-size: 16px; font-weight: 500; color: var(--text); + margin: 12px 0 0 0; } .power-menu-popup .button .icon { font-size: 64px; - padding-top: 32px; color: var(--power_menu_buttons); + margin-bottom: 24px; } -.uptime{ +.power-menu-overlay .uptime { font-size: 26px; margin-bottom: 60px; background: transparent; @@ -132,20 +156,22 @@ For more information about configuration options, please visit their documentati margin-left: 625px; margin-right: 625px; } +.power-menu-overlay { + background-color: var(--power_menu_overlay_bg); +} /* GlazeWM */ +/* Workspaces */ .glazewm-workspaces { margin: 0; } - .glazewm-workspaces .ws-btn { background-color: transparent; border: none; - padding:1px 2px 0 4px; + padding:0 2px; margin: 0 2px 0 2px; font-size: 14px; } - .glazewm-workspaces .ws-btn.active_populated, .glazewm-workspaces .ws-btn.active_empty { color: var(--workspace_active); @@ -158,13 +184,19 @@ For more information about configuration options, please visit their documentati .glazewm-workspaces .ws-btn.empty { color: var(--workspace_empty); } - .glazewm-workspaces .ws-btn:hover, .glazewm-workspaces .ws-btn.populated:hover, .glazewm-workspaces .ws-btn.empty:hover { color: var(--workspace_hover); } +/* Binding Mode */ +.glazewm-binding-mode { + color: var(--text); + font-weight: 900; + margin: 0 0 0 4px; +} + /* Media */ .media-widget { padding: 0; @@ -175,6 +207,7 @@ For more information about configuration options, please visit their documentati padding: 0 2px 0 8px; font-size: 14px; } + /* Media-Menu */ .media-menu { min-width: 420px; @@ -209,6 +242,7 @@ For more information about configuration options, please visit their documentati .media-menu .thumbnail { border: var(--global_widget_border_alt); } + /* Media-Menu source specific */ .media-menu .source.aimp { background-color: #6f42c1; @@ -270,7 +304,6 @@ For more information about configuration options, please visit their documentati .media-menu .source.zen { background-color: #dfdfdf; } - .media-menu .btn { font-size: 28px; margin: 10px 2px 0px 2px; @@ -280,7 +313,6 @@ For more information about configuration options, please visit their documentati max-height: 40px; border-radius: 0px; } - .media-menu .btn.play:hover { color: var(--media_menu_btn_hover); } @@ -395,7 +427,7 @@ For more information about configuration options, please visit their documentati /* Battery */ .battery-widget .widget-container .icon { - padding: 0px 2px; + padding: 0px 2px 0 0; font-size: 16px; font-family: "Segoe Fluent Icons"; } @@ -456,6 +488,7 @@ For more information about configuration options, please visit their documentati color: var(--text_selected); border: none; outline: none; + background: var(--widget_bg); } .calendar .day-label { margin-top: 20px; @@ -478,6 +511,12 @@ For more information about configuration options, please visit their documentati color: var(--text); margin-top: -20px; } +.calendar .holiday-label { + font-size: 14px; + /* padding-bottom: 24px; */ + font-weight: 700; + color: var(--text); +} /* Memory */ .memory-widget .icon { @@ -515,7 +554,7 @@ For more information about configuration options, please visit their documentati padding: 0 2px 0 6px; } .disk-group { - background-color:var(--widget_bg); + background-color: var(--widget_bg); border: var(--global_widget_border); } @@ -619,6 +658,14 @@ For more information about configuration options, please visit their documentati } /* Volume */ +.volume-widget .widget-container .icon { + padding: 0; + font-family: "Segoe Fluent Icons"; + font-size: 16px; +} +.volume-widget .widget-container .label { + padding: 0 0 0 1px; +} .volume-slider { border: none; } @@ -647,20 +694,156 @@ For more information about configuration options, please visit their documentati background-color: rgba(255, 255, 255, 0.06); } -/* Weather */ +/* Open Meteo */ +.open-meteo-widget .icon { + font-size: 16px; +} -.weather-card{ +/* Open Meteo Card */ +.open-meteo-card { background-color: var(--widget_bg); border: var(--global_widget_border); + min-width: 500px; } -.weather-card-today, -.weather-card-day{ - background-color: var(--widget_bg_alt); +.open-meteo-card-today .label { + font-size: 13px; + font-weight: 400; + color: var(--text_alt); +} +.open-meteo-card-today .label.location { + font-size: 32px; + font-weight: 700; + color: var(--text); +} +.open-meteo-card-today .label.sunrisesunset { + font-size: 18px; + font-weight: 600; + color: rgb(201, 204, 159); +} +.open-meteo-card-today .label.sunrisesunset-icon { + font-size: 18px; + color: rgb(201, 204, 159); +} +.open-meteo-card-day { border: var(--global_widget_border_alt); + border-radius: 0; + background-color: var(--widget_bg_alt); + padding: 4px; + min-width: 70px; } -.weather-card-today .label.location { - font-size: 24px; +.open-meteo-card-day .day-name { + color: var(--text_alt); + font-size: 12px; + font-weight: 600; +} +.open-meteo-card-day .day-temp-max { font-weight: 700; + font-size: 16px; + color: var(--text); +} +.open-meteo-card-day .day-temp-min { + color: var(--text); + font-weight: 400; + font-size: 13px; +} +.open-meteo-card-day.active { + background-color: var(--open_meteo_card_day_active); +} +.open-meteo-card-day:hover { + background-color: var(--open_meteo_card_day_hover); +} +.open-meteo-card .hourly-container { + border: none; + background-color: transparent; + min-height: 120px; +} +.open-meteo-card .hourly-data { + font-size: 11px; + font-weight: 700; +} +.open-meteo-card .hourly-data.temperature { + background-color: #c9be48; +} +.open-meteo-card .hourly-data.rain { + background-color: #4a90e2; +} +.open-meteo-card .hourly-data.snow { + background-color: #a0c4ff; +} +.open-meteo-card .hourly-data .hourly-rain-animation { + color: rgba(150, 200, 255, 40); + background-color: rgba(0, 0, 0, 0); +} +.open-meteo-card .hourly-data .hourly-snow-animation { + color: rgba(255, 255, 255, 150); + background-color: rgba(0, 0, 0, 0); +} +.open-meteo-card .hourly-data-buttons { + margin-top: 11px; + margin-left: 11px; +} +.open-meteo-card .hourly-data-button { + border-radius: 0; + min-height: 24px; + min-width: 24px; + max-width: 24px; + max-height: 24px; + font-size: 14px; + color: var(--text_alt); + border: 1px solid transparent; +} +.open-meteo-card .hourly-data-button.active { + color: var(--text); + background-color: rgba(255, 255, 255, 0.1); + border: var(--global_widget_border_alt); +} + +/* Open Meteo Search Dialog */ +.open-meteo-card .search-head { + font-size: 18px; + font-weight: 600; + color: var(--text); +} +.open-meteo-card .search-description { + font-size: 14px; + font-weight: 400; + color: var(--text_alt); + padding-bottom: 8px; +} +.open-meteo-card .no-data-icon { + font-size: 88px; +} +.open-meteo-card .no-data-text { + font-size: 16px; + font-weight: 400; +} +.open-meteo-card .search-input { + padding: 8px 12px; + border: var(--global_widget_border_alt); + border-radius: 0; + background-color: var(--widget_bg_alt); + color: var(--text); + font-size: 14px; +} +.open-meteo-card .search-input:focus { + border: var(--global_widget_border_alt); + background-color: var(--widget_bg_alt); +} +.open-meteo-card .search-results { + border: var(--global_widget_border_alt); + border-radius: 0; + background-color: var(--widget_bg_alt); + color: var(--text); + font-size: 13px; +} +.open-meteo-card .search-results::item { + padding: 4px; + border: 0; + border-radius: 0; +} +.open-meteo-card .search-results::item:hover { + background: transparent; + color: var(--text_hover); } /* Lines-Separator */ @@ -670,11 +853,6 @@ For more information about configuration options, please visit their documentati margin: 0; } -/* Start Menu */ -.start-menu-widget .widget-container .label { - color: var(--text); -} - /* Border Fixes */ QPushButton { outline: none; @@ -684,7 +862,7 @@ QPushButton { /* Tooltip */ .tooltip { background-color: var(--tooltip_color); - border: 1px solid var(--global_widget_border); + border: var(--global_widget_border); border-radius: 0px; color: var(--text); padding: 4px 8px; From 8c8a8909e18e81b1f32d4c939267a4bcec526e5d Mon Sep 17 00:00:00 2001 From: Louis047 Date: Tue, 24 Feb 2026 22:41:54 +0530 Subject: [PATCH 2/2] icon support for active_window --- themes/43cef139-7c16-4cd2-904f-7b0aa82cc7d3/config.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/themes/43cef139-7c16-4cd2-904f-7b0aa82cc7d3/config.yaml b/themes/43cef139-7c16-4cd2-904f-7b0aa82cc7d3/config.yaml index 2c4d7da..7eda61f 100644 --- a/themes/43cef139-7c16-4cd2-904f-7b0aa82cc7d3/config.yaml +++ b/themes/43cef139-7c16-4cd2-904f-7b0aa82cc7d3/config.yaml @@ -495,8 +495,8 @@ widgets: label: "{win[app_name]}" label_no_window: "" label_alt: "{win[process]}" - label_icon: False - label_icon_size: 14 + label_icon: True + label_icon_size: 12 max_length: 75 max_length_ellipsis: "" monitor_exclusive: False