diff options
| author | Josh Rahm <rahm@google.com> | 2024-02-21 17:02:39 -0700 |
|---|---|---|
| committer | Josh Rahm <rahm@google.com> | 2024-02-21 17:02:39 -0700 |
| commit | 7e75cbbaca48fdf2f584aa45879ecd9175483b47 (patch) | |
| tree | e416bea204cf33bf1553e6dc2e6ee2676e397576 /src/harness_adapter.c | |
| parent | 08a2b185043d3b7a9f746e42f47a5e06cf4bbeae (diff) | |
| download | montis-7e75cbbaca48fdf2f584aa45879ecd9175483b47.tar.gz montis-7e75cbbaca48fdf2f584aa45879ecd9175483b47.tar.bz2 montis-7e75cbbaca48fdf2f584aa45879ecd9175483b47.zip | |
Have the plugin handle more responsibility with keybindings.
The plugin now passes the key events to the Wayland clients.
Diffstat (limited to 'src/harness_adapter.c')
| -rw-r--r-- | src/harness_adapter.c | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/src/harness_adapter.c b/src/harness_adapter.c index 8663b6a..3834a2c 100644 --- a/src/harness_adapter.c +++ b/src/harness_adapter.c @@ -5,6 +5,8 @@ #include "HsFFI.h" #include "plugin_interface.h" +#include <stdio.h> +#include <stdlib.h> #include <unistd.h> const char *plugin_name = "Wetterhorn"; @@ -20,7 +22,7 @@ extern void performMajorGC(); void plugin_metaload(int argc, char** argv) { - hs_init(&argc, &argv); + // hs_init(&argc, &argv); } void plugin_load(int argc, char **argv, foreign_interface_t* fintf) { @@ -34,7 +36,7 @@ void plugin_teardown(opqst_t st) { // // Used primarily in the case where the RTS is kept alive when performing a // hot-reload. - performMajorGC(); + // performMajorGC(); hs_exit(); // There's a race condition between when this shared library is unloaded and @@ -43,6 +45,13 @@ void plugin_teardown(opqst_t st) { sleep(1); } +void shell_exec(const char* cmd) { + if (fork() == 0) { + execl("/bin/sh", "/bin/sh", "-c", cmd, NULL); + exit(1); + } +} + static const char msg[] = "Wetterhorn Plugin v 0.01\n\n" "Welcome, and thank you for your interest.\n\n" |