packages feed

taffybar 7.0.0 → 7.0.1

raw patch · 6 files changed

+47/−13 lines, 6 filesdep ~gtk-sni-traydep ~status-notifier-itemPVP ok

version bump matches the API change (PVP)

Dependency ranges changed: gtk-sni-tray, status-notifier-item

API changes (from Hackage documentation)

Files

CHANGELOG.md view
@@ -1,5 +1,24 @@ # Unreleased +## Refactors++* Decouple layout and workspace/window information providers from widget+  rendering, and move shared workspace/window support helpers out of widget+  modules.++# 7.0.1++## Tray++* Avoid prioritized-collapsible tray rebuilds for overlay-icon, tooltip, and+  status-only updates that do not affect visible tray content.++## Packaging++* Require `gtk-sni-tray >= 0.2.1.1` and `status-notifier-item >= 0.3.2.13`+  so tray consumers pick up the host-side suppression of redundant no-op+  property update churn.+ # 7.0.0  ## Breaking Changes@@ -764,4 +783,4 @@   * Readable widget for freedesktop notifications  * Fixed a few potential deadlocks on startup- * Use the GTK+ rc-file styling system for colors instead of hard coding them+ * Use the GTK+ rc-file styling system for colors instead
src/System/Taffybar/Widget/HyprlandLayout.hs view
@@ -35,8 +35,7 @@ import System.Log.Logger (Priority (..)) import System.Taffybar.Context import System.Taffybar.Hyprland-  ( runHyprlandCommandJsonT,-    runHyprlandCommandRawT,+  ( runHyprlandCommandRawT,   ) import qualified System.Taffybar.Information.Hyprland as Hypr import System.Taffybar.Information.Layout.Hyprland
src/System/Taffybar/Widget/SNITray/PrioritizedCollapsible.hs view
@@ -966,7 +966,11 @@           case updateType of             H.ItemAdded -> scheduleRefresh True True updateType             H.ItemRemoved -> scheduleRefresh True True updateType-            _ -> scheduleRefresh False False updateType+            H.IconUpdated -> scheduleRefresh False False updateType+            H.TitleUpdated -> scheduleRefresh False False updateType+            H.OverlayIconUpdated -> return ()+            H.ToolTipUpdated -> return ()+            H.StatusUpdated -> return ()          installUpdateHandler = do           maybeHandlerId <- readIORef updateHandlerRef
src/System/Taffybar/Widget/Workspaces.hs view
@@ -56,12 +56,11 @@ import qualified Data.Map.Strict as M import qualified Data.Text as T import Data.Word (Word64)+import Data.Int (Int32) import qualified GI.Gdk.Enums as Gdk import qualified GI.Gdk.Structs.EventScroll as Gdk import qualified GI.GdkPixbuf.Objects.Pixbuf as Gdk import qualified GI.Gtk as Gtk-import Data.Int (Int32)-import System.Log.Logger (Priority (..), logM) import System.Taffybar.Context (Backend (..), TaffyIO, backend) import System.Taffybar.Information.EWMHDesktopInfo   ( ewmhWMIcon,@@ -577,7 +576,3 @@         WorkspaceVisible -> Visible         WorkspaceHidden -> Hidden         WorkspaceEmpty -> Empty--wLog :: Priority -> String -> TaffyIO ()-wLog level message =-  liftIO $ logM "System.Taffybar.Widget.Workspaces" level message
taffybar.cabal view
@@ -1,6 +1,6 @@ cabal-version: 3.4 name: taffybar-version: 7.0.0+version: 7.0.1 synopsis: A desktop bar similar to xmobar, but with more GUI license: BSD-3-Clause license-file: LICENSE@@ -87,7 +87,7 @@                , gi-gtk-hs >= 0.3.17 && < 0.4                , gi-pango                , gtk-scaling-image >= 0.1.0.0 && < 0.2-               , gtk-sni-tray >= 0.2.1.0+               , gtk-sni-tray >= 0.2.1.1                , gtk-strut >= 0.1.4.0                , haskell-gi-base >= 0.24                , hslogger@@ -104,7 +104,7 @@                , safe >= 0.3 && < 1                , scotty >= 0.20 && < 0.31                , split >= 0.1.4.2-               , status-notifier-item >= 0.3.2.11+               , status-notifier-item >= 0.3.2.13                , stm                , template-haskell                , text@@ -374,6 +374,7 @@                , System.Taffybar.ContextSpec                , System.Taffybar.Information.CryptoSpec                , System.Taffybar.Information.LayoutSpec+               , System.Taffybar.Information.Workspaces.EWMHSpec                , System.Taffybar.Information.X11DesktopInfoSpec                , System.Taffybar.Information.WakeupSpec                , System.Taffybar.SimpleConfigSpec
+ test/unit/System/Taffybar/Information/Workspaces/EWMHSpec.hs view
@@ -0,0 +1,16 @@+module System.Taffybar.Information.Workspaces.EWMHSpec (spec) where++import Data.List (elem)+import System.Taffybar.Information.Workspaces.EWMH+  ( defaultEWMHWorkspaceProviderConfig,+    workspaceUpdateEvents,+  )+import System.Taffybar.Information.X11DesktopInfo (xmonadVisibleWorkspaces)+import Test.Hspec++spec :: Spec+spec =+  describe "defaultEWMHWorkspaceProviderConfig" $+    it "subscribes to xmonad visible workspace updates" $+      xmonadVisibleWorkspaces `elem` workspaceUpdateEvents defaultEWMHWorkspaceProviderConfig+        `shouldBe` True