summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorLibravatar David Eklov <david.eklov@gmail.com>2016-07-04 16:53:03 -0500
committerLibravatar David Eklov <david.eklov@gmail.com>2016-07-04 21:58:07 -0500
commit51204b33c18b6f7c248f558fbaeb7198efb32900 (patch)
treefbbad0ad87bf91d3d8ca3f39cc22b23ed317e4d3 /include
parentI think this fixes #678 (diff)
downloadsway-51204b33c18b6f7c248f558fbaeb7198efb32900.tar.gz
sway-51204b33c18b6f7c248f558fbaeb7198efb32900.tar.zst
sway-51204b33c18b6f7c248f558fbaeb7198efb32900.zip
Enable backgrounds and panels to be shell surfaces
Prior to this commit all windows (e.g. shell surfaces) were handled the same way in handle_view_created. Since backgrounds and panels have to be treated differently, they could not be shell surfaces. This changes checks whether a client is a background or a panel in handle_view_created and exists to let them be dealt with elsewhere.
Diffstat (limited to 'include')
-rw-r--r--include/extensions.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/include/extensions.h b/include/extensions.h
index 158a40a2..dbd8f625 100644
--- a/include/extensions.h
+++ b/include/extensions.h
@@ -11,6 +11,8 @@ struct background_config {
11 wlc_resource surface; 11 wlc_resource surface;
12 // we need the wl_resource of the surface in the destructor 12 // we need the wl_resource of the surface in the destructor
13 struct wl_resource *wl_surface_res; 13 struct wl_resource *wl_surface_res;
14 // used to determine if client is a background
15 struct wl_client *client;
14}; 16};
15 17
16struct panel_config { 18struct panel_config {
@@ -21,6 +23,8 @@ struct panel_config {
21 // we need the wl_resource of the surface in the destructor 23 // we need the wl_resource of the surface in the destructor
22 struct wl_resource *wl_surface_res; 24 struct wl_resource *wl_surface_res;
23 enum desktop_shell_panel_position panel_position; 25 enum desktop_shell_panel_position panel_position;
26 // used to determine if client is a panel
27 struct wl_client *client;
24}; 28};
25 29
26struct desktop_shell_state { 30struct desktop_shell_state {