From 1a23a4528335e28a1c834e57f773b7b36e34d999 Mon Sep 17 00:00:00 2001 From: Anthony Rodriguez Date: Wed, 12 Feb 2025 17:02:27 +0100 Subject: [PATCH] feat: polish base bar Simplify the example design and popovers. --- style.scss | 50 +++++++++++++----------- widget/Bar.tsx | 62 +++++++++++++++++++++++++----- widget/Popover.tsx | 88 +++++++++++++++++++++++++++++++++++++++++++ widget/Workspaces.tsx | 22 ----------- 4 files changed, 169 insertions(+), 53 deletions(-) create mode 100644 widget/Popover.tsx diff --git a/style.scss b/style.scss index 29c8937..9171159 100644 --- a/style.scss +++ b/style.scss @@ -9,34 +9,25 @@ $bg: #{"@window_bg_color"}; $fg: #{"@window_fg_color"}; $accent: #{"@accent_color"}; -$radius: 7px; -window.Bar { +.Bar { border: none; box-shadow: none; background-color: $bg; color: $fg; - font-size: 1.2em; - padding: 0.5em 0; + font-size: 16px; + padding: 0.5rem; - centerbox { - min-height: 2.5em; - } .Workspaces { button { all: unset; - min-width: 1.1rem; - min-height: 1.1rem; - background-color: transparent; - border-radius: 50%; - + min-width: 0.9rem; + min-height: 0.9rem; border: 2px solid $fg; - margin: 0.25rem 0.3rem; - - &:hover { - border-color: gtkalpha($accent, 0.6); - } + border-radius: 50%; + margin: 0em 0.3rem; } + .focused { border-color: $accent; background-color: $accent; @@ -44,13 +35,30 @@ window.Bar { } .Battery label { - padding-left: 0; margin-left: 0; } - .NotificationCenter { - &:hover { - background-color: gtkalpha($fg, 0.2); + .QuickSettings { + image { + -gtk-icon-size: 1.2em; + } + + menubutton box { + margin-right: 0.5em; + &:last-child { + margin-right: 0; + } } } + menubutton button { + background: transparent; + border-radius: 1em; + &:hover { + background-color: gtkalpha($fg, 0.1); + } + } + + popover { + margin-top: 0.5em; + } } diff --git a/widget/Bar.tsx b/widget/Bar.tsx index 2610068..b560406 100644 --- a/widget/Bar.tsx +++ b/widget/Bar.tsx @@ -1,9 +1,9 @@ -import { App, Astal, Gtk, Gdk } from "astal/gtk4"; +import { Astal, Gtk, Gdk } from "astal/gtk4"; import { Variable, GLib, bind } from "astal"; import Battery from "gi://AstalBattery"; import Wp from "gi://AstalWp"; import Network from "gi://AstalNetwork"; -import { Workspaces } from "./Workspaces"; +import Hyprland from "gi://AstalHyprland"; function Wifi() { const network = Network.get_default(); @@ -25,7 +25,7 @@ function Audio() { const speaker = Wp.get_default()?.audio.defaultSpeaker!; return ( - + ); @@ -51,10 +51,54 @@ function Time({ format = "%H:%M - %A %e." }) { ); return ( -