Correctly handle widgets with zero weight
This commit is contained in:
parent
022783f4a7
commit
ddca7c3ec5
1 changed files with 15 additions and 14 deletions
|
@ -30,7 +30,7 @@ import Phi.Phi
|
||||||
import qualified Phi.Types as Phi
|
import qualified Phi.Types as Phi
|
||||||
import qualified Phi.Panel as Panel
|
import qualified Phi.Panel as Panel
|
||||||
import qualified Phi.Widget as Widget
|
import qualified Phi.Widget as Widget
|
||||||
import Phi.Widget (Widget)
|
import Phi.Widget hiding (Display, handleMessage)
|
||||||
import Phi.X11.Atoms
|
import Phi.X11.Atoms
|
||||||
import qualified Phi.Bindings.Util as Util
|
import qualified Phi.Bindings.Util as Util
|
||||||
|
|
||||||
|
@ -110,10 +110,11 @@ runPhi xconfig config widget = do
|
||||||
dispmvar <- liftIO $ newMVar disp
|
dispmvar <- liftIO $ newMVar disp
|
||||||
let screenPanels = zip screens panelWindows
|
let screenPanels = zip screens panelWindows
|
||||||
dispvar = Widget.Display dispmvar atoms screenPanels
|
dispvar = Widget.Display dispmvar atoms screenPanels
|
||||||
widgetState <- liftIO $ Widget.initWidget widget phi dispvar
|
widget' = widget <~> separator 0 (if weight widget > 0 then 0 else 1)
|
||||||
|
widgetState <- liftIO $ Widget.initWidget widget' phi dispvar
|
||||||
|
|
||||||
Widget.withDisplay dispvar $ \disp -> do
|
Widget.withDisplay dispvar $ \disp -> do
|
||||||
panels <- mapM (\(screen, window) -> createPanel disp window widget widgetState screen) screenPanels
|
panels <- mapM (\(screen, window) -> createPanel disp window widget' widgetState screen) screenPanels
|
||||||
|
|
||||||
forM_ panels $ \panel -> do
|
forM_ panels $ \panel -> do
|
||||||
setPanelProperties disp panel
|
setPanelProperties disp panel
|
||||||
|
|
Reference in a new issue