summaryrefslogtreecommitdiff
path: root/src/lib/ecore_wayland/xdg-shell-protocol.c
diff options
context:
space:
mode:
authorChris Michael <cp.michael@samsung.com>2015-06-08 10:56:10 -0400
committerChris Michael <cp.michael@samsung.com>2015-06-08 10:58:51 -0400
commit13df35050cdf5e500e9dbe1290ca3dd83580f252 (patch)
treefbb0b8a50964dd6d5c7f4b254bf51c6c4ec96222 /src/lib/ecore_wayland/xdg-shell-protocol.c
parent7a38f8ec2129a4ae7ca1c1f76fba47d0cd1f7052 (diff)
ecore-wayland: Fix T2466: Update xdg shell protocol code
Summary: This updates the xdg_shell protocol and code to support XDG_SHELL version 5. This allows EFL/Elm apps to function again in Weston. @fix Signed-off-by: Chris Michael <cp.michael@samsung.com>
Diffstat (limited to '')
-rw-r--r--src/lib/ecore_wayland/xdg-shell-protocol.c121
1 files changed, 61 insertions, 60 deletions
diff --git a/src/lib/ecore_wayland/xdg-shell-protocol.c b/src/lib/ecore_wayland/xdg-shell-protocol.c
index 81c7519a1d..82433ea5b8 100644
--- a/src/lib/ecore_wayland/xdg-shell-protocol.c
+++ b/src/lib/ecore_wayland/xdg-shell-protocol.c
@@ -1,9 +1,9 @@
1/* 1/*
2 * Copyright © 2008-2013 Kristian Høgsberg 2 * Copyright © 2008-2013 Kristian Høgsberg
3 * Copyright © 2013 Rafael Antognolli 3 * Copyright © 2013 Rafael Antognolli
4 * Copyright © 2013 Jasper St. Pierre 4 * Copyright © 2013 Jasper St. Pierre
5 * Copyright © 2010-2013 Intel Corporation 5 * Copyright © 2010-2013 Intel Corporation
6 * 6 *
7 * Permission to use, copy, modify, distribute, and sell this 7 * Permission to use, copy, modify, distribute, and sell this
8 * software and its documentation for any purpose is hereby granted 8 * software and its documentation for any purpose is hereby granted
9 * without fee, provided that the above copyright notice appear in 9 * without fee, provided that the above copyright notice appear in
@@ -15,7 +15,7 @@
15 * representations about the suitability of this software for any 15 * representations about the suitability of this software for any
16 * purpose. It is provided "as is" without express or implied 16 * purpose. It is provided "as is" without express or implied
17 * warranty. 17 * warranty.
18 * 18 *
19 * THE COPYRIGHT HOLDERS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS 19 * THE COPYRIGHT HOLDERS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS
20 * SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND 20 * SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
21 * FITNESS, IN NO EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY 21 * FITNESS, IN NO EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY
@@ -37,88 +37,89 @@ extern const struct wl_interface xdg_popup_interface;
37extern const struct wl_interface xdg_surface_interface; 37extern const struct wl_interface xdg_surface_interface;
38 38
39static const struct wl_interface *types[] = { 39static const struct wl_interface *types[] = {
40 NULL, 40 NULL,
41 NULL, 41 NULL,
42 NULL, 42 NULL,
43 NULL, 43 NULL,
44 &xdg_surface_interface, 44 &xdg_surface_interface,
45 &wl_surface_interface, 45 &wl_surface_interface,
46 &xdg_popup_interface, 46 &xdg_popup_interface,
47 &wl_surface_interface, 47 &wl_surface_interface,
48 &wl_surface_interface, 48 &wl_surface_interface,
49 &wl_seat_interface, 49 &wl_seat_interface,
50 NULL, 50 NULL,
51 NULL, 51 NULL,
52 NULL, 52 NULL,
53 NULL, 53 &xdg_surface_interface,
54 &wl_surface_interface, 54 &wl_seat_interface,
55 &wl_seat_interface, 55 NULL,
56 NULL, 56 NULL,
57 NULL, 57 NULL,
58 NULL, 58 &wl_seat_interface,
59 &wl_seat_interface, 59 NULL,
60 NULL, 60 &wl_seat_interface,
61 &wl_seat_interface, 61 NULL,
62 NULL, 62 NULL,
63 NULL, 63 &wl_output_interface,
64 &wl_output_interface,
65}; 64};
66 65
67static const struct wl_message xdg_shell_requests[] = { 66static const struct wl_message xdg_shell_requests[] = {
68 { "use_unstable_version", "i", types + 0 }, 67 { "destroy", "", types + 0 },
69 { "get_xdg_surface", "no", types + 4 }, 68 { "use_unstable_version", "i", types + 0 },
70 { "get_xdg_popup", "nooouiiu", types + 6 }, 69 { "get_xdg_surface", "no", types + 4 },
71 { "pong", "u", types + 0 }, 70 { "get_xdg_popup", "nooouii", types + 6 },
71 { "pong", "u", types + 0 },
72}; 72};
73 73
74static const struct wl_message xdg_shell_events[] = { 74static const struct wl_message xdg_shell_events[] = {
75 { "ping", "u", types + 0 }, 75 { "ping", "u", types + 0 },
76}; 76};
77 77
78WL_EXPORT const struct wl_interface xdg_shell_interface = { 78WL_EXPORT const struct wl_interface xdg_shell_interface = {
79 "xdg_shell", 1, 79 "xdg_shell", 1,
80 4, xdg_shell_requests, 80 5, xdg_shell_requests,
81 1, xdg_shell_events, 81 1, xdg_shell_events,
82}; 82};
83 83
84static const struct wl_message xdg_surface_requests[] = { 84static const struct wl_message xdg_surface_requests[] = {
85 { "destroy", "", types + 0 }, 85 { "destroy", "", types + 0 },
86 { "set_parent", "?o", types + 14 }, 86 { "set_parent", "?o", types + 13 },
87 { "set_title", "s", types + 0 }, 87 { "set_title", "s", types + 0 },
88 { "set_app_id", "s", types + 0 }, 88 { "set_app_id", "s", types + 0 },
89 { "show_window_menu", "ouii", types + 15 }, 89 { "show_window_menu", "ouii", types + 14 },
90 { "move", "ou", types + 19 }, 90 { "move", "ou", types + 18 },
91 { "resize", "ouu", types + 21 }, 91 { "resize", "ouu", types + 20 },
92 { "ack_configure", "u", types + 0 }, 92 { "ack_configure", "u", types + 0 },
93 { "set_window_geometry", "iiii", types + 0 }, 93 { "set_window_geometry", "iiii", types + 0 },
94 { "set_maximized", "", types + 0 }, 94 { "set_maximized", "", types + 0 },
95 { "unset_maximized", "", types + 0 }, 95 { "unset_maximized", "", types + 0 },
96 { "set_fullscreen", "?o", types + 24 }, 96 { "set_fullscreen", "?o", types + 23 },
97 { "unset_fullscreen", "", types + 0 }, 97 { "unset_fullscreen", "", types + 0 },
98 { "set_minimized", "", types + 0 }, 98 { "set_minimized", "", types + 0 },
99}; 99};
100 100
101static const struct wl_message xdg_surface_events[] = { 101static const struct wl_message xdg_surface_events[] = {
102 { "configure", "iiau", types + 0 }, 102 { "configure", "iiau", types + 0 },
103 { "close", "", types + 0 }, 103 { "close", "", types + 0 },
104}; 104};
105 105
106WL_EXPORT const struct wl_interface xdg_surface_interface = { 106WL_EXPORT const struct wl_interface xdg_surface_interface = {
107 "xdg_surface", 1, 107 "xdg_surface", 1,
108 14, xdg_surface_requests, 108 14, xdg_surface_requests,
109 2, xdg_surface_events, 109 2, xdg_surface_events,
110}; 110};
111 111
112static const struct wl_message xdg_popup_requests[] = { 112static const struct wl_message xdg_popup_requests[] = {
113 { "destroy", "", types + 0 }, 113 { "destroy", "", types + 0 },
114}; 114};
115 115
116static const struct wl_message xdg_popup_events[] = { 116static const struct wl_message xdg_popup_events[] = {
117 { "popup_done", "u", types + 0 }, 117 { "popup_done", "", types + 0 },
118}; 118};
119 119
120WL_EXPORT const struct wl_interface xdg_popup_interface = { 120WL_EXPORT const struct wl_interface xdg_popup_interface = {
121 "xdg_popup", 1, 121 "xdg_popup", 1,
122 1, xdg_popup_requests, 122 1, xdg_popup_requests,
123 1, xdg_popup_events, 123 1, xdg_popup_events,
124}; 124};
125