aboutsummaryrefslogtreecommitdiff
path: root/harness
Commit message (Collapse)AuthorAge
* Rebrand away from Tinywl to Montis.devJosh Rahm2025-03-14
|
* Update. Is actually working to some degree with 0.18.0 again.Josh Rahm2025-03-13
|
* Update to wlroots 0.18.Josh Rahm2025-03-11
|
* Just a whole bunch of changesJosh Rahm2024-03-27
|
* Implementing button presses and integrating it with the KeysM monad.Josh Rahm2024-03-19
|
* More flexing with the new keysM system.Josh Rahm2024-03-05
|
* Added some escape-hatch keybindings for Wetterhorn.Josh Rahm2024-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.
* 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.
* Update to new wlroots.Josh Rahm2024-02-22
| | | | | | Turns out that the one on Github is ancient and the project was moved long ago ... which is quite annoying that. No wonder where all the confusion was coming from.
* better surface handlingJosh Rahm2024-02-22
|
* Have the plugin handle more responsibility with keybindings.Josh Rahm2024-02-21
| | | | The plugin now passes the key events to the Wayland clients.
* Finally found the source of the deadlock bug.Josh Rahm2024-02-21
| | | | | | | I was initializing the plugin twice, causing hs_init to be called twice rendering the teardown call to hs_exit useless. Things finally appear to be working as intended, and it's likely this plugin architecture will work afterall!
* Fix plugin interface generation errosJosh Rahm2024-02-21
|
* Add the typed codepoint as an argument to the keyboard handler.Josh Rahm2024-02-21
|
* Do most of keyboard handling in the plugin now.Josh Rahm2024-02-21
|
* add back the metaloadJosh Rahm2024-02-20
|
* Added ability to exit the program via a back-interface.Josh Rahm2024-02-16
|
* Add some support for xwaylandJosh Rahm2024-02-15
|
* Add wlroots build/include directory to the include path of the harnessJosh Rahm2024-02-14
|
* Framework for plugin to call into harness.Josh Rahm2024-02-14
| | | | | | This is done by passing an interface to the plugin from the harness. The plugin can then request the harness do some things (such as reload), and the harness will do that.
* WIP: Working on the foreign interface.Josh Rahm2024-02-13
|
* add clang-formatJosh Rahm2024-02-12
|
* Added event handlers for map/unmap/destroy surfaces, added Alt+F5 for hot ↵Josh Rahm2024-02-11
| | | | | | | | | | | | reload. It turns out I could actually remove the metaload handler from the plugin interface. As things turn out, when fully unloading the shared object and reloading it, the Haskell runtime no longer complained. This makes things much simpler, which is great. I do wonder if I'm going to run into issues because of this, but I'll cross that bridge when it's burning.
* Import tinywl into the project, starting the compositor phase.Josh Rahm2024-02-11
| | | | | | Right now nothing interesting is happening, but the new tinywl implementation is successfully loading a plugin and calling a handler for 'handle keybinding', which is pretty slick.
* Little test to make sure unloading the plugin still worksJosh Rahm2024-02-11
|
* Change up a lot of stuff.Josh Rahm2024-02-11
| | | | | Add more functions to the plugin interface and write some generators to generate an interface header file and the plugin's loading code.
* Start making some more changes to harness and add plugin interface.Josh Rahm2024-02-11
|
* Move the harness to its own CMake project.Josh Rahm2024-02-09