aboutsummaryrefslogtreecommitdiff
path: root/swaybar/status_line.c
diff options
context:
space:
mode:
Diffstat (limited to 'swaybar/status_line.c')
-rw-r--r--swaybar/status_line.c18
1 files changed, 16 insertions, 2 deletions
diff --git a/swaybar/status_line.c b/swaybar/status_line.c
index ed6dc7c8..65d6c052 100644
--- a/swaybar/status_line.c
+++ b/swaybar/status_line.c
@@ -7,16 +7,16 @@
#include <stdio.h>
#include <unistd.h>
#include <wlr/util/log.h>
+#include "loop.h"
#include "swaybar/bar.h"
#include "swaybar/config.h"
#include "swaybar/i3bar.h"
-#include "swaybar/event_loop.h"
#include "swaybar/status_line.h"
#include "readline.h"
static void status_line_close_fds(struct status_line *status) {
if (status->read_fd != -1) {
- remove_event(status->read_fd);
+ loop_remove_fd(status->bar->eventloop, status->read_fd);
close(status->read_fd);
status->read_fd = -1;
}
@@ -83,6 +83,17 @@ bool status_handle_readable(struct status_line *status) {
return true;
}
}
+
+ json_object *signal;
+ if (json_object_object_get_ex(header, "stop_signal", &signal)) {
+ status->stop_signal = json_object_get_int(signal);
+ wlr_log(WLR_DEBUG, "Setting stop signal to %d", status->stop_signal);
+ }
+ if (json_object_object_get_ex(header, "cont_signal", &signal)) {
+ status->cont_signal = json_object_get_int(signal);
+ wlr_log(WLR_DEBUG, "Setting cont signal to %d", status->cont_signal);
+ }
+
json_object_put(header);
wl_list_init(&status->blocks);
@@ -121,6 +132,9 @@ bool status_handle_readable(struct status_line *status) {
struct status_line *status_line_init(char *cmd) {
struct status_line *status = calloc(1, sizeof(struct status_line));
+ status->stop_signal = SIGSTOP;
+ status->cont_signal = SIGCONT;
+
status->buffer_size = 8192;
status->buffer = malloc(status->buffer_size);