aboutsummaryrefslogtreecommitdiff
path: root/src/Wetterhorn/Core/Keys.hs
Commit message (Collapse)AuthorAge
* Implementing button presses and integrating it with the KeysM monad.Josh Rahm2024-03-19
|
* Higher fidelity for extensible state.Josh Rahm2024-03-19
|
* Add extensible state and macros. Fix some bugs with keys.Josh Rahm2024-03-19
|
* Change KeysM to use a ContT monad instead of rolling my own.Josh Rahm2024-03-19
| | | | | Turns out the haskell geniuses already figured out how to encapsulate such asynchronous control flow.
* Implement ability to customize the keys "putHandler" functionality.Josh Rahm2024-03-15
| | | | | This will be useful for the future when I will implement macro-recording functionality.
* Have Wetterhorn keep track of the windows.Josh Rahm2024-03-15
|
* More flexing with the new keysM system.Josh Rahm2024-03-05
|
* Better KeysM implementation and functions.Josh Rahm2024-03-05
| | | | This is making better key bindings possible and awesome!
* Added a new KeysM monad.Josh Rahm2024-03-04
This monad allows keybindings to look and feel like one is writing blocking code with constructs like: key <- nextKey when (key == x) $ do key2 <- nextKey ... ... but this code does not block or do any io shenanigans, it under the hood just changes the handler on the state. It seems pretty awesome and opens the doors for some pretty expressive key bindings.