forked from mirror/dwl
commit
2630664fef
2 changed files with 11 additions and 8 deletions
10
client.h
10
client.h
|
@ -39,7 +39,7 @@ client_activate_surface(struct wlr_surface *s, int activated)
|
||||||
#endif
|
#endif
|
||||||
if (wlr_surface_is_xdg_surface(s))
|
if (wlr_surface_is_xdg_surface(s))
|
||||||
wlr_xdg_toplevel_set_activated(
|
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
|
static inline void
|
||||||
|
@ -121,7 +121,7 @@ client_send_close(Client *c)
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
wlr_xdg_toplevel_send_close(c->surface.xdg);
|
wlr_xdg_toplevel_send_close(c->surface.xdg->toplevel);
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline void
|
static inline void
|
||||||
|
@ -133,7 +133,7 @@ client_set_fullscreen(Client *c, int fullscreen)
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
wlr_xdg_toplevel_set_fullscreen(c->surface.xdg, fullscreen);
|
wlr_xdg_toplevel_set_fullscreen(c->surface.xdg->toplevel, fullscreen);
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline uint32_t
|
static inline uint32_t
|
||||||
|
@ -146,7 +146,7 @@ client_set_size(Client *c, uint32_t width, uint32_t height)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
#endif
|
#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
|
static inline void
|
||||||
|
@ -156,7 +156,7 @@ client_set_tiled(Client *c, uint32_t edges)
|
||||||
if (client_is_x11(c))
|
if (client_is_x11(c))
|
||||||
return;
|
return;
|
||||||
#endif
|
#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);
|
WLR_EDGE_BOTTOM | WLR_EDGE_LEFT | WLR_EDGE_RIGHT);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
9
dwl.c
9
dwl.c
|
@ -36,6 +36,7 @@
|
||||||
#include <wlr/types/wlr_screencopy_v1.h>
|
#include <wlr/types/wlr_screencopy_v1.h>
|
||||||
#include <wlr/types/wlr_server_decoration.h>
|
#include <wlr/types/wlr_server_decoration.h>
|
||||||
#include <wlr/types/wlr_seat.h>
|
#include <wlr/types/wlr_seat.h>
|
||||||
|
#include <wlr/types/wlr_subcompositor.h>
|
||||||
#include <wlr/types/wlr_viewporter.h>
|
#include <wlr/types/wlr_viewporter.h>
|
||||||
#include <wlr/types/wlr_virtual_keyboard_v1.h>
|
#include <wlr/types/wlr_virtual_keyboard_v1.h>
|
||||||
#include <wlr/types/wlr_xcursor_manager.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).
|
* output (such as DPI, scale factor, manufacturer, etc).
|
||||||
*/
|
*/
|
||||||
wlr_output_layout_add(output_layout, wlr_output, r->x, r->y);
|
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 */
|
/* When adding monitors, the geometries of all monitors must be updated */
|
||||||
wl_list_for_each(m, &mons, link) {
|
wl_list_for_each(m, &mons, link) {
|
||||||
|
@ -2029,6 +2030,7 @@ setup(void)
|
||||||
wlr_gamma_control_manager_v1_create(dpy);
|
wlr_gamma_control_manager_v1_create(dpy);
|
||||||
wlr_primary_selection_v1_device_manager_create(dpy);
|
wlr_primary_selection_v1_device_manager_create(dpy);
|
||||||
wlr_viewporter_create(dpy);
|
wlr_viewporter_create(dpy);
|
||||||
|
wlr_subcompositor_create(dpy);
|
||||||
|
|
||||||
/* Initializes the interface used to implement urgency hints */
|
/* Initializes the interface used to implement urgency hints */
|
||||||
activation = wlr_xdg_activation_v1_create(dpy);
|
activation = wlr_xdg_activation_v1_create(dpy);
|
||||||
|
@ -2305,7 +2307,7 @@ updatemons(struct wl_listener *listener, void *data)
|
||||||
struct wlr_output_configuration_v1 *config =
|
struct wlr_output_configuration_v1 *config =
|
||||||
wlr_output_configuration_v1_create();
|
wlr_output_configuration_v1_create();
|
||||||
Monitor *m;
|
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) {
|
wl_list_for_each(m, &mons, link) {
|
||||||
struct wlr_output_configuration_head_v1 *config_head =
|
struct wlr_output_configuration_head_v1 *config_head =
|
||||||
wlr_output_configuration_head_v1_create(config, m->wlr_output);
|
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 */
|
/* TODO: move focus if selmon is disabled */
|
||||||
|
|
||||||
/* Get the effective monitor geometry to use for surfaces */
|
/* 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 */
|
/* Calculate the effective monitor geometry to use for clients */
|
||||||
arrangelayers(m);
|
arrangelayers(m);
|
||||||
/* Don't move clients to the left output when plugging monitors */
|
/* Don't move clients to the left output when plugging monitors */
|
||||||
|
|
Loading…
Reference in a new issue