diff options
author | David Eklov <david.eklov@gmail.com> | 2016-07-04 17:01:37 -0500 |
---|---|---|
committer | David Eklov <david.eklov@gmail.com> | 2016-07-04 21:58:41 -0500 |
commit | bb35960e652f98a882ed3cd2d1968b860942b896 (patch) | |
tree | 28a5b8207a166c24a636cfcf25448baa446d2943 | |
parent | 51204b33c18b6f7c248f558fbaeb7198efb32900 (diff) | |
download | sway-bb35960e652f98a882ed3cd2d1968b860942b896.tar.xz |
Move code to make a window a shell surface into seperate function
-rw-r--r-- | include/client/window.h | 1 | ||||
-rw-r--r-- | wayland/window.c | 10 |
2 files changed, 8 insertions, 3 deletions
diff --git a/include/client/window.h b/include/client/window.h index eff9032d..e48ec4f3 100644 --- a/include/client/window.h +++ b/include/client/window.h @@ -42,5 +42,6 @@ struct window *window_setup(struct registry *registry, uint32_t width, uint32_t void window_teardown(struct window *state); int window_prerender(struct window *state); int window_render(struct window *state); +void window_make_shell(struct window *window); #endif diff --git a/wayland/window.c b/wayland/window.c index ba64cb60..7ca9e4ec 100644 --- a/wayland/window.c +++ b/wayland/window.c @@ -59,6 +59,12 @@ static const struct wl_shell_surface_listener surface_listener = { .configure = shell_surface_configure }; +void window_make_shell(struct window *window) { + window->shell_surface = wl_shell_get_shell_surface(window->registry->shell, window->surface); + wl_shell_surface_add_listener(window->shell_surface, &surface_listener, window); + wl_shell_surface_set_toplevel(window->shell_surface); +} + struct window *window_setup(struct registry *registry, uint32_t width, uint32_t height, bool shell_surface) { struct window *window = malloc(sizeof(struct window)); memset(window, 0, sizeof(struct window)); @@ -69,9 +75,7 @@ struct window *window_setup(struct registry *registry, uint32_t width, uint32_t window->surface = wl_compositor_create_surface(registry->compositor); if (shell_surface) { - window->shell_surface = wl_shell_get_shell_surface(registry->shell, window->surface); - wl_shell_surface_add_listener(window->shell_surface, &surface_listener, window); - wl_shell_surface_set_toplevel(window->shell_surface); + window_make_shell(window); } if (registry->pointer) { wl_pointer_add_listener(registry->pointer, &pointer_listener, window); |