From 1b4480ac3a160a06d2bd4fb4dd7b404792833a70 Mon Sep 17 00:00:00 2001 From: ndwarshuis Date: Sun, 1 Jan 2023 18:33:02 -0500 Subject: [PATCH] REF rename a bunch of stuff --- bin/xmobar.hs | 2 +- bin/xmonad.hs | 2 +- lib/Data/Internal/{Dependency.hs => XIO.hs} | 25 ++++++++++--------- lib/XMonad/Internal/Command/DMenu.hs | 2 +- lib/XMonad/Internal/Command/Desktop.hs | 2 +- lib/XMonad/Internal/Command/Power.hs | 2 +- lib/XMonad/Internal/Concurrent/ACPIEvent.hs | 2 +- .../Internal/Concurrent/DynamicWorkspaces.hs | 23 +++++++++-------- lib/XMonad/Internal/Concurrent/VirtualBox.hs | 2 +- .../Internal/DBus/Brightness/ClevoKeyboard.hs | 2 +- lib/XMonad/Internal/DBus/Brightness/Common.hs | 2 +- .../DBus/Brightness/IntelBacklight.hs | 2 +- lib/XMonad/Internal/DBus/Control.hs | 2 +- lib/XMonad/Internal/DBus/Removable.hs | 2 +- lib/XMonad/Internal/DBus/Screensaver.hs | 2 +- lib/Xmobar/Plugins/Bluetooth.hs | 2 +- lib/Xmobar/Plugins/Device.hs | 2 +- lib/Xmobar/Plugins/VPN.hs | 2 +- 18 files changed, 41 insertions(+), 39 deletions(-) rename lib/Data/Internal/{Dependency.hs => XIO.hs} (98%) diff --git a/bin/xmobar.hs b/bin/xmobar.hs index ac6292d..ae5c4d8 100644 --- a/bin/xmobar.hs +++ b/bin/xmobar.hs @@ -12,7 +12,7 @@ module Main (main) where import Data.Internal.DBus -import Data.Internal.Dependency +import Data.Internal.XIO import Options.Applicative import RIO hiding (hFlush) import qualified RIO.ByteString.Lazy as BL diff --git a/bin/xmonad.hs b/bin/xmonad.hs index e1708bc..841e29a 100644 --- a/bin/xmonad.hs +++ b/bin/xmonad.hs @@ -10,7 +10,7 @@ module Main (main) where import Data.Internal.DBus -import Data.Internal.Dependency +import Data.Internal.XIO import Data.Monoid import Data.Text.IO (hPutStrLn) import Graphics.X11.Types diff --git a/lib/Data/Internal/Dependency.hs b/lib/Data/Internal/XIO.hs similarity index 98% rename from lib/Data/Internal/Dependency.hs rename to lib/Data/Internal/XIO.hs index 68a60c4..27dfe29 100644 --- a/lib/Data/Internal/Dependency.hs +++ b/lib/Data/Internal/XIO.hs @@ -8,7 +8,7 @@ -------------------------------------------------------------------------------- -- Functions for handling dependencies -module Data.Internal.Dependency +module Data.Internal.XIO -- feature types ( Feature , Always (..) @@ -26,6 +26,7 @@ module Data.Internal.Dependency , SubfeatureRoot , Msg (..) -- configuration + , XEnv (..) , XParams (..) , XPFeatures (..) , XPQuery @@ -134,7 +135,7 @@ runXIO x = do pc <- mkDefaultProcessContext withLogFunc logOpts $ \f -> do p <- getParams - let s = DepStage f pc p + let s = XEnv f pc p runRIO s x -- | Execute an Always immediately @@ -377,19 +378,19 @@ data PostFail = PostFail [Msg] | PostMissing Msg -------------------------------------------------------------------------------- -- Configuration -type XIO a = RIO DepStage a +type XIO a = RIO XEnv a -data DepStage = DepStage - { dsLogFun :: !LogFunc - , dsProcCxt :: !ProcessContext - , dsParams :: !XParams +data XEnv = XEnv + { xLogFun :: !LogFunc + , xProcCxt :: !ProcessContext + , xParams :: !XParams } -instance HasLogFunc DepStage where - logFuncL = lens dsLogFun (\x y -> x {dsLogFun = y}) +instance HasLogFunc XEnv where + logFuncL = lens xLogFun (\x y -> x {xLogFun = y}) -instance HasProcessContext DepStage where - processContextL = lens dsProcCxt (\x y -> x {dsProcCxt = y}) +instance HasProcessContext XEnv where + processContextL = lens xProcCxt (\x y -> x {xProcCxt = y}) data XParams = XParams { xpLogLevel :: LogLevel @@ -510,7 +511,7 @@ infix 9 .:+ evalSometimesMsg :: Sometimes a -> XIO (Either [FMsg] (a, [FMsg])) evalSometimesMsg (Sometimes n u xs) = do - r <- asks (u . xpFeatures . dsParams) + r <- asks (u . xpFeatures . xParams) if not r then return $ Left [dis n] else do diff --git a/lib/XMonad/Internal/Command/DMenu.hs b/lib/XMonad/Internal/Command/DMenu.hs index 710d15c..2614feb 100644 --- a/lib/XMonad/Internal/Command/DMenu.hs +++ b/lib/XMonad/Internal/Command/DMenu.hs @@ -20,7 +20,7 @@ where import DBus import Data.Internal.DBus -import Data.Internal.Dependency +import Data.Internal.XIO import Graphics.X11.Types import RIO.Directory ( XdgDirectory (..) diff --git a/lib/XMonad/Internal/Command/Desktop.hs b/lib/XMonad/Internal/Command/Desktop.hs index 1aef07a..0ed6eae 100644 --- a/lib/XMonad/Internal/Command/Desktop.hs +++ b/lib/XMonad/Internal/Command/Desktop.hs @@ -41,7 +41,7 @@ where import DBus import Data.Internal.DBus -import Data.Internal.Dependency +import Data.Internal.XIO import RIO import RIO.Directory import RIO.FilePath diff --git a/lib/XMonad/Internal/Command/Power.hs b/lib/XMonad/Internal/Command/Power.hs index adc5477..125030c 100644 --- a/lib/XMonad/Internal/Command/Power.hs +++ b/lib/XMonad/Internal/Command/Power.hs @@ -26,7 +26,7 @@ module XMonad.Internal.Command.Power ) where -import Data.Internal.Dependency +import Data.Internal.XIO import Graphics.X11.Types import RIO import RIO.Directory diff --git a/lib/XMonad/Internal/Concurrent/ACPIEvent.hs b/lib/XMonad/Internal/Concurrent/ACPIEvent.hs index d32edee..756dd33 100644 --- a/lib/XMonad/Internal/Concurrent/ACPIEvent.hs +++ b/lib/XMonad/Internal/Concurrent/ACPIEvent.hs @@ -10,7 +10,7 @@ module XMonad.Internal.Concurrent.ACPIEvent ) where -import Data.Internal.Dependency +import Data.Internal.XIO import Network.Socket import Network.Socket.ByteString import RIO diff --git a/lib/XMonad/Internal/Concurrent/DynamicWorkspaces.hs b/lib/XMonad/Internal/Concurrent/DynamicWorkspaces.hs index 6a64909..e61b263 100644 --- a/lib/XMonad/Internal/Concurrent/DynamicWorkspaces.hs +++ b/lib/XMonad/Internal/Concurrent/DynamicWorkspaces.hs @@ -88,13 +88,14 @@ data DynWorkspace = DynWorkspace -- the same as that in XMonad itself (eg with Query types) -- type MatchTags = M.Map String String -data WConf = WConf - { display :: Display - , dynWorkspaces :: [DynWorkspace] - , curPIDs :: MVar (S.Set Pid) +data WEnv = WEnv + { wDisplay :: !Display + , wDynWorkspaces :: ![DynWorkspace] + , wCurPIDs :: !(MVar (S.Set Pid)) + -- , wXEnv :: !XEnv } -type W a = RIO WConf () +type WIO a = RIO WEnv a runWorkspaceMon :: [DynWorkspace] -> IO () runWorkspaceMon dws = withOpenDisplay $ \dpy -> do @@ -107,19 +108,19 @@ runWorkspaceMon dws = withOpenDisplay $ \dpy -> do where withEvents dpy e = do ps <- newMVar S.empty - let c = WConf {display = dpy, dynWorkspaces = dws, curPIDs = ps} + let c = WEnv {wDisplay = dpy, wDynWorkspaces = dws, wCurPIDs = ps} runRIO c $ forever $ handleEvent =<< io (nextEvent dpy e >> getEvent e) -handleEvent :: Event -> W () +handleEvent :: Event -> WIO () -- | assume this fires at least once when a new window is created (also could -- use CreateNotify but that is really noisy) handleEvent MapNotifyEvent {ev_window = w} = do - dpy <- asks display + dpy <- asks wDisplay hint <- io $ getClassHint dpy w - dws <- asks dynWorkspaces + dws <- asks wDynWorkspaces let tag = M.lookup (resClass hint) $ M.fromList $ @@ -133,9 +134,9 @@ handleEvent MapNotifyEvent {ev_window = w} = do _ -> return () handleEvent _ = return () -withUniquePid :: Pid -> String -> W () +withUniquePid :: Pid -> String -> WIO () withUniquePid pid tag = do - ps <- asks curPIDs + ps <- asks wCurPIDs pids <- readMVar ps io $ unless (pid `elem` pids) diff --git a/lib/XMonad/Internal/Concurrent/VirtualBox.hs b/lib/XMonad/Internal/Concurrent/VirtualBox.hs index 6940e60..5997478 100644 --- a/lib/XMonad/Internal/Concurrent/VirtualBox.hs +++ b/lib/XMonad/Internal/Concurrent/VirtualBox.hs @@ -11,7 +11,7 @@ module XMonad.Internal.Concurrent.VirtualBox ) where -import Data.Internal.Dependency +import Data.Internal.XIO import RIO hiding (try) import RIO.Directory import RIO.FilePath diff --git a/lib/XMonad/Internal/DBus/Brightness/ClevoKeyboard.hs b/lib/XMonad/Internal/DBus/Brightness/ClevoKeyboard.hs index 7ca50d1..e2776d5 100644 --- a/lib/XMonad/Internal/DBus/Brightness/ClevoKeyboard.hs +++ b/lib/XMonad/Internal/DBus/Brightness/ClevoKeyboard.hs @@ -15,7 +15,7 @@ where import DBus import Data.Internal.DBus -import Data.Internal.Dependency +import Data.Internal.XIO import RIO import RIO.FilePath import XMonad.Internal.DBus.Brightness.Common diff --git a/lib/XMonad/Internal/DBus/Brightness/Common.hs b/lib/XMonad/Internal/DBus/Brightness/Common.hs index 4c91b75..731c3b2 100644 --- a/lib/XMonad/Internal/DBus/Brightness/Common.hs +++ b/lib/XMonad/Internal/DBus/Brightness/Common.hs @@ -18,7 +18,7 @@ import DBus import DBus.Client import qualified DBus.Introspection as I import Data.Internal.DBus -import Data.Internal.Dependency +import Data.Internal.XIO import RIO import qualified RIO.Text as T import XMonad.Core (io) diff --git a/lib/XMonad/Internal/DBus/Brightness/IntelBacklight.hs b/lib/XMonad/Internal/DBus/Brightness/IntelBacklight.hs index 9b15321..7a4b89d 100644 --- a/lib/XMonad/Internal/DBus/Brightness/IntelBacklight.hs +++ b/lib/XMonad/Internal/DBus/Brightness/IntelBacklight.hs @@ -15,7 +15,7 @@ where import DBus import Data.Internal.DBus -import Data.Internal.Dependency +import Data.Internal.XIO import RIO import RIO.FilePath import XMonad.Internal.DBus.Brightness.Common diff --git a/lib/XMonad/Internal/DBus/Control.hs b/lib/XMonad/Internal/DBus/Control.hs index 846c13d..a2c573b 100644 --- a/lib/XMonad/Internal/DBus/Control.hs +++ b/lib/XMonad/Internal/DBus/Control.hs @@ -27,7 +27,7 @@ where import DBus import DBus.Client import Data.Internal.DBus -import Data.Internal.Dependency +import Data.Internal.XIO import RIO import qualified RIO.Text as T import XMonad.Internal.DBus.Brightness.ClevoKeyboard diff --git a/lib/XMonad/Internal/DBus/Removable.hs b/lib/XMonad/Internal/DBus/Removable.hs index e338f05..ab58373 100644 --- a/lib/XMonad/Internal/DBus/Removable.hs +++ b/lib/XMonad/Internal/DBus/Removable.hs @@ -11,7 +11,7 @@ module XMonad.Internal.DBus.Removable (runRemovableMon) where import DBus import DBus.Client import Data.Internal.DBus -import Data.Internal.Dependency +import Data.Internal.XIO import RIO import qualified RIO.Map as M import XMonad.Core (io) diff --git a/lib/XMonad/Internal/DBus/Screensaver.hs b/lib/XMonad/Internal/DBus/Screensaver.hs index 8d385d6..bb72129 100644 --- a/lib/XMonad/Internal/DBus/Screensaver.hs +++ b/lib/XMonad/Internal/DBus/Screensaver.hs @@ -16,7 +16,7 @@ import DBus import DBus.Client import qualified DBus.Introspection as I import Data.Internal.DBus -import Data.Internal.Dependency +import Data.Internal.XIO import Graphics.X11.XScreenSaver import RIO import XMonad.Internal.DBus.Common diff --git a/lib/Xmobar/Plugins/Bluetooth.hs b/lib/Xmobar/Plugins/Bluetooth.hs index 9886c32..2c74586 100644 --- a/lib/Xmobar/Plugins/Bluetooth.hs +++ b/lib/Xmobar/Plugins/Bluetooth.hs @@ -42,7 +42,7 @@ where import DBus import DBus.Client import Data.Internal.DBus -import Data.Internal.Dependency +import Data.Internal.XIO import RIO import RIO.FilePath import RIO.List diff --git a/lib/Xmobar/Plugins/Device.hs b/lib/Xmobar/Plugins/Device.hs index 9cc7ba1..967e5dd 100644 --- a/lib/Xmobar/Plugins/Device.hs +++ b/lib/Xmobar/Plugins/Device.hs @@ -14,7 +14,7 @@ where import DBus import Data.Internal.DBus -import Data.Internal.Dependency +import Data.Internal.XIO import RIO import qualified RIO.Text as T import XMonad.Internal.Command.Desktop diff --git a/lib/Xmobar/Plugins/VPN.hs b/lib/Xmobar/Plugins/VPN.hs index e4be4d5..0550479 100644 --- a/lib/Xmobar/Plugins/VPN.hs +++ b/lib/Xmobar/Plugins/VPN.hs @@ -16,7 +16,7 @@ where import DBus import Data.Internal.DBus -import Data.Internal.Dependency +import Data.Internal.XIO import RIO import qualified RIO.Map as M import qualified RIO.Set as S