mirror of
https://github.com/xmonad/xmonad-contrib.git
synced 2025-05-19 03:20:21 -07:00
Use U.XUtils.fi to make WindowMenu clearer
This commit is contained in:
parent
77f52bc84d
commit
27a7bcbd6e
@ -25,6 +25,7 @@ import qualified XMonad.StackSet as W
|
|||||||
import XMonad.Actions.GridSelect
|
import XMonad.Actions.GridSelect
|
||||||
import XMonad.Layout.Maximize
|
import XMonad.Layout.Maximize
|
||||||
import XMonad.Layout.Minimize
|
import XMonad.Layout.Minimize
|
||||||
|
import XMonad.Util.XUtils (fi)
|
||||||
|
|
||||||
-- $usage
|
-- $usage
|
||||||
--
|
--
|
||||||
@ -47,14 +48,12 @@ windowMenu = withFocused $ \w -> do
|
|||||||
tags <- asks (workspaces . config)
|
tags <- asks (workspaces . config)
|
||||||
Rectangle x y wh ht <- getSize w
|
Rectangle x y wh ht <- getSize w
|
||||||
Rectangle sx sy swh sht <- gets $ screenRect . W.screenDetail . W.current . windowset
|
Rectangle sx sy swh sht <- gets $ screenRect . W.screenDetail . W.current . windowset
|
||||||
let originFractX = (fromIntegral x - fromIntegral sx + (fromIntegral wh / 2))
|
let originFractX = (fi x - fi sx + fi wh / 2) / fi swh
|
||||||
/ fromIntegral swh
|
originFractY = (fi y - fi sy + fi ht / 2) / fi sht
|
||||||
originFractY = (fromIntegral y -fromIntegral sy + (fromIntegral ht / 2))
|
|
||||||
/ fromIntegral sht
|
|
||||||
colorizer = simpleColorizer nBC fBC
|
colorizer = simpleColorizer nBC fBC
|
||||||
gsConfig = buildDefaultGSConfig colorizer
|
gsConfig = (buildDefaultGSConfig colorizer)
|
||||||
gsConfig' = gsConfig { gs_originFractX = originFractX,
|
{ gs_originFractX = originFractX
|
||||||
gs_originFractY = originFractY }
|
, gs_originFractY = originFractY }
|
||||||
actions = [ ("Cancel menu", return ())
|
actions = [ ("Cancel menu", return ())
|
||||||
, ("Close" , kill)
|
, ("Close" , kill)
|
||||||
, ("Maximize" , sendMessage $ maximizeRestore w)
|
, ("Maximize" , sendMessage $ maximizeRestore w)
|
||||||
@ -62,14 +61,14 @@ windowMenu = withFocused $ \w -> do
|
|||||||
] ++
|
] ++
|
||||||
[ ("Move to " ++ tag, windows $ W.shift tag)
|
[ ("Move to " ++ tag, windows $ W.shift tag)
|
||||||
| tag <- tags ]
|
| tag <- tags ]
|
||||||
runSelectedAction gsConfig' actions
|
runSelectedAction gsConfig actions
|
||||||
|
|
||||||
getSize :: Window -> X (Rectangle)
|
getSize :: Window -> X (Rectangle)
|
||||||
getSize w = do
|
getSize w = do
|
||||||
d <- asks display
|
d <- asks display
|
||||||
wa <- io $ getWindowAttributes d w
|
wa <- io $ getWindowAttributes d w
|
||||||
let x = fromIntegral $ wa_x wa
|
let x = fi $ wa_x wa
|
||||||
y = fromIntegral $ wa_y wa
|
y = fi $ wa_y wa
|
||||||
wh = fromIntegral $ wa_width wa
|
wh = fi $ wa_width wa
|
||||||
ht = fromIntegral $ wa_height wa
|
ht = fi $ wa_height wa
|
||||||
return (Rectangle x y wh ht)
|
return (Rectangle x y wh ht)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user