From 1fe1d640425d87b104038ee23416e60bd9b9b2fc Mon Sep 17 00:00:00 2001 From: emersion Date: Sun, 31 Dec 2017 12:49:06 +0100 Subject: Fix views outside output layout --- include/rootston/desktop.h | 1 + include/wlr/types/wlr_box.h | 16 ++++++++-------- include/wlr/types/wlr_output_layout.h | 3 ++- 3 files changed, 11 insertions(+), 9 deletions(-) (limited to 'include') diff --git a/include/rootston/desktop.h b/include/rootston/desktop.h index a016bb94..8d706b65 100644 --- a/include/rootston/desktop.h +++ b/include/rootston/desktop.h @@ -47,6 +47,7 @@ struct roots_desktop { struct wl_listener output_add; struct wl_listener output_remove; + struct wl_listener layout_change; struct wl_listener xdg_shell_v6_surface; struct wl_listener wl_shell_surface; struct wl_listener decoration_new; diff --git a/include/wlr/types/wlr_box.h b/include/wlr/types/wlr_box.h index 5290ada5..0588201c 100644 --- a/include/wlr/types/wlr_box.h +++ b/include/wlr/types/wlr_box.h @@ -8,18 +8,18 @@ struct wlr_box { int width, height; }; -void wlr_box_closest_point(struct wlr_box *box, double x, double y, - double *dest_x, double *dest_y); +void wlr_box_closest_point(const struct wlr_box *box, double x, double y, + double *dest_x, double *dest_y); -bool wlr_box_intersection(struct wlr_box *box_a, - struct wlr_box *box_b, struct wlr_box **dest); +bool wlr_box_intersection(const struct wlr_box *box_a, + const struct wlr_box *box_b, struct wlr_box *dest); -bool wlr_box_contains_point(struct wlr_box *box, double x, double y); +bool wlr_box_contains_point(const struct wlr_box *box, double x, double y); -bool wlr_box_empty(struct wlr_box *box); +bool wlr_box_empty(const struct wlr_box *box); enum wl_output_transform; -void wlr_box_transform(struct wlr_box *box, enum wl_output_transform transform, - struct wlr_box *dest); +void wlr_box_transform(const struct wlr_box *box, + enum wl_output_transform transform, struct wlr_box *dest); #endif diff --git a/include/wlr/types/wlr_output_layout.h b/include/wlr/types/wlr_output_layout.h index a99debf6..9187b377 100644 --- a/include/wlr/types/wlr_output_layout.h +++ b/include/wlr/types/wlr_output_layout.h @@ -1,6 +1,7 @@ #ifndef WLR_TYPES_WLR_OUTPUT_LAYOUT_H #define WLR_TYPES_WLR_OUTPUT_LAYOUT_H +#include #include #include #include @@ -61,7 +62,7 @@ bool wlr_output_layout_contains_point(struct wlr_output_layout *layout, struct wlr_output *reference, int x, int y); bool wlr_output_layout_intersects(struct wlr_output_layout *layout, - struct wlr_output *reference, int x1, int y1, int x2, int y2); + struct wlr_output *reference, const struct wlr_box *target_box); /** * Get the closest point on this layout from the given point from the reference -- cgit v1.2.3