mirror of
https://github.com/swaywm/sway.git
synced 2025-01-26 18:56:50 +00:00
set userdata for handler to swayc_t container
This commit is contained in:
parent
e9e09d123c
commit
eefc76b39e
|
@ -54,8 +54,10 @@ swayc_t *new_output(wlc_handle handle) {
|
||||||
output->height = size->h;
|
output->height = size->h;
|
||||||
output->handle = handle;
|
output->handle = handle;
|
||||||
|
|
||||||
add_child(&root_container, output);
|
//link this to handler
|
||||||
|
wlc_handle_set_user_data(handle, output);
|
||||||
|
|
||||||
|
add_child(&root_container, output);
|
||||||
//TODO something with this
|
//TODO something with this
|
||||||
int total_width = 0;
|
int total_width = 0;
|
||||||
container_map(&root_container, add_output_widths, &total_width);
|
container_map(&root_container, add_output_widths, &total_width);
|
||||||
|
@ -138,6 +140,8 @@ swayc_t *new_view(swayc_t *sibling, wlc_handle handle) {
|
||||||
view->name = strdup(title);
|
view->name = strdup(title);
|
||||||
view->visible = true;
|
view->visible = true;
|
||||||
|
|
||||||
|
//Link view to handle
|
||||||
|
wlc_handle_set_user_data(handle, view);
|
||||||
//Case of focused workspace, just create as child of it
|
//Case of focused workspace, just create as child of it
|
||||||
if (sibling->type == C_WORKSPACE) {
|
if (sibling->type == C_WORKSPACE) {
|
||||||
add_child(sibling, view);
|
add_child(sibling, view);
|
||||||
|
|
|
@ -69,7 +69,7 @@ static void handle_output_destroyed(wlc_handle output) {
|
||||||
|
|
||||||
static void handle_output_resolution_change(wlc_handle output, const struct wlc_size *from, const struct wlc_size *to) {
|
static void handle_output_resolution_change(wlc_handle output, const struct wlc_size *from, const struct wlc_size *to) {
|
||||||
sway_log(L_DEBUG, "Output %d resolution changed to %d x %d", output, to->w, to->h);
|
sway_log(L_DEBUG, "Output %d resolution changed to %d x %d", output, to->w, to->h);
|
||||||
swayc_t *c = get_swayc_for_handle(output, &root_container);
|
swayc_t *c = wlc_handle_get_user_data(output);
|
||||||
if (!c) return;
|
if (!c) return;
|
||||||
c->width = to->w;
|
c->width = to->w;
|
||||||
c->height = to->h;
|
c->height = to->h;
|
||||||
|
@ -77,7 +77,7 @@ static void handle_output_resolution_change(wlc_handle output, const struct wlc_
|
||||||
}
|
}
|
||||||
|
|
||||||
static void handle_output_focused(wlc_handle output, bool focus) {
|
static void handle_output_focused(wlc_handle output, bool focus) {
|
||||||
swayc_t *c = get_swayc_for_handle(output, &root_container);
|
swayc_t *c = wlc_handle_get_user_data(output);
|
||||||
if (!c) return;
|
if (!c) return;
|
||||||
if (focus) {
|
if (focus) {
|
||||||
unfocus_all(&root_container);
|
unfocus_all(&root_container);
|
||||||
|
@ -109,7 +109,7 @@ static bool handle_view_created(wlc_handle handle) {
|
||||||
|
|
||||||
static void handle_view_destroyed(wlc_handle handle) {
|
static void handle_view_destroyed(wlc_handle handle) {
|
||||||
sway_log(L_DEBUG, "Destroying window %d", handle);
|
sway_log(L_DEBUG, "Destroying window %d", handle);
|
||||||
swayc_t *view = get_swayc_for_handle(handle, &root_container);
|
swayc_t *view = wlc_handle_get_user_data(handle);
|
||||||
swayc_t *parent;
|
swayc_t *parent;
|
||||||
swayc_t *focused = get_focused_container(&root_container);
|
swayc_t *focused = get_focused_container(&root_container);
|
||||||
|
|
||||||
|
|
|
@ -68,7 +68,6 @@ list_t *split_string(const char *str, const char *delims) {
|
||||||
j++;
|
j++;
|
||||||
i++;
|
i++;
|
||||||
}
|
}
|
||||||
free(left);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return res;
|
return res;
|
||||||
|
|
Loading…
Reference in a new issue