ENH kinda generalize power prompts
This commit is contained in:
parent
1cf9e3e8bd
commit
12b68f7377
|
@ -69,16 +69,16 @@ runScreenLock =
|
|||
False
|
||||
myScreenlock
|
||||
|
||||
runPowerOff :: X ()
|
||||
runPowerOff :: MonadUnliftIO m => m ()
|
||||
runPowerOff = spawn "systemctl poweroff"
|
||||
|
||||
runSuspend :: X ()
|
||||
runSuspend :: MonadUnliftIO m => m ()
|
||||
runSuspend = spawn "systemctl suspend"
|
||||
|
||||
runHibernate :: X ()
|
||||
runHibernate :: MonadUnliftIO m => m ()
|
||||
runHibernate = spawn "systemctl hibernate"
|
||||
|
||||
runReboot :: X ()
|
||||
runReboot :: MonadUnliftIO m => m ()
|
||||
runReboot = spawn "systemctl reboot"
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
@ -106,7 +106,7 @@ confirmPrompt' :: T.Text -> X () -> XT.FontBuilder -> X ()
|
|||
confirmPrompt' s x fb = confirmPrompt (XT.promptTheme fb) (T.unpack s) x
|
||||
|
||||
suspendPrompt :: XT.FontBuilder -> X ()
|
||||
suspendPrompt = confirmPrompt' "suspend?" runSuspend
|
||||
suspendPrompt = confirmPrompt' "suspend?" $ liftIO runSuspend
|
||||
|
||||
quitPrompt :: XT.FontBuilder -> X ()
|
||||
quitPrompt = confirmPrompt' "quit?" $ io exitSuccess
|
||||
|
@ -224,7 +224,7 @@ powerPrompt lock fb = mkXPrompt PowerPrompt theme comp executeMaybeAction
|
|||
]
|
||||
sendMaybeAction a = setInput (show $ fromEnum a) >> setSuccess True >> setDone True
|
||||
executeMaybeAction a = case toEnum $ read a of
|
||||
Poweroff -> runPowerOff
|
||||
Shutdown -> lock >> runSuspend
|
||||
Hibernate -> lock >> runHibernate
|
||||
Reboot -> runReboot
|
||||
Poweroff -> liftIO runPowerOff
|
||||
Shutdown -> lock >> liftIO runSuspend
|
||||
Hibernate -> lock >> liftIO runHibernate
|
||||
Reboot -> liftIO runReboot
|
||||
|
|
Loading…
Reference in New Issue