Safe Haskell | None |
---|
Miscellaneous low-level functions. You should rarely need to use these directly.
- newtype Robot a = Robot {}
- runRobot :: Robot a -> IO a
- runRobotWithConnection :: Robot a -> Connection -> IO a
- mkRobot :: ((Connection, Map KEYSYM KEYCODE) -> IO a) -> Robot a
- mkRobot' :: (Connection -> IO a) -> Robot a
- bracketRobot_ :: Robot a -> Robot z -> Robot r -> Robot r
- keyboard :: Bool -> Key -> Robot ()
- button :: Bool -> Button -> Robot ()
- motion :: Bool -> Int -> Int -> Robot ()
- releaseAll :: Robot ()
The Robot monad
The Robot monad: a reader monad over IO.
runRobotWithConnection :: Robot a -> Connection -> IO aSource
Run the robot using an existing connection.
mkRobot' :: (Connection -> IO a) -> Robot aSource
Exception safety
Synthesizing events
releaseAll :: Robot ()Source
Release all the keys and buttons, in case some were left held down.
This is called automatically before runRobot
returns.