taffybar: restore SNI tray; name wayland widgets hyprland

This commit is contained in:
2026-02-06 14:24:45 -08:00
committed by Kat Huang
parent ac4fa3b189
commit 151a886b7a

View File

@@ -19,7 +19,6 @@ import qualified GI.GdkPixbuf.Objects.Pixbuf as Gdk
import qualified GI.Gtk as Gtk import qualified GI.Gtk as Gtk
import qualified GI.Gtk.Objects.Overlay as Gtk import qualified GI.Gtk.Objects.Overlay as Gtk
import Network.HostName import Network.HostName
import StatusNotifier.Tray
import System.Directory import System.Directory
import System.Environment import System.Environment
import System.Environment.XDG.BaseDir import System.Environment.XDG.BaseDir
@@ -45,6 +44,10 @@ import System.Taffybar.Widget.Generic.PollingGraph
import System.Taffybar.Widget.Generic.PollingLabel import System.Taffybar.Widget.Generic.PollingLabel
import qualified System.Taffybar.Widget.NetworkManager as NetworkManager import qualified System.Taffybar.Widget.NetworkManager as NetworkManager
import qualified System.Taffybar.Widget.PulseAudio as PulseAudio import qualified System.Taffybar.Widget.PulseAudio as PulseAudio
import System.Taffybar.Widget.SNITray
( sniTrayNew
, sniTrayThatStartsWatcherEvenThoughThisIsABadWayToDoIt
)
import System.Taffybar.Widget.Util import System.Taffybar.Widget.Util
import qualified System.Taffybar.Widget.HyprlandWorkspaces as Hyprland import qualified System.Taffybar.Widget.HyprlandWorkspaces as Hyprland
import qualified System.Taffybar.Widget.Workspaces as X11Workspaces import qualified System.Taffybar.Widget.Workspaces as X11Workspaces
@@ -356,12 +359,19 @@ main = do
myBatteryText = myBatteryText =
deocrateWithSetClassAndBoxes "battery-text" $ textBatteryNew "$percentage$%" deocrateWithSetClassAndBoxes "battery-text" $ textBatteryNew "$percentage$%"
batteryWidgets = [ myBatteryIcon, myBatteryText ] batteryWidgets = [ myBatteryIcon, myBatteryText ]
baseEndWidgets = [ myAudio, myNetwork, myMpris ] mySNITray = deocrateWithSetClassAndBoxes "sni-tray" $
case backend of
BackendWayland -> sniTrayThatStartsWatcherEvenThoughThisIsABadWayToDoIt
BackendX11 -> sniTrayNew
baseEndWidgets = [ myAudio, myNetwork, myMpris, mySNITray ]
laptopEndWidgets = batteryWidgets ++ baseEndWidgets laptopEndWidgets = batteryWidgets ++ baseEndWidgets
x11StartWidgets = [ myWorkspaces, myLayout, myWindows ]
hyprlandStartWidgets = [ myHyprWorkspaces ]
startWidgetsForBackend = startWidgetsForBackend =
case backend of case backend of
BackendX11 -> [ myWorkspaces, myLayout, myWindows ] BackendX11 -> x11StartWidgets
BackendWayland -> [ myHyprWorkspaces ] -- These Wayland widgets are Hyprland-specific.
BackendWayland -> hyprlandStartWidgets
baseConfig = baseConfig =
defaultSimpleTaffyConfig defaultSimpleTaffyConfig
{ startWidgets = startWidgetsForBackend { startWidgets = startWidgetsForBackend