diff options
author | Alex Maese <memaese@hotmail.com> | 2022-06-09 18:27:24 -0500 |
---|---|---|
committer | Simon Zeni <simon@bl4ckb0ne.ca> | 2022-09-19 07:26:45 -0400 |
commit | c015db4a9f115bfa10bd0b4c3fa05aca51b04c9b (patch) | |
tree | 0581ccd8c3639a20df1397b8c7e2dab6881a3289 /include | |
parent | 1c368fbb5fcd8fb67040bcc12bd71c7fbf119e97 (diff) |
sway: Add non-desktop-output type
Currently, when encountering a non-desktop display, sway offers the
output for leasing and returns without storing it in a sway specific
output type like `struct sway_output`. Additionally, running
`swaymsg -t get_outputs` doesn't show non-desktop outputs.
This commit stores the non-desktop outputs into a struct called
`sway_output_non_desktop`, and adds them to a list on `sway_root`
Diffstat (limited to 'include')
-rw-r--r-- | include/sway/output.h | 8 | ||||
-rw-r--r-- | include/sway/tree/root.h | 1 |
2 files changed, 9 insertions, 0 deletions
diff --git a/include/sway/output.h b/include/sway/output.h index 6d8319bf..d72bf1b2 100644 --- a/include/sway/output.h +++ b/include/sway/output.h @@ -57,6 +57,12 @@ struct sway_output { struct wl_event_source *repaint_timer; }; +struct sway_output_non_desktop { + struct wlr_output *wlr_output; + + struct wl_listener destroy; +}; + struct sway_output *output_create(struct wlr_output *wlr_output); void output_destroy(struct sway_output *output); @@ -177,4 +183,6 @@ void handle_output_manager_test(struct wl_listener *listener, void *data); void handle_output_power_manager_set_mode(struct wl_listener *listener, void *data); +struct sway_output_non_desktop *output_non_desktop_create(struct wlr_output *wlr_output); + #endif diff --git a/include/sway/tree/root.h b/include/sway/tree/root.h index 5d4a2f2d..af4124a1 100644 --- a/include/sway/tree/root.h +++ b/include/sway/tree/root.h @@ -28,6 +28,7 @@ struct sway_root { double width, height; list_t *outputs; // struct sway_output + list_t *non_desktop_outputs; // struct sway_output_non_desktop list_t *scratchpad; // struct sway_container // For when there's no connected outputs |