| Commit message (Collapse) | Author | Age | |
|---|---|---|---|
| * | [reog] rename soul -> world.HEADmain | Josh Rahm | 2026-01-14 |
| | | | | | It makes a bit more sense. | ||
| * | [feat] add magic key for fake modifiers. | Josh Rahm | 2026-01-12 |
| | | |||
| * | [feat] Better abstractions for dragging and mouse buttons. | Josh Rahm | 2026-01-12 |
| | | |||
| * | [feat] add basic key binding DSL. | Josh Rahm | 2026-01-07 |
| | | |||
| * | [feat] add a basic Makefile which delegates to CMake. | Josh Rahm | 2026-01-07 |
| | | |||
| * | [rebrand] Arken -> Ark, Plugin -> Soul, Erebor -> Cross | Josh Rahm | 2026-01-07 |
| | | |||
| * | [reorg] use X macro system rather than perl generation. | Josh Rahm | 2026-01-06 |
| | | | | | This remove the dependency on Perl and makes things less brittle. | ||
| * | [reorg] add "middleware" library called "liberebor" | Josh Rahm | 2026-01-06 |
| | | |||
| * | [rebrand] to arken = runtime, montis = plugin | Josh Rahm | 2026-01-06 |
| | | |||
| * | [reog] Add separate Link.hs file. | Josh Rahm | 2026-01-05 |
| | | | | | | | This file is a sibling to the Config file. It just provides the cold/hot start bindings for the plugin. This keeps the Config file clean and doesn't pollute it with non-config ceremony. | ||
| * | [reorg] remove references to foreign_* outside the core. | Josh Rahm | 2026-01-05 |
| | | | | | Added Monadic counterparts that work better. | ||
| * | [fix] issue where dragging doesn't work on native. | Josh Rahm | 2026-01-05 |
| | | |||
| * | [feat] right-click drag to resize windows. | Josh Rahm | 2026-01-05 |
| | | |||
| * | [feat] add focusing and better dragging. | Josh Rahm | 2026-01-05 |
| | | |||
| * | [feat] Add Keys.hs, which provides a basic framework for adding keybindings. | Josh Rahm | 2026-01-05 |
| | | |||
| * | [feat] add ways to get and configure config extensions. | Josh Rahm | 2026-01-04 |
| | | |||
| * | [refactor] Change dragging behavior to use the motion event. | Josh Rahm | 2026-01-04 |
| | | |||
| * | [feat] can move the window around. | Josh Rahm | 2026-01-04 |
| | | |||
| * | [feat] Request that clients don't draw their decorations. | Josh Rahm | 2026-01-04 |
| | | |||
| * | [feat] add mouse motion hooks. | Josh Rahm | 2026-01-04 |
| | | | | | Added absolute mouse motion hooks. | ||
| * | [refactor] finish hooking together the plugin. It is now runnable. | Josh Rahm | 2026-01-04 |
| | | |||
| * | [wip] rewrite plugin to a more scalable architecture. | Josh Rahm | 2026-01-03 |
| | | |||
| * | [refactor] Remove the foregin interface. | Josh Rahm | 2026-01-01 |
| | | | | | The plugin will just call c functions through the FFI. | ||
| * | [refactor] Run ormolu on all the source. | Josh Rahm | 2026-01-01 |
| | | |||
| * | [refactor] Clean up all the warnings. | Josh Rahm | 2026-01-01 |
| | | |||
| * | [refactor] Wetterhorn -> Montis | Josh Rahm | 2026-01-01 |
| | | |||
| * | [refactor] Change the project to download wlroots rather than include it. | Josh Rahm | 2026-01-01 |
| | | | | | | | The build system will now just download wlroots directly rather than having it as a submodule. Submodules are really brittle and not well supported. This is the much more correct approach. | ||
| * | [reorg] - Finished reorg. | Josh Rahm | 2026-01-01 |
| | | | | | | Finally have coherent building on top of CMake. And installing actually works. In addition we use a static wlroots to avoid version hell. | ||
| * | Have Meson orchestrate the whole build rather than stack. | Josh Rahm | 2026-01-01 |
| | | | | | | | | | As a part of this, I changed the file layout to: rt/ - the Montis runtime plug/ - the Montis plugin wlroots/ - wlroots | ||
| * | Rebrand away from Tinywl to Montis.dev | Josh Rahm | 2025-03-14 |
| | | |||
| * | Update. Is actually working to some degree with 0.18.0 again. | Josh Rahm | 2025-03-13 |
| | | |||
| * | Bump wlroots to 0.18.0. | Josh Rahm | 2025-03-12 |
| | | |||
| * | Update to wlroots 0.18. | Josh Rahm | 2025-03-11 |
| | | |||
| * | Just a whole bunch of changes | Josh Rahm | 2024-03-27 |
| | | |||
| * | Have macro support (again) and some type-level goodness. | Josh Rahm | 2024-03-25 |
| | | |||
| * | Checkpoint. | Josh Rahm | 2024-03-25 |
| | | |||
| * | Implement more stuff. Add DSL for binding to the new input handler. | Josh Rahm | 2024-03-21 |
| | | |||
| * | Add Input.hs. This will be a more general version of Keys. | Josh Rahm | 2024-03-21 |
| | | |||
| * | Implementing button presses and integrating it with the KeysM monad. | Josh Rahm | 2024-03-19 |
| | | |||
| * | Higher fidelity for extensible state. | Josh Rahm | 2024-03-19 |
| | | |||
| * | Add extensible state and macros. Fix some bugs with keys. | Josh Rahm | 2024-03-19 |
| | | |||
| * | Change KeysM to use a ContT monad instead of rolling my own. | Josh Rahm | 2024-03-19 |
| | | | | | | Turns out the haskell geniuses already figured out how to encapsulate such asynchronous control flow. | ||
| * | Version bump | Josh Rahm | 2024-03-15 |
| | | |||
| * | Implement ability to customize the keys "putHandler" functionality. | Josh Rahm | 2024-03-15 |
| | | | | | | This will be useful for the future when I will implement macro-recording functionality. | ||
| * | Have Wetterhorn keep track of the windows. | Josh Rahm | 2024-03-15 |
| | | |||
| * | More flexing with the new keysM system. | Josh Rahm | 2024-03-05 |
| | | |||
| * | Remove sleep() statement in teardown. It's not actually needed. | Josh Rahm | 2024-03-05 |
| | | |||
| * | Added some escape-hatch keybindings for Wetterhorn. | Josh Rahm | 2024-03-05 |
| | | | | | | | | Specifically a way to reload the plugin and switch vterms. This is important in case the plugin is borked and stops accepting keyboard, the user can switch to a vterm, fix the plugin and reload it to get things working again without running into data loss. | ||
| * | Better KeysM implementation and functions. | Josh Rahm | 2024-03-05 |
| | | | | | This is making better key bindings possible and awesome! | ||
| * | Added a new KeysM monad. | Josh Rahm | 2024-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. | ||