From b40ba3bbabc62f932359993548d10a31a4dc999a Mon Sep 17 00:00:00 2001 From: redbeard0531 Date: Tue, 25 Mar 2008 05:04:12 +0100 Subject: focusedHasProperty darcs-hash:20080325040412-c935a-a165c9d60780822b78ad984fa1a8514d5f64c12b.gz --- XMonad/Util/WindowProperties.hs | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'XMonad/Util/WindowProperties.hs') diff --git a/XMonad/Util/WindowProperties.hs b/XMonad/Util/WindowProperties.hs index eb7539c..b1d0055 100644 --- a/XMonad/Util/WindowProperties.hs +++ b/XMonad/Util/WindowProperties.hs @@ -14,9 +14,10 @@ module XMonad.Util.WindowProperties ( -- * Usage -- $usage - Property(..), hasProperty) + Property(..), hasProperty, focusedHasProperty) where import XMonad +import qualified XMonad.StackSet as W -- $usage -- This module allows to specify window properties, such as title, classname or @@ -47,3 +48,12 @@ hasProperty (Or p1 p2) w = do { r1 <- hasProperty p1 w; r2 <- hasProperty p2 hasProperty (Not p1) w = do { r1 <- hasProperty p1 w; return $ not r1 } hasProperty (Const b) _ = return b +-- | Does the focused window have this property? +focusedHasProperty :: Property -> X Bool +focusedHasProperty p = do + ws <- gets windowset + let ms = W.stack $ W.workspace $ W.current ws + case ms of + Just s -> hasProperty p $ W.focus s + Nothing -> return False + -- cgit v1.2.3