summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSevz <leohdz172@protonmail.com>2022-03-10 10:11:17 -0600
committerGitHub <noreply@github.com>2022-03-10 10:11:17 -0600
commit2630664fefacc9e4c6a5a12de8b96a04657f3c5f (patch)
tree2ce1b3640e34a41ab6d073b61321214ffc1440d5
parentf85d8e79d09bb167f133fbaa40dd01bc3d3d26a3 (diff)
parent76b3756d1111031aacc044bf1c73a842d2226c6a (diff)
Merge pull request #193 from fauxmight/chasing-wlroots
Chasing wlroots
-rw-r--r--client.h10
-rw-r--r--dwl.c9
2 files changed, 11 insertions, 8 deletions
diff --git a/client.h b/client.h
index 4fd1863..ce41c1c 100644
--- a/client.h
+++ b/client.h
@@ -39,7 +39,7 @@ client_activate_surface(struct wlr_surface *s, int activated)
#endif
if (wlr_surface_is_xdg_surface(s))
wlr_xdg_toplevel_set_activated(
- wlr_xdg_surface_from_wlr_surface(s), activated);
+ wlr_xdg_surface_from_wlr_surface(s)->toplevel, activated);
}
static inline void
@@ -121,7 +121,7 @@ client_send_close(Client *c)
return;
}
#endif
- wlr_xdg_toplevel_send_close(c->surface.xdg);
+ wlr_xdg_toplevel_send_close(c->surface.xdg->toplevel);
}
static inline void
@@ -133,7 +133,7 @@ client_set_fullscreen(Client *c, int fullscreen)
return;
}
#endif
- wlr_xdg_toplevel_set_fullscreen(c->surface.xdg, fullscreen);
+ wlr_xdg_toplevel_set_fullscreen(c->surface.xdg->toplevel, fullscreen);
}
static inline uint32_t
@@ -146,7 +146,7 @@ client_set_size(Client *c, uint32_t width, uint32_t height)
return 0;
}
#endif
- return wlr_xdg_toplevel_set_size(c->surface.xdg, width, height);
+ return wlr_xdg_toplevel_set_size(c->surface.xdg->toplevel, width, height);
}
static inline void
@@ -156,7 +156,7 @@ client_set_tiled(Client *c, uint32_t edges)
if (client_is_x11(c))
return;
#endif
- wlr_xdg_toplevel_set_tiled(c->surface.xdg, WLR_EDGE_TOP |
+ wlr_xdg_toplevel_set_tiled(c->surface.xdg->toplevel, WLR_EDGE_TOP |
WLR_EDGE_BOTTOM | WLR_EDGE_LEFT | WLR_EDGE_RIGHT);
}
diff --git a/dwl.c b/dwl.c
index 8683462..0b025e0 100644
--- a/dwl.c
+++ b/dwl.c
@@ -36,6 +36,7 @@
#include <wlr/types/wlr_screencopy_v1.h>
#include <wlr/types/wlr_server_decoration.h>
#include <wlr/types/wlr_seat.h>
+#include <wlr/types/wlr_subcompositor.h>
#include <wlr/types/wlr_viewporter.h>
#include <wlr/types/wlr_virtual_keyboard_v1.h>
#include <wlr/types/wlr_xcursor_manager.h>
@@ -863,7 +864,7 @@ createmon(struct wl_listener *listener, void *data)
* output (such as DPI, scale factor, manufacturer, etc).
*/
wlr_output_layout_add(output_layout, wlr_output, r->x, r->y);
- sgeom = *wlr_output_layout_get_box(output_layout, NULL);
+ wlr_output_layout_get_box(output_layout, NULL, &sgeom);
/* When adding monitors, the geometries of all monitors must be updated */
wl_list_for_each(m, &mons, link) {
@@ -2029,6 +2030,7 @@ setup(void)
wlr_gamma_control_manager_v1_create(dpy);
wlr_primary_selection_v1_device_manager_create(dpy);
wlr_viewporter_create(dpy);
+ wlr_subcompositor_create(dpy);
/* Initializes the interface used to implement urgency hints */
activation = wlr_xdg_activation_v1_create(dpy);
@@ -2305,7 +2307,7 @@ updatemons(struct wl_listener *listener, void *data)
struct wlr_output_configuration_v1 *config =
wlr_output_configuration_v1_create();
Monitor *m;
- sgeom = *wlr_output_layout_get_box(output_layout, NULL);
+ wlr_output_layout_get_box(output_layout, NULL, &sgeom);
wl_list_for_each(m, &mons, link) {
struct wlr_output_configuration_head_v1 *config_head =
wlr_output_configuration_head_v1_create(config, m->wlr_output);
@@ -2314,7 +2316,8 @@ updatemons(struct wl_listener *listener, void *data)
/* TODO: move focus if selmon is disabled */
/* Get the effective monitor geometry to use for surfaces */
- m->m = m->w = *wlr_output_layout_get_box(output_layout, m->wlr_output);
+ wlr_output_layout_get_box(output_layout, m->wlr_output, &(m->m));
+ wlr_output_layout_get_box(output_layout, m->wlr_output, &(m->w));
/* Calculate the effective monitor geometry to use for clients */
arrangelayers(m);
/* Don't move clients to the left output when plugging monitors */