diff options
author | Matthias Schiffer <mschiffer@universe-factory.net> | 2011-08-29 15:34:56 +0200 |
---|---|---|
committer | Matthias Schiffer <mschiffer@universe-factory.net> | 2011-08-29 15:34:56 +0200 |
commit | eca887df7c5e71606e6e0f80d48067e1ebdf5159 (patch) | |
tree | 430237ce8d77ab4722a45ed24a5682438cc2f7e7 /lib/Phi/Widgets/Systray.hs | |
parent | 7a87ba6f2e3e864fb1c487c097e2cf17bfca2df6 (diff) | |
download | phi-eca887df7c5e71606e6e0f80d48067e1ebdf5159.tar phi-eca887df7c5e71606e6e0f80d48067e1ebdf5159.zip |
Don't use the widget definition as a part of the render cache state
Diffstat (limited to 'lib/Phi/Widgets/Systray.hs')
-rw-r--r-- | lib/Phi/Widgets/Systray.hs | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/lib/Phi/Widgets/Systray.hs b/lib/Phi/Widgets/Systray.hs index c419426..27a5e34 100644 --- a/lib/Phi/Widgets/Systray.hs +++ b/lib/Phi/Widgets/Systray.hs @@ -48,14 +48,14 @@ data SystrayMessage = AddIcon !Window !Window | RemoveIcon !Window | RenderIcon deriving (Show, Typeable) -instance Widget Systray SystrayState (RenderCache Systray SystrayState) where +instance Widget Systray SystrayState (RenderCache SystrayState) where initWidget (Systray) phi dispvar screens = do phi' <- dupPhi phi forkIO $ systrayRunner phi' dispvar $ snd . head $ screens return $ SystrayState phi (fst . head $ screens) 0 [] - initCache _ = createRenderCache $ \Systray (SystrayState phi systrayScreen reset icons) x y w h screen -> do + initCache _ = createRenderCache $ \(SystrayState phi systrayScreen reset icons) x y w h screen -> do when (screen == systrayScreen) $ do forM_ (zip [0..] icons) $ \(i, SystrayIconState midParent window) -> do let x' = x + i*(h+2) @@ -70,7 +70,7 @@ instance Widget Systray SystrayState (RenderCache Systray SystrayState) where weight _ = 0 - render = renderCached + render _ = renderCached handleMessage _ priv@(SystrayState phi screen reset icons) m = case (fromMessage m) of |