Created
April 3, 2018 19:53
-
-
Save ddevault/4d1714c2fc20978c8914bc89f4f9fe07 to your computer and use it in GitHub Desktop.
I'm so sorry
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
diff --git a/sway/commands/reload.c b/sway/commands/reload.c | |
index 5bca6cd..a3714d0 100644 | |
--- a/sway/commands/reload.c | |
+++ b/sway/commands/reload.c | |
@@ -2,6 +2,31 @@ | |
#include "sway/config.h" | |
#include "sway/tree/layout.h" | |
+#include <wlr/backend/x11.h> | |
+#include "sway/server.h" | |
+ | |
+struct wlr_multi_backend { | |
+ struct wlr_backend backend; | |
+ | |
+ struct wl_list backends; | |
+ | |
+ struct wl_listener display_destroy; | |
+ | |
+ struct { | |
+ struct wl_signal backend_add; | |
+ struct wl_signal backend_remove; | |
+ } events; | |
+}; | |
+ | |
+struct subbackend_state { | |
+ struct wlr_backend *backend; | |
+ struct wlr_backend *container; | |
+ struct wl_listener new_input; | |
+ struct wl_listener new_output; | |
+ struct wl_listener destroy; | |
+ struct wl_list link; | |
+}; | |
+ | |
struct cmd_results *cmd_reload(int argc, char **argv) { | |
struct cmd_results *error = NULL; | |
if ((error = checkarg(argc, "reload", EXPECTED_EQUAL_TO, 0))) { | |
@@ -13,5 +38,15 @@ struct cmd_results *cmd_reload(int argc, char **argv) { | |
load_swaybars(); | |
arrange_windows(&root_container, -1, -1); | |
+ | |
+ struct wlr_multi_backend *backend = | |
+ (struct wlr_multi_backend *)server.backend; | |
+ struct subbackend_state *subbackend; | |
+ wl_list_for_each(subbackend, &backend->backends, link) { | |
+ if (wlr_backend_is_x11(subbackend->backend)) { | |
+ wlr_x11_output_create(subbackend->backend); | |
+ } | |
+ } | |
+ | |
return cmd_results_new(CMD_SUCCESS, NULL, NULL); | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment