Merge lp:~mir-team/mir/0.26-old into lp:mir/ubuntu
- 0.26-old
- Merge into ubuntu
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Mir CI Bot | continuous-integration | Approve | |
Alan Griffiths | Needs Fixing | ||
Daniel van Vugt | Approve | ||
Review via email: mp+323122@code.launchpad.net |
Commit message
Mir release 0.26.3
Description of the change
Mir CI Bot (mir-ci-bot) wrote : | # |
Daniel van Vugt (vanvugt) wrote : | # |
Sounds OK, but we can support clang on xenial still (trivial fixes pending) so this would need to be more flexible:
+ #if defined(__clang__) || !defined(__GNUC__) || (__GNUC__ >= 6)
Daniel van Vugt (vanvugt) wrote : | # |
Actually, that's fine. Automatic detection of clang is inconsequential. What's important is xenial distro (hence gcc).
Mir CI Bot (mir-ci-bot) wrote : | # |
PASSED: Continuous integration, rev:4057
https:/
Executed test runs:
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
Click here to trigger a rebuild:
https:/
Mir CI Bot (mir-ci-bot) wrote : | # |
FAILED: Continuous integration, rev:4058
https:/
Executed test runs:
FAILURE: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
Click here to trigger a rebuild:
https:/
Mir CI Bot (mir-ci-bot) wrote : | # |
PASSED: Continuous integration, rev:4059
https:/
Executed test runs:
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
Click here to trigger a rebuild:
https:/
Mir CI Bot (mir-ci-bot) wrote : | # |
PASSED: Continuous integration, rev:4061
https:/
Executed test runs:
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
Click here to trigger a rebuild:
https:/
Mir CI Bot (mir-ci-bot) wrote : | # |
PASSED: Continuous integration, rev:4062
https:/
Executed test runs:
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
Click here to trigger a rebuild:
https:/
Mir CI Bot (mir-ci-bot) wrote : | # |
PASSED: Continuous integration, rev:4063
https:/
Executed test runs:
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
Click here to trigger a rebuild:
https:/
Mir CI Bot (mir-ci-bot) wrote : | # |
PASSED: Continuous integration, rev:4064
https:/
Executed test runs:
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
Click here to trigger a rebuild:
https:/
Daniel van Vugt (vanvugt) wrote : | # |
We do have arm64 binaries in current Ubuntu. So won't this break things for post-xenial?
47 - libhardware-dev [i386 amd64 armhf arm64],
48 - libandroid-
49 + libhardware-dev [i386 amd64 armhf],
50 + libandroid-
Alan Griffiths (alan-griffiths) wrote : | # |
> We do have arm64 binaries in current Ubuntu. So won't this break things for
> post-xenial?
>
> 47 - libhardware-dev [i386 amd64 armhf arm64],
> 48 - libandroid-
> 49 + libhardware-dev [i386 amd64 armhf],
> 50 + libandroid-
Only if we were to land it there. The sole purpose of this release is to update the 16.04 LTS (to get 0.26 into Ubuntu Core).
Mir CI Bot (mir-ci-bot) wrote : | # |
PASSED: Continuous integration, rev:4065
https:/
Executed test runs:
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
Click here to trigger a rebuild:
https:/
Daniel van Vugt (vanvugt) wrote : | # |
OK, fair point. Assuming zesty/artful only get Mir 0.27 (or no upgrades at all) then that will work.
Alan Griffiths (alan-griffiths) wrote : | # |
The SRU process requires this (or later) to exist in later archives. So first we need it in artful, then we can land in zesty, then in yakkety and, finally, in xenial.
- 4066. By Alan Griffiths
-
Restore platforms that are unsupported in xenial, add support for building downstreams on, and re-sync deprecation macros with current development.
Mir CI Bot (mir-ci-bot) wrote : | # |
FAILED: Continuous integration, rev:4066
https:/
Executed test runs:
FAILURE: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
FAILURE: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
Click here to trigger a rebuild:
https:/
- 4067. By Alan Griffiths
-
More restore arm64
Mir CI Bot (mir-ci-bot) wrote : | # |
PASSED: Continuous integration, rev:4067
https:/
Executed test runs:
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
Click here to trigger a rebuild:
https:/
Preview Diff
1 | === modified file 'CMakeLists.txt' |
2 | --- CMakeLists.txt 2017-02-17 02:24:03 +0000 |
3 | +++ CMakeLists.txt 2017-05-26 16:23:13 +0000 |
4 | @@ -29,7 +29,7 @@ |
5 | |
6 | set(MIR_VERSION_MAJOR 0) |
7 | set(MIR_VERSION_MINOR 26) |
8 | -set(MIR_VERSION_PATCH 2) |
9 | +set(MIR_VERSION_PATCH 3) |
10 | |
11 | add_definitions(-DMIR_VERSION_MAJOR=${MIR_VERSION_MAJOR}) |
12 | add_definitions(-DMIR_VERSION_MINOR=${MIR_VERSION_MINOR}) |
13 | |
14 | === modified file 'debian/changelog' |
15 | --- debian/changelog 2017-04-12 21:43:04 +0000 |
16 | +++ debian/changelog 2017-05-26 16:23:13 +0000 |
17 | @@ -1,3 +1,22 @@ |
18 | +mir (0.26.3-0ubuntu1) UNRELEASED; urgency=medium |
19 | + |
20 | + * New upstream release 0.26.3 (https://launchpad.net/mir/+milestone/0.26.3) |
21 | + - Enhancements: |
22 | + . Make deprecations optional (and default to off for builds on 16.04 LTS) |
23 | + . Added support for building on Ubuntu 17.10 artful. |
24 | + - Bugs fixed: |
25 | + . Mir needs to be updated to 0.26 in 16.04LTS (LP: #1685186) |
26 | + . unity-system-compositor crashed with SIGSEGV in |
27 | + libinput_device_config_accel_is_available() from |
28 | + libinput_device_config_accel_set_speed() from |
29 | + mir::input::evdev::LibInputDevice::apply_settings() (LP: #1672955) |
30 | + . Please transition to Boost 1.62 (LP: #1675138) |
31 | + . Mir sending key repeat events continually to nested shell after VT |
32 | + switch (causes Unity8 lockup for a while) (LP: #1675357) |
33 | + . mir_demo_standalone_render_overlays fails to link (LP: #1677239) |
34 | + |
35 | + -- Daniel van Vugt <daniel.van.vugt@canonical.com> Thu, 30 Mar 2017 11:43:28 +0800 |
36 | + |
37 | mir (0.26.2+17.04.20170322.1-0ubuntu2) zesty; urgency=medium |
38 | |
39 | [ Mattia Rizzolo ] |
40 | |
41 | === modified file 'include/client/mir/event_printer.h' |
42 | --- include/client/mir/event_printer.h 2017-01-19 05:30:03 +0000 |
43 | +++ include/client/mir/event_printer.h 2017-05-26 16:23:13 +0000 |
44 | @@ -35,19 +35,19 @@ |
45 | std::ostream& operator<<(std::ostream& out, MirOrientation orientation); |
46 | |
47 | std::ostream& operator<<(std::ostream& out, MirSurfaceAttrib attribute) |
48 | -__attribute__ ((deprecated("use << with MirWindowAttrib instead"))); |
49 | +MIR_FOR_REMOVAL_IN_VERSION_1("use << with MirWindowAttrib instead"); |
50 | std::ostream& operator<<(std::ostream& out, MirWindowAttrib attribute); |
51 | std::ostream& operator<<(std::ostream& out, MirSurfaceFocusState state) |
52 | -__attribute__ ((deprecated("use << with MirWindowFocusState instead"))); |
53 | +MIR_FOR_REMOVAL_IN_VERSION_1("use << with MirWindowFocusState instead"); |
54 | std::ostream& operator<<(std::ostream& out, MirWindowFocusState state); |
55 | std::ostream& operator<<(std::ostream& out, MirSurfaceVisibility state) |
56 | -__attribute__ ((deprecated("use << with MirWindowVisibility instead"))); |
57 | +MIR_FOR_REMOVAL_IN_VERSION_1("use << with MirWindowVisibility instead"); |
58 | std::ostream& operator<<(std::ostream& out, MirWindowVisibility state); |
59 | std::ostream& operator<<(std::ostream& out, MirSurfaceType type) |
60 | -__attribute__ ((deprecated("use << with MirWindowType instead"))); |
61 | +MIR_FOR_REMOVAL_IN_VERSION_1("use << with MirWindowType instead"); |
62 | std::ostream& operator<<(std::ostream& out, MirWindowType type); |
63 | std::ostream& operator<<(std::ostream& out, MirSurfaceState state) |
64 | -__attribute__ ((deprecated("use << with MirWindowState instead"))); |
65 | +MIR_FOR_REMOVAL_IN_VERSION_1("use << with MirWindowState instead"); |
66 | std::ostream& operator<<(std::ostream& out, MirWindowState state); |
67 | |
68 | std::ostream& operator<<(std::ostream& out, MirPromptSessionEvent const& event); |
69 | |
70 | === modified file 'include/client/mir/events/event_builders.h' |
71 | --- include/client/mir/events/event_builders.h 2017-01-19 05:30:03 +0000 |
72 | +++ include/client/mir/events/event_builders.h 2017-05-26 16:23:13 +0000 |
73 | @@ -48,7 +48,7 @@ |
74 | EventUPtr make_event(frontend::SurfaceId const& surface_id, geometry::Size const& size); |
75 | // Surface configure event |
76 | EventUPtr make_event(frontend::SurfaceId const& surface_id, MirSurfaceAttrib attribute, int value) |
77 | -__attribute__ ((deprecated("use make_event with MirWindowAttribute instead"))); |
78 | +MIR_FOR_REMOVAL_IN_VERSION_1("use make_event with MirWindowAttribute instead"); |
79 | // Window configure event |
80 | EventUPtr make_event(frontend::SurfaceId const& surface_id, MirWindowAttrib attribute, int value); |
81 | // Close surface event |
82 | @@ -81,12 +81,12 @@ |
83 | // Deprecated version with uint64_t mac |
84 | EventUPtr make_event(MirInputDeviceId device_id, std::chrono::nanoseconds timestamp, |
85 | uint64_t mac, MirKeyboardAction action, xkb_keysym_t key_code, |
86 | - int scan_code, MirInputEventModifiers modifiers) __attribute__ ((deprecated)); |
87 | + int scan_code, MirInputEventModifiers modifiers) MIR_FOR_REMOVAL_IN_VERSION_1("unused"); |
88 | |
89 | // Deprecated version without mac |
90 | EventUPtr make_event(MirInputDeviceId device_id, std::chrono::nanoseconds timestamp, |
91 | MirKeyboardAction action, xkb_keysym_t key_code, |
92 | - int scan_code, MirInputEventModifiers modifiers) __attribute__ ((deprecated)); |
93 | + int scan_code, MirInputEventModifiers modifiers) MIR_FOR_REMOVAL_IN_VERSION_1("unused"); |
94 | |
95 | // Touch event |
96 | EventUPtr make_event(MirInputDeviceId device_id, std::chrono::nanoseconds timestamp, |
97 | @@ -94,11 +94,11 @@ |
98 | |
99 | // Deprecated version with uint64_t mac |
100 | EventUPtr make_event(MirInputDeviceId device_id, std::chrono::nanoseconds timestamp, |
101 | - uint64_t mac, MirInputEventModifiers modifiers) __attribute__ ((deprecated)); |
102 | + uint64_t mac, MirInputEventModifiers modifiers) MIR_FOR_REMOVAL_IN_VERSION_1("unused"); |
103 | |
104 | // Deprecated version without mac |
105 | EventUPtr make_event(MirInputDeviceId device_id, std::chrono::nanoseconds timestamp, |
106 | - MirInputEventModifiers modifiers) __attribute__ ((deprecated)); |
107 | + MirInputEventModifiers modifiers) MIR_FOR_REMOVAL_IN_VERSION_1("unused"); |
108 | |
109 | void add_touch(MirEvent &event, MirTouchId touch_id, MirTouchAction action, |
110 | MirTouchTooltype tooltype, float x_axis_value, float y_axis_value, |
111 | @@ -110,14 +110,14 @@ |
112 | uint64_t mac, MirInputEventModifiers modifiers, MirPointerAction action, |
113 | MirPointerButtons buttons_pressed, |
114 | float x_axis_value, float y_axis_value, |
115 | - float hscroll_value, float vscroll_value) __attribute__ ((deprecated)); |
116 | + float hscroll_value, float vscroll_value) MIR_FOR_REMOVAL_IN_VERSION_1("unused"); |
117 | |
118 | // Deprecated version without relative axis and mac |
119 | EventUPtr make_event(MirInputDeviceId device_id, std::chrono::nanoseconds timestamp, |
120 | MirInputEventModifiers modifiers, MirPointerAction action, |
121 | MirPointerButtons buttons_pressed, |
122 | float x_axis_value, float y_axis_value, |
123 | - float hscroll_value, float vscroll_value) __attribute__ ((deprecated)); |
124 | + float hscroll_value, float vscroll_value) MIR_FOR_REMOVAL_IN_VERSION_1("unused"); |
125 | |
126 | EventUPtr make_event(MirInputDeviceId device_id, std::chrono::nanoseconds timestamp, |
127 | std::vector<uint8_t> const& mac, MirInputEventModifiers modifiers, MirPointerAction action, |
128 | @@ -132,7 +132,7 @@ |
129 | MirPointerButtons buttons_pressed, |
130 | float x_axis_value, float y_axis_value, |
131 | float hscroll_value, float vscroll_value, |
132 | - float relative_x_value, float relative_y_value) __attribute__ ((deprecated)); |
133 | + float relative_x_value, float relative_y_value) MIR_FOR_REMOVAL_IN_VERSION_1("unused"); |
134 | |
135 | // Deprecated version without mac |
136 | EventUPtr make_event(MirInputDeviceId device_id, std::chrono::nanoseconds timestamp, |
137 | @@ -140,11 +140,11 @@ |
138 | MirPointerButtons buttons_pressed, |
139 | float x_axis_value, float y_axis_value, |
140 | float hscroll_value, float vscroll_value, |
141 | - float relative_x_value, float relative_y_value) __attribute__ ((deprecated)); |
142 | + float relative_x_value, float relative_y_value) MIR_FOR_REMOVAL_IN_VERSION_1("unused"); |
143 | |
144 | // Input configuration event |
145 | EventUPtr make_event(MirInputConfigurationAction action, |
146 | - MirInputDeviceId id, std::chrono::nanoseconds time) __attribute__((deprecated)); |
147 | + MirInputDeviceId id, std::chrono::nanoseconds time) MIR_FOR_REMOVAL_IN_VERSION_1("unused"); |
148 | |
149 | EventUPtr make_event(std::chrono::nanoseconds timestamp, |
150 | MirPointerButtons pointer_buttons, |
151 | |
152 | === modified file 'include/client/mir_toolkit/client_types.h' |
153 | --- include/client/mir_toolkit/client_types.h 2017-03-16 16:47:21 +0000 |
154 | +++ include/client/mir_toolkit/client_types.h 2017-05-26 16:23:13 +0000 |
155 | @@ -23,6 +23,7 @@ |
156 | |
157 | #include <mir_toolkit/events/event.h> |
158 | #include <mir_toolkit/common.h> |
159 | +#include <mir_toolkit/deprecations.h> |
160 | |
161 | #include <stddef.h> |
162 | |
163 | @@ -38,23 +39,22 @@ |
164 | typedef void* MirEGLNativeWindowType; |
165 | typedef void* MirEGLNativeDisplayType; |
166 | typedef struct MirConnection MirConnection; |
167 | -typedef struct MirSurface MirSurface __attribute__((deprecated("Use MirWindow instead"))); |
168 | +typedef struct MirSurface MirSurface MIR_FOR_REMOVAL_IN_VERSION_1("Use MirWindow instead"); |
169 | typedef struct MirSurface MirWindow; |
170 | -typedef struct MirSurfaceSpec MirSurfaceSpec __attribute__((deprecated("Use MirWindowSpec instead"))); |
171 | +typedef struct MirSurfaceSpec MirSurfaceSpec MIR_FOR_REMOVAL_IN_VERSION_1("Use MirWindowSpec instead"); |
172 | typedef struct MirSurfaceSpec MirWindowSpec; |
173 | typedef struct MirScreencast MirScreencast; |
174 | typedef struct MirScreencastSpec MirScreencastSpec; |
175 | typedef struct MirPromptSession MirPromptSession; |
176 | typedef struct MirBufferStream MirBufferStream; |
177 | -typedef struct MirPersistentId MirPersistentId __attribute((deprecated("Use MirWindowId instead"))); |
178 | +typedef struct MirPersistentId MirPersistentId MIR_FOR_REMOVAL_IN_VERSION_1("Use MirWindowId instead"); |
179 | typedef struct MirPersistentId MirWindowId; |
180 | typedef struct MirBlob MirBlob; |
181 | typedef struct MirDisplayConfig MirDisplayConfig; |
182 | typedef struct MirError MirError; |
183 | typedef struct MirPresentationChain MirPresentationChain; |
184 | typedef struct MirBuffer MirBuffer; |
185 | -typedef struct MirRenderSurface MirRenderSurface |
186 | -__attribute__((deprecated("This type is slated for rename due to MirRenderSurface-->MirSurface transition"))); |
187 | +typedef struct MirRenderSurface MirRenderSurface; |
188 | |
189 | /** |
190 | * Descriptor for an output connection. |
191 | @@ -82,7 +82,7 @@ |
192 | typedef void (*MirConnectedCallback)( |
193 | MirConnection *connection, void *client_context); |
194 | typedef MirConnectedCallback mir_connected_callback |
195 | - __attribute__((deprecated("Use MirConnectedCallback instead"))); |
196 | + MIR_FOR_REMOVAL_IN_VERSION_1("Use MirConnectedCallback instead"); |
197 | |
198 | /** |
199 | * Callback to be passed when calling window functions : |
200 | @@ -102,7 +102,7 @@ |
201 | typedef void (*MirBufferStreamCallback)( |
202 | MirBufferStream *stream, void *client_context); |
203 | typedef MirBufferStreamCallback mir_buffer_stream_callback |
204 | - __attribute__((deprecated("Use MirBufferStreamCallback instead"))); |
205 | + MIR_FOR_REMOVAL_IN_VERSION_1("Use MirBufferStreamCallback instead"); |
206 | |
207 | /** |
208 | * Callback for handling of window events. |
209 | @@ -124,7 +124,7 @@ |
210 | typedef void (*MirLifecycleEventCallback)( |
211 | MirConnection* connection, MirLifecycleState state, void* context); |
212 | typedef MirLifecycleEventCallback mir_lifecycle_event_callback |
213 | - __attribute__((deprecated("Use MirLifecycleEventCallback instead"))); |
214 | + MIR_FOR_REMOVAL_IN_VERSION_1("Use MirLifecycleEventCallback instead"); |
215 | |
216 | /** |
217 | * Callback called when the server pings for responsiveness testing. |
218 | @@ -136,7 +136,7 @@ |
219 | typedef void (*MirPingEventCallback)( |
220 | MirConnection* connection, int32_t serial, void* context); |
221 | typedef MirPingEventCallback mir_ping_event_callback |
222 | - __attribute__((deprecated("Use MirPingEventCallback instead"))); |
223 | + MIR_FOR_REMOVAL_IN_VERSION_1("Use MirPingEventCallback instead"); |
224 | |
225 | /** |
226 | * Callback called when a display config change has occurred |
227 | @@ -147,7 +147,7 @@ |
228 | typedef void (*MirDisplayConfigCallback)( |
229 | MirConnection* connection, void* context); |
230 | typedef MirDisplayConfigCallback mir_display_config_callback |
231 | - __attribute__((deprecated("Use MirDisplayConfigCallback instead"))); |
232 | + MIR_FOR_REMOVAL_IN_VERSION_1("Use MirDisplayConfigCallback instead"); |
233 | |
234 | /** |
235 | * Callback called when a request for client file descriptors completes |
236 | @@ -162,7 +162,7 @@ |
237 | typedef void (*MirClientFdCallback)( |
238 | MirPromptSession *prompt_session, size_t count, int const* fds, void* context); |
239 | typedef MirClientFdCallback mir_client_fd_callback |
240 | - __attribute__((deprecated("Use MirClientFdCallback instead"))); |
241 | + MIR_FOR_REMOVAL_IN_VERSION_1("Use MirClientFdCallback instead"); |
242 | |
243 | #pragma GCC diagnostic push |
244 | #pragma GCC diagnostic ignored "-Wdeprecated-declarations" |
245 | @@ -201,7 +201,7 @@ |
246 | * use the value mir_display_output_id_invalid. |
247 | */ |
248 | uint32_t output_id; |
249 | -} MirSurfaceParameters __attribute__((deprecated("Use MirWindowParameters instead"))); |
250 | +} MirSurfaceParameters MIR_FOR_REMOVAL_IN_VERSION_1("Use mir_window_get apis or listen for attribute events instead"); |
251 | |
252 | enum { mir_platform_package_max = 32 }; |
253 | |
254 | @@ -214,7 +214,7 @@ |
255 | * \todo This should be removed from the public API at the next API break. |
256 | */ |
257 | #ifndef __cplusplus |
258 | -__attribute__ ((deprecated)) |
259 | +MIR_FOR_REMOVAL_IN_VERSION_1("Use of this type is inherently non-portable") |
260 | #endif |
261 | typedef enum MirPlatformType |
262 | { |
263 | @@ -429,7 +429,7 @@ |
264 | typedef void (*MirScreencastCallback)( |
265 | MirScreencast *screencast, void *client_context); |
266 | typedef MirScreencastCallback mir_screencast_callback |
267 | - __attribute__((deprecated("Use MirScreencastCallback instead"))); |
268 | + MIR_FOR_REMOVAL_IN_VERSION_1("Use MirScreencastCallback instead"); |
269 | |
270 | /** |
271 | * Callback member of MirPromptSession for handling of prompt sessions. |
272 | @@ -439,7 +439,7 @@ |
273 | typedef void (*MirPromptSessionCallback)( |
274 | MirPromptSession* prompt_provider, void* context); |
275 | typedef MirPromptSessionCallback mir_prompt_session_callback |
276 | - __attribute__((deprecated("Use MirPromptSessionCallback instead"))); |
277 | + MIR_FOR_REMOVAL_IN_VERSION_1("Use MirPromptSessionCallback instead"); |
278 | |
279 | /** |
280 | * Callback member of MirPromptSession for handling of prompt sessions events. |
281 | @@ -452,7 +452,7 @@ |
282 | void* context); |
283 | typedef MirPromptSessionStateChangeCallback |
284 | mir_prompt_session_state_change_callback |
285 | - __attribute__((deprecated("Use MirPromptSessionStateChangeCallback instead"))); |
286 | + MIR_FOR_REMOVAL_IN_VERSION_1("Use MirPromptSessionStateChangeCallback instead"); |
287 | |
288 | /** |
289 | * Callback called when a platform operation completes. |
290 | @@ -467,7 +467,7 @@ |
291 | typedef void (*MirPlatformOperationCallback)( |
292 | MirConnection* connection, MirPlatformMessage* reply, void* context); |
293 | typedef MirPlatformOperationCallback mir_platform_operation_callback |
294 | - __attribute__((deprecated("Use MirPlatformOperationCallback instead"))); |
295 | + MIR_FOR_REMOVAL_IN_VERSION_1("Use MirPlatformOperationCallback instead"); |
296 | |
297 | /** |
298 | * Callback called when a change of input devices has occurred |
299 | @@ -479,7 +479,7 @@ |
300 | typedef void (*MirInputConfigCallback)( |
301 | MirConnection* connection, void* context); |
302 | typedef MirInputConfigCallback mir_input_config_callback |
303 | - __attribute__((deprecated("Use MirInputConfigCallback instead"))); |
304 | + MIR_FOR_REMOVAL_IN_VERSION_1("Use MirInputConfigCallback instead"); |
305 | |
306 | typedef void (*MirBufferCallback)(MirBuffer*, void* context); |
307 | |
308 | @@ -539,24 +539,21 @@ |
309 | typedef void (*MirErrorCallback)( |
310 | MirConnection* connection, MirError const* error, void* context); |
311 | typedef MirErrorCallback mir_error_callback |
312 | - __attribute__((deprecated("Use MirErrorCallback instead"))); |
313 | + MIR_FOR_REMOVAL_IN_VERSION_1("Use MirErrorCallback instead"); |
314 | |
315 | #pragma GCC diagnostic push |
316 | #pragma GCC diagnostic ignored "-Wdeprecated-declarations" |
317 | |
318 | typedef void (*mir_surface_callback)(MirSurface *surface, void *client_context) |
319 | -__attribute__((deprecated("Use MirWindowCallback instead"))); |
320 | +MIR_FOR_REMOVAL_IN_VERSION_1("Use MirWindowCallback instead"); |
321 | |
322 | typedef void (*mir_surface_event_callback)( |
323 | MirSurface* surface, MirEvent const* event, void* context) |
324 | -__attribute__((deprecated("Use MirWindowEventCallback instead"))); |
325 | +MIR_FOR_REMOVAL_IN_VERSION_1("Use MirWindowEventCallback instead"); |
326 | |
327 | typedef void (*mir_surface_id_callback)( |
328 | MirSurface* surface, MirPersistentId* id, void* context) |
329 | -__attribute__((deprecated("Use MirWindowIdCallback instead"))); |
330 | - |
331 | -typedef void (*MirRenderSurfaceCallback)(MirRenderSurface*, void* context) |
332 | -__attribute__((deprecated("This type is slated for rename due to MirRenderSurface-->MirSurface transition"))); |
333 | +MIR_FOR_REMOVAL_IN_VERSION_1("Use MirWindowIdCallback instead"); |
334 | |
335 | typedef MirSurfaceParameters MirWindowParameters; |
336 | |
337 | |
338 | === modified file 'include/client/mir_toolkit/debug/surface.h' |
339 | --- include/client/mir_toolkit/debug/surface.h 2017-01-18 04:43:15 +0000 |
340 | +++ include/client/mir_toolkit/debug/surface.h 2017-05-26 16:23:13 +0000 |
341 | @@ -19,6 +19,7 @@ |
342 | #define MIR_CLIENT_LIBRARY_DEBUG_H |
343 | |
344 | #include <mir_toolkit/mir_client_library.h> |
345 | +#include <mir_toolkit/deprecations.h> |
346 | |
347 | /* This header defines debug interfaces that aren't expected to be generally useful |
348 | * and do not have the same API-stability guarantees that the main API has */ |
349 | @@ -65,13 +66,13 @@ |
350 | bool mir_debug_surface_coords_to_screen(MirSurface *surface, |
351 | int x, int y, |
352 | int* screen_x, int* screen_y) |
353 | -__attribute__((deprecated("Use mir_extension_window_coordinate_translation instead"))); |
354 | +MIR_FOR_REMOVAL_IN_VERSION_1("Use mir_extension_window_coordinate_translation instead"); |
355 | |
356 | int mir_debug_surface_id(MirSurface *surface) |
357 | -__attribute__((deprecated("Use mir_debug_window_id() instead"))); |
358 | +MIR_FOR_REMOVAL_IN_VERSION_1("Use mir_debug_window_id() instead"); |
359 | |
360 | uint32_t mir_debug_surface_current_buffer_id(MirSurface *surface) |
361 | -__attribute__((deprecated("Use mir_debug_window_current_buffer_id() instead"))); |
362 | +MIR_FOR_REMOVAL_IN_VERSION_1("Use mir_debug_window_current_buffer_id() instead"); |
363 | |
364 | #pragma GCC diagnostic pop |
365 | |
366 | |
367 | === modified file 'include/client/mir_toolkit/events/event.h' |
368 | --- include/client/mir_toolkit/events/event.h 2017-01-25 08:12:00 +0000 |
369 | +++ include/client/mir_toolkit/events/event.h 2017-05-26 16:23:13 +0000 |
370 | @@ -22,6 +22,7 @@ |
371 | #include <stddef.h> |
372 | #include <stdint.h> |
373 | #include "mir_toolkit/common.h" |
374 | +#include <mir_toolkit/deprecations.h> |
375 | |
376 | #ifdef __cplusplus |
377 | /** |
378 | @@ -58,24 +59,24 @@ |
379 | #pragma GCC diagnostic pop |
380 | |
381 | typedef struct MirSurfaceEvent MirSurfaceEvent |
382 | - __attribute__ ((deprecated("use MirWindowEvent instead"))); |
383 | + MIR_FOR_REMOVAL_IN_VERSION_1("use MirWindowEvent instead"); |
384 | typedef struct MirSurfaceEvent MirWindowEvent; |
385 | typedef struct MirResizeEvent MirResizeEvent; |
386 | typedef struct MirPromptSessionEvent MirPromptSessionEvent; |
387 | typedef struct MirOrientationEvent MirOrientationEvent; |
388 | typedef struct MirCloseSurfaceEvent MirCloseSurfaceEvent |
389 | - __attribute__ ((deprecated("use MirCloseWindowEvent instead"))); |
390 | + MIR_FOR_REMOVAL_IN_VERSION_1("use MirCloseWindowEvent instead"); |
391 | typedef struct MirCloseSurfaceEvent MirCloseWindowEvent; |
392 | typedef struct MirInputEvent MirInputEvent; |
393 | typedef struct MirKeymapEvent MirKeymapEvent; |
394 | typedef struct MirInputConfigurationEvent MirInputConfigurationEvent |
395 | - __attribute__ ((deprecated("Use MirInputDeviceStateEvent and the MirInputConfig callback instead"))); |
396 | + MIR_FOR_REMOVAL_IN_VERSION_1("Use MirInputDeviceStateEvent and the MirInputConfig callback instead"); |
397 | typedef struct MirSurfaceOutputEvent MirSurfaceOutputEvent |
398 | - __attribute__ ((deprecated("use MirWindowOutputEvent instead"))); |
399 | + MIR_FOR_REMOVAL_IN_VERSION_1("use MirWindowOutputEvent instead"); |
400 | typedef struct MirSurfaceOutputEvent MirWindowOutputEvent; |
401 | typedef struct MirInputDeviceStateEvent MirInputDeviceStateEvent; |
402 | typedef struct MirSurfacePlacementEvent MirSurfacePlacementEvent |
403 | - __attribute__ ((deprecated("use MirWindowPlacementEvent instead"))); |
404 | + MIR_FOR_REMOVAL_IN_VERSION_1("use MirWindowPlacementEvent instead"); |
405 | typedef struct MirSurfacePlacementEvent MirWindowPlacementEvent; |
406 | |
407 | typedef struct MirCookie MirCookie; |
408 | @@ -136,7 +137,7 @@ |
409 | * \return The associated MirSurfaceEvent |
410 | */ |
411 | MirSurfaceEvent const* mir_event_get_surface_event(MirEvent const* event) |
412 | -__attribute__ ((deprecated("use mir_event_get_window_event instead"))); |
413 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_event_get_window_event instead"); |
414 | |
415 | /** |
416 | * Retrieve the MirWindowEvent associated with a MirEvent of |
417 | @@ -195,7 +196,7 @@ |
418 | * \return The associated MirCloseSurfaceEvent |
419 | */ |
420 | /// @cond |
421 | -__attribute__ ((deprecated)) |
422 | +MIR_FOR_REMOVAL_IN_VERSION_1("Use of this function is pointless as there is no way to use the return value") |
423 | /// @endcond |
424 | MirCloseSurfaceEvent const* mir_event_get_close_surface_event(MirEvent const* event); |
425 | #pragma GCC diagnostic pop |
426 | @@ -223,7 +224,7 @@ |
427 | * \return The associated MirInputConfigurationEvent |
428 | */ |
429 | /// @cond |
430 | -__attribute__((deprecated)) |
431 | +MIR_FOR_REMOVAL_IN_VERSION_1("Input devices and changes to the input devices are indicated via the MirInputConfigCallback") |
432 | /// @endcond |
433 | MirInputConfigurationEvent const* mir_event_get_input_configuration_event(MirEvent const* event); |
434 | #pragma GCC diagnostic pop |
435 | @@ -242,7 +243,7 @@ |
436 | * \return The associated MirSurfaceOutputEvent |
437 | */ |
438 | MirSurfaceOutputEvent const* mir_event_get_surface_output_event(MirEvent const* event) |
439 | -__attribute__((deprecated("use mir_event_get_window_output_event"))); |
440 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_event_get_window_output_event"); |
441 | |
442 | /** |
443 | * Retrieve the MirWindowOutputEvent associated with a MirEvent of type |
444 | @@ -279,7 +280,7 @@ |
445 | * \return The associated MirSurfacePlacementEvent |
446 | */ |
447 | MirSurfacePlacementEvent const* mir_event_get_surface_placement_event(MirEvent const* event) |
448 | -__attribute__((deprecated("use mir_event_get_window_placement_event"))); |
449 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_event_get_window_placement_event"); |
450 | |
451 | /** |
452 | * Retrieve the MirWindowPlacementEvent associated with a MirEvent of |
453 | |
454 | === modified file 'include/client/mir_toolkit/events/input_configuration_event.h' |
455 | --- include/client/mir_toolkit/events/input_configuration_event.h 2017-01-20 16:27:50 +0000 |
456 | +++ include/client/mir_toolkit/events/input_configuration_event.h 2017-05-26 16:23:13 +0000 |
457 | @@ -20,6 +20,7 @@ |
458 | #define MIR_TOOLKIT_EVENTS_INPUT_CONFIGURATION_EVENT_H_ |
459 | |
460 | #include <mir_toolkit/events/event.h> |
461 | +#include <mir_toolkit/deprecations.h> |
462 | |
463 | #ifdef __cplusplus |
464 | /** |
465 | @@ -45,7 +46,7 @@ |
466 | mir_input_configuration_action_configuration_changed, |
467 | mir_input_configuration_action_device_reset |
468 | } MirInputConfigurationAction |
469 | -__attribute__((deprecated)); |
470 | +MIR_FOR_REMOVAL_IN_VERSION_1("Input devices and changes to the input devices are indicated via the MirInputConfigCallback"); |
471 | |
472 | #pragma GCC diagnostic push |
473 | #pragma GCC diagnostic ignored "-Wdeprecated-declarations" |
474 | @@ -55,7 +56,8 @@ |
475 | * \param[in] ev The input configuration event |
476 | * \return The action |
477 | */ |
478 | -MirInputConfigurationAction mir_input_configuration_event_get_action(MirInputConfigurationEvent const* ev) __attribute__((deprecated)); |
479 | +MirInputConfigurationAction mir_input_configuration_event_get_action(MirInputConfigurationEvent const* ev) |
480 | +MIR_FOR_REMOVAL_IN_VERSION_1("Input devices and changes to the input devices are indicated via the MirInputConfigCallback"); |
481 | |
482 | /** |
483 | * Retreive the time associated with a MirInputConfiguration event |
484 | @@ -63,7 +65,8 @@ |
485 | * \param[in] ev The input configuration event |
486 | * \return The time in nanoseconds since epoch |
487 | */ |
488 | -int64_t mir_input_configuration_event_get_time(MirInputConfigurationEvent const* ev) __attribute__((deprecated)); |
489 | +int64_t mir_input_configuration_event_get_time(MirInputConfigurationEvent const* ev) |
490 | +MIR_FOR_REMOVAL_IN_VERSION_1("Input devices and changes to the input devices are indicated via the MirInputConfigCallback"); |
491 | |
492 | /** |
493 | * Retreive the device id associated with a MirInputConfiguration event |
494 | @@ -71,7 +74,8 @@ |
495 | * \param[in] ev The input configuration event |
496 | * \return The device id or -1 if not applicable to events of this action |
497 | */ |
498 | -MirInputDeviceId mir_input_configuration_event_get_device_id(MirInputConfigurationEvent const* ev) __attribute__((deprecated)); |
499 | +MirInputDeviceId mir_input_configuration_event_get_device_id(MirInputConfigurationEvent const* ev) |
500 | +MIR_FOR_REMOVAL_IN_VERSION_1("Input devices and changes to the input devices are indicated via the MirInputConfigCallback"); |
501 | #pragma GCC diagnostic pop |
502 | |
503 | #ifdef __cplusplus |
504 | |
505 | === modified file 'include/client/mir_toolkit/events/keymap_event.h' |
506 | --- include/client/mir_toolkit/events/keymap_event.h 2017-01-18 02:29:37 +0000 |
507 | +++ include/client/mir_toolkit/events/keymap_event.h 2017-05-26 16:23:13 +0000 |
508 | @@ -42,7 +42,7 @@ |
509 | */ |
510 | void mir_keymap_event_get_rules(MirKeymapEvent const* ev, |
511 | struct xkb_rule_names* rules) |
512 | - __attribute__ ((deprecated)); |
513 | +MIR_FOR_REMOVAL_IN_VERSION_1("Use mir_keymap_event_get_keymap_buffer() instead"); |
514 | |
515 | /** |
516 | * Retrieve the new keymap reported by this MirKeymapEvent |
517 | |
518 | === modified file 'include/client/mir_toolkit/events/surface_event.h' |
519 | --- include/client/mir_toolkit/events/surface_event.h 2017-01-23 03:38:33 +0000 |
520 | +++ include/client/mir_toolkit/events/surface_event.h 2017-05-26 16:23:13 +0000 |
521 | @@ -20,6 +20,7 @@ |
522 | #define MIR_TOOLKIT_EVENTS_SURFACE_EVENT_H_ |
523 | |
524 | #include <mir_toolkit/events/event.h> |
525 | +#include <mir_toolkit/deprecations.h> |
526 | |
527 | #ifdef __cplusplus |
528 | /** |
529 | @@ -39,7 +40,7 @@ |
530 | * \return The associated attribute |
531 | */ |
532 | MirSurfaceAttrib mir_surface_event_get_attribute(MirSurfaceEvent const* event) |
533 | -__attribute__ ((deprecated("use mir_window_event_get_attribute instead"))); |
534 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_event_get_attribute instead"); |
535 | |
536 | /** |
537 | * Retrieve the new value of the associated attribute for a given MirSurfaceEvent |
538 | @@ -48,7 +49,7 @@ |
539 | * \return The associated attribute value |
540 | */ |
541 | int mir_surface_event_get_attribute_value(MirSurfaceEvent const* event) |
542 | -__attribute__ ((deprecated("use make_event with mir_window_event_get_attribute_value instead"))); |
543 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_event_get_attribute_value with MirWindowEvent instead"); |
544 | #pragma GCC diagnostic pop |
545 | |
546 | #ifdef __cplusplus |
547 | |
548 | === modified file 'include/client/mir_toolkit/events/surface_output_event.h' |
549 | --- include/client/mir_toolkit/events/surface_output_event.h 2017-01-23 03:38:33 +0000 |
550 | +++ include/client/mir_toolkit/events/surface_output_event.h 2017-05-26 16:23:13 +0000 |
551 | @@ -20,6 +20,7 @@ |
552 | #define MIR_TOOLKIT_SURFACE_OUTPUT_EVENT_H_ |
553 | |
554 | #include <mir_toolkit/events/event.h> |
555 | +#include <mir_toolkit/deprecations.h> |
556 | |
557 | #ifdef __cplusplus |
558 | /** |
559 | @@ -39,7 +40,7 @@ |
560 | * \return The new DPI value for the surface is primarily on. |
561 | */ |
562 | int mir_surface_output_event_get_dpi(MirSurfaceOutputEvent const* ev) |
563 | -__attribute__ ((deprecated("use mir_window_output_event_get_dpi instead"))); |
564 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_output_event_get_dpi instead"); |
565 | |
566 | /** |
567 | * Retrieve the form factor of the new output configuration of a MirSurfaceOutputEvent |
568 | @@ -48,7 +49,7 @@ |
569 | * \return The new form factor of the output the surface is primarily on. |
570 | */ |
571 | MirFormFactor mir_surface_output_event_get_form_factor(MirSurfaceOutputEvent const* ev) |
572 | -__attribute__ ((deprecated("use mir_window_output_event_get_form_factor instead"))); |
573 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_output_event_get_form_factor instead"); |
574 | |
575 | /** |
576 | * Retrieve the suggested scaling factor of the new output configuration of a |
577 | @@ -58,7 +59,7 @@ |
578 | * \return The new scaling factor of the output the surface is primarily on. |
579 | */ |
580 | float mir_surface_output_event_get_scale(MirSurfaceOutputEvent const* ev) |
581 | -__attribute__ ((deprecated("use mir_window_output_event_get_scale instead"))); |
582 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_output_event_get_scale instead"); |
583 | |
584 | /** |
585 | * Retrieve the maximum refresh rate of the output(s) associated with a |
586 | @@ -70,7 +71,7 @@ |
587 | * \return The refresh rate in Hz |
588 | */ |
589 | double mir_surface_output_event_get_refresh_rate(MirSurfaceOutputEvent const* ev) |
590 | -__attribute__ ((deprecated("use mir_window_output_event_get_refresh_rate instead"))); |
591 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_output_event_get_refresh_rate instead"); |
592 | |
593 | /** |
594 | * Retrieve the ID of the output this surface is on from a MirSurfaceOutputEvent |
595 | @@ -80,7 +81,7 @@ |
596 | * (From MirDisplayOutput::output_id) |
597 | */ |
598 | uint32_t mir_surface_output_event_get_output_id(MirSurfaceOutputEvent const *ev) |
599 | -__attribute__ ((deprecated("use mir_window_output_event_get_output_id instead"))); |
600 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_output_event_get_output_id instead"); |
601 | |
602 | #pragma GCC diagnostic pop |
603 | |
604 | |
605 | === modified file 'include/client/mir_toolkit/events/surface_placement.h' |
606 | --- include/client/mir_toolkit/events/surface_placement.h 2017-01-19 05:30:03 +0000 |
607 | +++ include/client/mir_toolkit/events/surface_placement.h 2017-05-26 16:23:13 +0000 |
608 | @@ -20,6 +20,7 @@ |
609 | #define MIR_TOOLKIT_SURFACE_PLACEMENT_H_ |
610 | |
611 | #include <mir_toolkit/client_types.h> |
612 | +#include <mir_toolkit/deprecations.h> |
613 | |
614 | #ifdef __cplusplus |
615 | /** |
616 | @@ -38,7 +39,7 @@ |
617 | * \return The position relative to the parent surface |
618 | */ |
619 | MirRectangle mir_surface_placement_get_relative_position(MirSurfacePlacementEvent const* event) |
620 | -__attribute__ ((deprecated("use mir_window_placement_get_relative_position instead"))); |
621 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_placement_get_relative_position instead"); |
622 | |
623 | #ifdef __cplusplus |
624 | } |
625 | |
626 | === modified file 'include/client/mir_toolkit/mir_blob.h' |
627 | --- include/client/mir_toolkit/mir_blob.h 2017-01-19 05:30:03 +0000 |
628 | +++ include/client/mir_toolkit/mir_blob.h 2017-05-26 16:23:13 +0000 |
629 | @@ -19,6 +19,7 @@ |
630 | #define MIR_TOOLKIT_MIR_BLOB_H_ |
631 | |
632 | #include <mir_toolkit/client_types.h> |
633 | +#include <mir_toolkit/deprecations.h> |
634 | |
635 | #ifdef __cplusplus |
636 | /** |
637 | @@ -35,7 +36,7 @@ |
638 | * \return A blob |
639 | */ |
640 | MirBlob* mir_blob_from_display_configuration(MirDisplayConfiguration* configuration) |
641 | -__attribute__ ((deprecated("use mir_blob_from_display_config instead"))); |
642 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_blob_from_display_config instead"); |
643 | |
644 | /** |
645 | * Create a blob from a display config |
646 | @@ -65,7 +66,7 @@ |
647 | * \return A display configuration |
648 | */ |
649 | MirDisplayConfiguration* mir_blob_to_display_configuration(MirBlob* blob) |
650 | -__attribute__ ((deprecated("use mir_blob_to_display_config instead"))); |
651 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_blob_to_display_config instead"); |
652 | |
653 | /** |
654 | * Create a blob from a display config |
655 | |
656 | === modified file 'include/client/mir_toolkit/mir_buffer_stream.h' |
657 | --- include/client/mir_toolkit/mir_buffer_stream.h 2017-01-24 07:49:13 +0000 |
658 | +++ include/client/mir_toolkit/mir_buffer_stream.h 2017-05-26 16:23:13 +0000 |
659 | @@ -20,6 +20,7 @@ |
660 | |
661 | #include <mir_toolkit/mir_native_buffer.h> |
662 | #include <mir_toolkit/client_types.h> |
663 | +#include <mir_toolkit/deprecations.h> |
664 | |
665 | #ifdef __cplusplus |
666 | /** |
667 | @@ -141,7 +142,8 @@ |
668 | * mir_platform_type_gbm |
669 | */ |
670 | /// @cond |
671 | -__attribute__ ((deprecated)) |
672 | +MIR_FOR_REMOVAL_IN_VERSION_1("To identify the graphics platform use mir_connection_get_graphics_module(). \n" |
673 | + "To safely interpret the buffer contents use mir_buffer_stream_get_graphics_region()") |
674 | /// @endcond |
675 | MirPlatformType mir_buffer_stream_get_platform_type(MirBufferStream *stream); |
676 | |
677 | |
678 | === modified file 'include/client/mir_toolkit/mir_connection.h' |
679 | --- include/client/mir_toolkit/mir_connection.h 2017-01-24 19:53:45 +0000 |
680 | +++ include/client/mir_toolkit/mir_connection.h 2017-05-26 16:23:13 +0000 |
681 | @@ -20,6 +20,7 @@ |
682 | |
683 | #include <mir_toolkit/client_types.h> |
684 | #include <mir_toolkit/common.h> |
685 | +#include <mir_toolkit/deprecations.h> |
686 | |
687 | #include <stdbool.h> |
688 | |
689 | @@ -93,7 +94,7 @@ |
690 | * \param [out] platform_package Structure to be populated |
691 | */ |
692 | void mir_connection_get_platform(MirConnection *connection, MirPlatformPackage *platform_package) |
693 | -__attribute__((deprecated("use platform extensions instead"))); |
694 | +MIR_FOR_REMOVAL_IN_VERSION_1("use platform extensions instead"); |
695 | |
696 | /** |
697 | * Query graphics platform module. |
698 | @@ -105,7 +106,7 @@ |
699 | * \param [out] properties Structure to be populated |
700 | */ |
701 | void mir_connection_get_graphics_module(MirConnection *connection, MirModuleProperties *properties) |
702 | -__attribute__((deprecated("use graphics module extension instead"))); |
703 | +MIR_FOR_REMOVAL_IN_VERSION_1("use graphics module extension instead"); |
704 | |
705 | /** |
706 | * Register a callback to be called when a Lifecycle state change occurs. |
707 | @@ -156,7 +157,7 @@ |
708 | * \return structure that describes the display configuration |
709 | */ |
710 | MirDisplayConfiguration* mir_connection_create_display_config(MirConnection *connection) |
711 | -__attribute__ ((deprecated("use mir_connection_create_display_configuration instead"))); |
712 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_connection_create_display_configuration instead"); |
713 | |
714 | /** |
715 | * Query the display |
716 | @@ -188,7 +189,7 @@ |
717 | * \param [in] display_configuration The display_configuration information resource to be destroyed |
718 | */ |
719 | void mir_display_config_destroy(MirDisplayConfiguration* display_configuration) |
720 | -__attribute__ ((deprecated("use mir_display_config_release instead"))); |
721 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_display_config_release instead"); |
722 | |
723 | /** |
724 | * Apply the display configuration |
725 | @@ -204,7 +205,7 @@ |
726 | * \return A handle that can be passed to mir_wait_for |
727 | */ |
728 | MirWaitHandle* mir_connection_apply_display_config(MirConnection *connection, MirDisplayConfiguration* display_configuration) |
729 | -__attribute__ ((deprecated("use mir_connection_apply_session_display_config instead"))); |
730 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_connection_apply_session_display_config instead"); |
731 | |
732 | /** |
733 | * Apply the display config for the connection |
734 | @@ -254,7 +255,7 @@ |
735 | MirWaitHandle* mir_connection_set_base_display_config( |
736 | MirConnection* connection, |
737 | MirDisplayConfiguration const* display_configuration) |
738 | -__attribute__ ((deprecated("use mir_connection_preview_base_display_configuration/mir_connection_confirm_base_display_configuration"))); |
739 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_connection_preview_base_display_configuration/mir_connection_confirm_base_display_configuration"); |
740 | |
741 | |
742 | /** |
743 | @@ -379,7 +380,7 @@ |
744 | MirConnection* connection, |
745 | MirPlatformMessage const* request, |
746 | MirPlatformOperationCallback callback, void* context) |
747 | -__attribute__ ((deprecated("use platform specific extensions instead"))); |
748 | +MIR_FOR_REMOVAL_IN_VERSION_1("use platform specific extensions instead"); |
749 | |
750 | /** |
751 | * Create a snapshot of the attached input devices and device configurations. |
752 | @@ -399,7 +400,7 @@ |
753 | * \param [in] config The input configuration |
754 | */ |
755 | void mir_input_config_destroy(MirInputConfig const* config) |
756 | -__attribute__ ((deprecated("use mir_input_config_release instead"))); |
757 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_input_config_release instead"); |
758 | |
759 | /** |
760 | * Release this snapshot of the input configuration. |
761 | |
762 | === modified file 'include/client/mir_toolkit/mir_cursor_configuration.h' |
763 | --- include/client/mir_toolkit/mir_cursor_configuration.h 2017-01-18 02:29:37 +0000 |
764 | +++ include/client/mir_toolkit/mir_cursor_configuration.h 2017-05-26 16:23:13 +0000 |
765 | @@ -20,6 +20,7 @@ |
766 | |
767 | #include <mir_toolkit/common.h> |
768 | #include <mir_toolkit/client_types.h> |
769 | +#include <mir_toolkit/deprecations.h> |
770 | |
771 | /** |
772 | * Opaque structure containing cursor parameterization. Create with mir_cursor* family. |
773 | @@ -53,7 +54,7 @@ |
774 | * to_mir_cursor_configuration_destroy |
775 | */ |
776 | /// @cond |
777 | -__attribute__ ((deprecated)) |
778 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_spec_set_cursor_name()") |
779 | /// @endcond |
780 | MirCursorConfiguration *mir_cursor_configuration_from_name(char const* name); |
781 | |
782 | |
783 | === modified file 'include/client/mir_toolkit/mir_display_configuration.h' |
784 | --- include/client/mir_toolkit/mir_display_configuration.h 2017-02-20 05:36:21 +0000 |
785 | +++ include/client/mir_toolkit/mir_display_configuration.h 2017-05-26 16:23:13 +0000 |
786 | @@ -20,6 +20,7 @@ |
787 | #define MIR_TOOLKIT_MIR_DISPLAY_CONFIGURATION_H_ |
788 | |
789 | #include "client_types.h" |
790 | +#include <mir_toolkit/deprecations.h> |
791 | |
792 | #ifdef __cplusplus |
793 | extern "C" { |
794 | @@ -60,7 +61,7 @@ |
795 | */ |
796 | int mir_display_config_get_max_simultaneous_outputs( |
797 | MirDisplayConfig const* config) |
798 | - __attribute__((deprecated("Not accurate in Mir 0.26 and later. May be removed in future."))); |
799 | + MIR_FOR_REMOVAL_IN_VERSION_1("Not accurate in Mir 0.26 and later. May be removed in future."); |
800 | |
801 | /** |
802 | * Get the number of outputs available in this display configuration. |
803 | @@ -268,7 +269,7 @@ |
804 | * \returns The name of the output type. |
805 | */ |
806 | char const* mir_display_output_type_name(MirDisplayOutputType type) |
807 | -__attribute__((deprecated("use mir_output_type_name instead"))); |
808 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_output_type_name instead"); |
809 | |
810 | /** |
811 | * Get the textual name of an output type. |
812 | |
813 | === modified file 'include/client/mir_toolkit/mir_persistent_id.h' |
814 | --- include/client/mir_toolkit/mir_persistent_id.h 2017-02-02 19:52:04 +0000 |
815 | +++ include/client/mir_toolkit/mir_persistent_id.h 2017-05-26 16:23:13 +0000 |
816 | @@ -19,6 +19,7 @@ |
817 | #define MIR_TOOLKIT_MIR_PERSISTENT_ID_H_ |
818 | |
819 | #include <mir_toolkit/client_types.h> |
820 | +#include <mir_toolkit/deprecations.h> |
821 | |
822 | #include <stdbool.h> |
823 | |
824 | @@ -39,7 +40,7 @@ |
825 | * \note This does not guarantee that the ID refers to a currently valid object. |
826 | */ |
827 | bool mir_persistent_id_is_valid(MirPersistentId* id) |
828 | -__attribute__((deprecated("Use mir_window_id_is_valid() instead"))); |
829 | +MIR_FOR_REMOVAL_IN_VERSION_1("Use mir_window_id_is_valid() instead"); |
830 | |
831 | /** |
832 | * \brief Free a MirPersistentId |
833 | @@ -48,7 +49,7 @@ |
834 | * object referred to by \arg id. |
835 | */ |
836 | void mir_persistent_id_release(MirPersistentId* id) |
837 | -__attribute__((deprecated("Use mir_window_id_release() instead"))); |
838 | +MIR_FOR_REMOVAL_IN_VERSION_1("Use mir_window_id_release() instead"); |
839 | |
840 | /** |
841 | * \brief Get a string representation of a MirSurfaceId |
842 | @@ -59,7 +60,7 @@ |
843 | * \see mir_surface_id_from_string |
844 | */ |
845 | char const* mir_persistent_id_as_string(MirPersistentId* id) |
846 | -__attribute__((deprecated("Use mir_window_id_as_string() instead"))); |
847 | +MIR_FOR_REMOVAL_IN_VERSION_1("Use mir_window_id_as_string() instead"); |
848 | |
849 | /** |
850 | * \brief Deserialise a string representation of a MirSurfaceId |
851 | @@ -67,7 +68,7 @@ |
852 | * \return The deserialised MirSurfaceId |
853 | */ |
854 | MirPersistentId* mir_persistent_id_from_string(char const* string_representation) |
855 | -__attribute__((deprecated("Use mir_window_id_from_string() instead"))); |
856 | +MIR_FOR_REMOVAL_IN_VERSION_1("Use mir_window_id_from_string() instead"); |
857 | |
858 | #pragma GCC diagnostic pop |
859 | |
860 | |
861 | === modified file 'include/client/mir_toolkit/mir_platform_message.h' |
862 | --- include/client/mir_toolkit/mir_platform_message.h 2017-01-18 02:29:37 +0000 |
863 | +++ include/client/mir_toolkit/mir_platform_message.h 2017-05-26 16:23:13 +0000 |
864 | @@ -19,6 +19,7 @@ |
865 | #define MIR_TOOLKIT_MIR_PLATFORM_MESSAGE_H_ |
866 | |
867 | #include <sys/types.h> |
868 | +#include <mir_toolkit/deprecations.h> |
869 | |
870 | #ifdef __cplusplus |
871 | /** |
872 | @@ -51,7 +52,7 @@ |
873 | * \param [in] opcode The platform message opcode |
874 | * \return The created MirPlatformMessage |
875 | */ |
876 | -__attribute__((deprecated("use mir_extension_mesa_drm_auth or mir_extension_set_gbm_device"))) |
877 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_extension_mesa_drm_auth or mir_extension_set_gbm_device") |
878 | MirPlatformMessage* mir_platform_message_create(unsigned int opcode); |
879 | |
880 | /** |
881 | @@ -59,7 +60,7 @@ |
882 | * |
883 | * \param [in] message The MirPlatformMessage |
884 | */ |
885 | -__attribute__((deprecated("use mir_extension_mesa_drm_auth or mir_extension_set_gbm_device"))) |
886 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_extension_mesa_drm_auth or mir_extension_set_gbm_device") |
887 | void mir_platform_message_release(MirPlatformMessage const* message); |
888 | |
889 | /** |
890 | @@ -71,7 +72,7 @@ |
891 | * \param [in] data Pointer to the data |
892 | * \param [in] data_size The size of the data in bytes |
893 | */ |
894 | -__attribute__((deprecated("use mir_extension_mesa_drm_auth or mir_extension_set_gbm_device"))) |
895 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_extension_mesa_drm_auth or mir_extension_set_gbm_device") |
896 | void mir_platform_message_set_data(MirPlatformMessage* message, void const* data, size_t data_size); |
897 | |
898 | /** |
899 | @@ -89,7 +90,7 @@ |
900 | * \param [in] fds Pointer to the array of fds |
901 | * \param [in] num_fds The number of fds |
902 | */ |
903 | -__attribute__((deprecated("use mir_extension_mesa_drm_auth or mir_extension_set_gbm_device"))) |
904 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_extension_mesa_drm_auth or mir_extension_set_gbm_device") |
905 | void mir_platform_message_set_fds(MirPlatformMessage* message, int const* fds, size_t num_fds); |
906 | |
907 | /** |
908 | @@ -98,7 +99,7 @@ |
909 | * \param [in] message The MirPlatformMessage |
910 | * \return The opcode |
911 | */ |
912 | -__attribute__((deprecated("use mir_extension_mesa_drm_auth or mir_extension_set_gbm_device"))) |
913 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_extension_mesa_drm_auth or mir_extension_set_gbm_device") |
914 | unsigned int mir_platform_message_get_opcode(MirPlatformMessage const* message); |
915 | |
916 | /** |
917 | @@ -111,7 +112,7 @@ |
918 | * \param [in] message The MirPlatformMessage |
919 | * \return The data |
920 | */ |
921 | -__attribute__((deprecated("use mir_extension_mesa_drm_auth or mir_extension_set_gbm_device"))) |
922 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_extension_mesa_drm_auth or mir_extension_set_gbm_device") |
923 | MirPlatformMessageData mir_platform_message_get_data(MirPlatformMessage const* message); |
924 | |
925 | /** |
926 | @@ -128,7 +129,7 @@ |
927 | * \param [in] message The MirPlatformMessage |
928 | * \return The fds |
929 | */ |
930 | -__attribute__((deprecated("use mir_extension_mesa_drm_auth or mir_extension_set_gbm_device"))) |
931 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_extension_mesa_drm_auth or mir_extension_set_gbm_device") |
932 | MirPlatformMessageFds mir_platform_message_get_fds(MirPlatformMessage const* message); |
933 | |
934 | #ifdef __cplusplus |
935 | |
936 | === modified file 'include/client/mir_toolkit/mir_screencast.h' |
937 | --- include/client/mir_toolkit/mir_screencast.h 2017-01-19 05:30:03 +0000 |
938 | +++ include/client/mir_toolkit/mir_screencast.h 2017-05-26 16:23:13 +0000 |
939 | @@ -18,6 +18,7 @@ |
940 | #define MIR_TOOLKIT_MIR_SCREENCAST_H_ |
941 | |
942 | #include <mir_toolkit/client_types.h> |
943 | +#include <mir_toolkit/deprecations.h> |
944 | |
945 | #ifdef __cplusplus |
946 | /** |
947 | @@ -143,7 +144,7 @@ |
948 | MirScreencast* mir_connection_create_screencast_sync( |
949 | MirConnection* connection, |
950 | MirScreencastParameters* parameters) |
951 | -__attribute__ ((deprecated("use mir_screencast_create_sync instead"))); |
952 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_screencast_create_sync instead"); |
953 | |
954 | /** |
955 | * Release the specified screencast. |
956 | |
957 | === modified file 'include/client/mir_toolkit/mir_surface.h' |
958 | --- include/client/mir_toolkit/mir_surface.h 2017-01-24 11:06:35 +0000 |
959 | +++ include/client/mir_toolkit/mir_surface.h 2017-05-26 16:23:13 +0000 |
960 | @@ -22,6 +22,7 @@ |
961 | #include <mir_toolkit/client_types.h> |
962 | #include <mir_toolkit/common.h> |
963 | #include <mir_toolkit/mir_cursor_configuration.h> |
964 | +#include <mir_toolkit/deprecations.h> |
965 | |
966 | #include <stdbool.h> |
967 | |
968 | @@ -40,7 +41,7 @@ |
969 | MirSurfaceSpec* mir_connection_create_spec_for_normal_surface(MirConnection* connection, |
970 | int width, int height, |
971 | MirPixelFormat format) |
972 | -__attribute__((deprecated("Use mir_create_normal_window_spec() instead"))); |
973 | +MIR_FOR_REMOVAL_IN_VERSION_1("Use mir_create_normal_window_spec() instead"); |
974 | |
975 | MirSurfaceSpec* |
976 | mir_connection_create_spec_for_menu(MirConnection* connection, |
977 | @@ -50,7 +51,7 @@ |
978 | MirSurface* parent, |
979 | MirRectangle* rect, |
980 | MirEdgeAttachment edge) |
981 | -__attribute__((deprecated("Use mir_specify_menu() instead"))); |
982 | +MIR_FOR_REMOVAL_IN_VERSION_1("Use mir_specify_menu() instead"); |
983 | |
984 | MirSurfaceSpec* |
985 | mir_connection_create_spec_for_tooltip(MirConnection* connection, |
986 | @@ -58,7 +59,7 @@ |
987 | MirPixelFormat format, |
988 | MirSurface* parent, |
989 | MirRectangle* zone) |
990 | -__attribute__((deprecated("Use mir_create_tip_window_spec() instead"))); |
991 | +MIR_FOR_REMOVAL_IN_VERSION_1("Use mir_create_tip_window_spec() instead"); |
992 | |
993 | MirSurfaceSpec* |
994 | mir_connection_create_spec_for_tip(MirConnection* connection, |
995 | @@ -67,30 +68,30 @@ |
996 | MirSurface* parent, |
997 | MirRectangle* rect, |
998 | MirEdgeAttachment edge) |
999 | -__attribute__((deprecated("Use mir_create_tip_window_spec() instead"))); |
1000 | +MIR_FOR_REMOVAL_IN_VERSION_1("Use mir_create_tip_window_spec() instead"); |
1001 | |
1002 | MirSurfaceSpec* |
1003 | mir_connection_create_spec_for_modal_dialog(MirConnection* connection, |
1004 | int width, int height, |
1005 | MirPixelFormat format, |
1006 | MirSurface* parent) |
1007 | -__attribute__((deprecated("Use mir_create_modal_dialog_window_spec() instead"))); |
1008 | +MIR_FOR_REMOVAL_IN_VERSION_1("Use mir_create_modal_dialog_window_spec() instead"); |
1009 | |
1010 | MirSurfaceSpec* |
1011 | mir_connection_create_spec_for_dialog(MirConnection* connection, |
1012 | int width, int height, |
1013 | MirPixelFormat format) |
1014 | -__attribute__((deprecated("Use mir_create_dialog_window_spec() instead"))); |
1015 | +MIR_FOR_REMOVAL_IN_VERSION_1("Use mir_create_dialog_window_spec() instead"); |
1016 | |
1017 | MirSurfaceSpec* mir_create_surface_spec(MirConnection* connection) |
1018 | -__attribute__((deprecated("Use mir_create_window_spec() instead"))); |
1019 | +MIR_FOR_REMOVAL_IN_VERSION_1("Use mir_create_window_spec() instead"); |
1020 | |
1021 | MirSurfaceSpec* |
1022 | mir_connection_create_spec_for_changes(MirConnection* connection) |
1023 | -__attribute__((deprecated("Use mir_create_window_spec() instead"))); |
1024 | +MIR_FOR_REMOVAL_IN_VERSION_1("Use mir_create_window_spec() instead"); |
1025 | |
1026 | void mir_surface_spec_set_parent(MirSurfaceSpec* spec, MirSurface* parent) |
1027 | -__attribute__((deprecated("Use mir_window_spec_set_parent() instead"))); |
1028 | +MIR_FOR_REMOVAL_IN_VERSION_1("Use mir_window_spec_set_parent() instead"); |
1029 | |
1030 | /** |
1031 | *\deprecated This will soon be a property of the backing content. |
1032 | @@ -103,77 +104,77 @@ |
1033 | * was removed by use of mir_window_spec_set_streams(). |
1034 | */ |
1035 | int mir_surface_get_swapinterval(MirSurface* surface) |
1036 | -__attribute__((deprecated("This will soon be a property of the backing content"))); |
1037 | +MIR_FOR_REMOVAL_IN_VERSION_1("This will soon be a property of the backing content"); |
1038 | |
1039 | void mir_surface_spec_set_type(MirSurfaceSpec* spec, MirSurfaceType type) |
1040 | -__attribute__((deprecated("use mir_window_spec_set_type() instead"))); |
1041 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_spec_set_type() instead"); |
1042 | |
1043 | void mir_surface_spec_set_name(MirSurfaceSpec* spec, char const* name) |
1044 | -__attribute__((deprecated("use mir_window_spec_set_name() instead"))); |
1045 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_spec_set_name() instead"); |
1046 | |
1047 | void mir_surface_spec_set_width(MirSurfaceSpec* spec, unsigned width) |
1048 | -__attribute__((deprecated("use mir_window_spec_set_width() instead"))); |
1049 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_spec_set_width() instead"); |
1050 | |
1051 | void mir_surface_spec_set_height(MirSurfaceSpec* spec, unsigned height) |
1052 | -__attribute__((deprecated("use mir_window_spec_set_height() instead"))); |
1053 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_spec_set_height() instead"); |
1054 | |
1055 | void mir_surface_spec_set_width_increment(MirSurfaceSpec* spec, unsigned width_inc) |
1056 | -__attribute__((deprecated("use mir_window_spec_set_width_increment() instead"))); |
1057 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_spec_set_width_increment() instead"); |
1058 | |
1059 | void mir_surface_spec_set_height_increment(MirSurfaceSpec* spec, unsigned height_inc) |
1060 | -__attribute__((deprecated("use mir_window_spec_set_height_increment() instead"))); |
1061 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_spec_set_height_increment() instead"); |
1062 | |
1063 | void mir_surface_spec_set_min_width(MirSurfaceSpec* spec, unsigned min_width) |
1064 | -__attribute__((deprecated("use mir_window_spec_set_min_width() instead"))); |
1065 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_spec_set_min_width() instead"); |
1066 | |
1067 | void mir_surface_spec_set_min_height(MirSurfaceSpec* spec, unsigned min_height) |
1068 | -__attribute__((deprecated("use mir_window_spec_set_min_height() instead"))); |
1069 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_spec_set_min_height() instead"); |
1070 | |
1071 | void mir_surface_spec_set_max_width(MirSurfaceSpec* spec, unsigned max_width) |
1072 | -__attribute__((deprecated("use mir_window_spec_set_max_width() instead"))); |
1073 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_spec_set_max_width() instead"); |
1074 | |
1075 | void mir_surface_spec_set_max_height(MirSurfaceSpec* spec, unsigned max_height) |
1076 | -__attribute__((deprecated("use mir_window_spec_set_max_height() instead"))); |
1077 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_spec_set_max_height() instead"); |
1078 | |
1079 | void mir_surface_spec_set_min_aspect_ratio(MirSurfaceSpec* spec, unsigned width, unsigned height) |
1080 | -__attribute__((deprecated("use mir_window_spec_set_min_aspect_ratio() instead"))); |
1081 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_spec_set_min_aspect_ratio() instead"); |
1082 | |
1083 | void mir_surface_spec_set_max_aspect_ratio(MirSurfaceSpec* spec, unsigned width, unsigned height) |
1084 | -__attribute__((deprecated("use mir_window_spec_set_max_aspect_ratio() instead"))); |
1085 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_spec_set_max_aspect_ratio() instead"); |
1086 | |
1087 | void mir_surface_spec_set_fullscreen_on_output(MirSurfaceSpec* spec, uint32_t output_id) |
1088 | -__attribute__((deprecated("use mir_window_spec_set_fullscreen_on_output() instead"))); |
1089 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_spec_set_fullscreen_on_output() instead"); |
1090 | |
1091 | void mir_surface_spec_set_preferred_orientation(MirSurfaceSpec* spec, MirOrientationMode mode) |
1092 | -__attribute__((deprecated("use mir_window_spec_set_preferred_orientation() instead"))); |
1093 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_spec_set_preferred_orientation() instead"); |
1094 | |
1095 | bool mir_surface_spec_attach_to_foreign_parent(MirSurfaceSpec* spec, |
1096 | MirPersistentId* parent, |
1097 | MirRectangle* attachment_rect, |
1098 | MirEdgeAttachment edge) |
1099 | -__attribute__((deprecated("use mir_window_spec_attach_to_foreign_parent() instead"))); |
1100 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_spec_attach_to_foreign_parent() instead"); |
1101 | |
1102 | void mir_surface_spec_set_state(MirSurfaceSpec* spec, MirSurfaceState state) |
1103 | -__attribute__((deprecated("use mir_window_spec_set_state() instead"))); |
1104 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_spec_set_state() instead"); |
1105 | |
1106 | void mir_surface_spec_release(MirSurfaceSpec* spec) |
1107 | -__attribute__((deprecated("use mir_window_spec_release() instead"))); |
1108 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_spec_release() instead"); |
1109 | |
1110 | void mir_surface_spec_set_input_shape(MirSurfaceSpec* spec, |
1111 | MirRectangle const *rectangles, |
1112 | size_t n_rects) |
1113 | -__attribute__((deprecated("use mir_window_spec_set_input_shape() instead"))); |
1114 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_spec_set_input_shape() instead"); |
1115 | |
1116 | void mir_surface_spec_set_event_handler(MirSurfaceSpec* spec, |
1117 | mir_surface_event_callback callback, |
1118 | void* context) |
1119 | -__attribute__((deprecated("use mir_window_spec_set_event_handler() instead"))); |
1120 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_spec_set_event_handler() instead"); |
1121 | |
1122 | void mir_surface_spec_set_shell_chrome(MirSurfaceSpec* spec, MirShellChrome style) |
1123 | -__attribute__((deprecated("use mir_window_spec_set_shell_chrome() instead"))); |
1124 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_spec_set_shell_chrome() instead"); |
1125 | |
1126 | void mir_surface_spec_set_pointer_confinement(MirSurfaceSpec* spec, MirPointerConfinementState state) |
1127 | -__attribute__((deprecated("use mir_window_spec_set_pointer_confinement() instead"))); |
1128 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_spec_set_pointer_confinement() instead"); |
1129 | |
1130 | void mir_surface_spec_set_placement(MirSurfaceSpec* spec, |
1131 | const MirRectangle* rect, |
1132 | @@ -182,69 +183,69 @@ |
1133 | MirPlacementHints placement_hints, |
1134 | int offset_dx, |
1135 | int offset_dy) |
1136 | -__attribute__((deprecated("use mir_window_spec_set_placement() instead"))); |
1137 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_spec_set_placement() instead"); |
1138 | |
1139 | MirSurfaceSpec* mir_connection_create_spec_for_input_method(MirConnection* connection, |
1140 | int width, int height, |
1141 | MirPixelFormat format) |
1142 | -__attribute__((deprecated("use mir_create_input_method_window_spec() instead"))); |
1143 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_create_input_method_window_spec() instead"); |
1144 | |
1145 | void mir_surface_spec_set_pixel_format(MirSurfaceSpec* spec, MirPixelFormat format) |
1146 | -__attribute__((deprecated("use mir_window_spec_set_pixel_format() instead"))); |
1147 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_spec_set_pixel_format() instead"); |
1148 | |
1149 | void mir_surface_spec_set_buffer_usage(MirSurfaceSpec* spec, MirBufferUsage usage) |
1150 | -__attribute__((deprecated("use mir_window_spec_set_buffer_usage() instead"))); |
1151 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_spec_set_buffer_usage() instead"); |
1152 | |
1153 | void mir_surface_spec_set_streams(MirSurfaceSpec* spec, |
1154 | MirBufferStreamInfo* streams, |
1155 | unsigned int num_streams) |
1156 | -__attribute__((deprecated("use mir_window_spec_set_streams() instead"))); |
1157 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_spec_set_streams() instead"); |
1158 | |
1159 | void mir_surface_apply_spec(MirSurface* surface, MirSurfaceSpec* spec) |
1160 | -__attribute__((deprecated("use mir_window_apply_spec() instead"))); |
1161 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_apply_spec() instead"); |
1162 | |
1163 | bool mir_surface_is_valid(MirSurface *surface) |
1164 | -__attribute__((deprecated("use mir_window_is_valid() instead"))); |
1165 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_is_valid() instead"); |
1166 | |
1167 | MirWaitHandle* mir_surface_create(MirSurfaceSpec* requested_specification, |
1168 | mir_surface_callback callback, void* context) |
1169 | -__attribute__((deprecated("use mir_create_window() instead"))); |
1170 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_create_window() instead"); |
1171 | |
1172 | MirSurface* mir_surface_create_sync(MirSurfaceSpec* requested_specification) |
1173 | -__attribute__((deprecated("use mir_create_window_sync() instead"))); |
1174 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_create_window_sync() instead"); |
1175 | |
1176 | MirWaitHandle *mir_surface_release( |
1177 | MirSurface *surface, |
1178 | mir_surface_callback callback, |
1179 | void *context) |
1180 | -__attribute__((deprecated("use mir_window_release() instead"))); |
1181 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_release() instead"); |
1182 | |
1183 | void mir_surface_release_sync(MirSurface *surface) |
1184 | -__attribute__((deprecated("use mir_window_release_sync() instead"))); |
1185 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_release_sync() instead"); |
1186 | |
1187 | void mir_surface_set_event_handler(MirSurface *surface, |
1188 | mir_surface_event_callback callback, |
1189 | void* context) |
1190 | -__attribute__((deprecated("use mir_window_set_event_handler() instead"))); |
1191 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_set_event_handler() instead"); |
1192 | |
1193 | MirBufferStream* mir_surface_get_buffer_stream(MirSurface *surface) |
1194 | -__attribute__((deprecated("use mir_window_get_buffer_stream() instead"))); |
1195 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_get_buffer_stream() instead"); |
1196 | |
1197 | char const* mir_surface_get_error_message(MirSurface *surface) |
1198 | -__attribute__((deprecated("use mir_window_get_error_message() instead"))); |
1199 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_get_error_message() instead"); |
1200 | |
1201 | void mir_surface_get_parameters(MirSurface *surface, MirSurfaceParameters *parameters) |
1202 | -__attribute__((deprecated("use mir_window_get_parameters() instead"))); |
1203 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_get_parameters() instead"); |
1204 | |
1205 | MirSurfaceType mir_surface_get_type(MirSurface* surface) |
1206 | -__attribute__((deprecated("use mir_window_get_type() instead"))); |
1207 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_get_type() instead"); |
1208 | |
1209 | MirWaitHandle* mir_surface_set_state(MirSurface *surface, |
1210 | MirSurfaceState state) |
1211 | -__attribute__((deprecated("use mir_window_set_state() instead"))); |
1212 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_set_state() instead"); |
1213 | |
1214 | MirSurfaceState mir_surface_get_state(MirSurface *surface) |
1215 | -__attribute__((deprecated("use mir_window_get_state() instead"))); |
1216 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_get_state() instead"); |
1217 | |
1218 | /** |
1219 | * Set the swapinterval for the default stream. |
1220 | @@ -260,37 +261,37 @@ |
1221 | * or NULL if the interval could not be supported |
1222 | */ |
1223 | MirWaitHandle* mir_surface_set_swapinterval(MirSurface* surface, int interval) |
1224 | -__attribute__((deprecated("Swap interval should be set on the backing content"))); |
1225 | +MIR_FOR_REMOVAL_IN_VERSION_1("Swap interval should be set on the backing content"); |
1226 | |
1227 | int mir_surface_get_dpi(MirSurface* surface) |
1228 | -__attribute__((deprecated("use mir_window_get_dpi() instead"))); |
1229 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_get_dpi() instead"); |
1230 | |
1231 | MirSurfaceFocusState mir_surface_get_focus(MirSurface *surface) |
1232 | -__attribute__((deprecated("use mir_window_get_focus_state() instead"))); |
1233 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_get_focus_state() instead"); |
1234 | |
1235 | MirSurfaceVisibility mir_surface_get_visibility(MirSurface *surface) |
1236 | -__attribute__((deprecated("use mir_window_get_visibility() instead"))); |
1237 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_get_visibility() instead"); |
1238 | |
1239 | MirWaitHandle* mir_surface_configure_cursor(MirSurface *surface, MirCursorConfiguration const* parameters) |
1240 | -__attribute__((deprecated("use mir_window_configure_cursor() instead"))); |
1241 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_configure_cursor() instead"); |
1242 | |
1243 | MirOrientation mir_surface_get_orientation(MirSurface *surface) |
1244 | -__attribute__((deprecated("use mir_window_get_orientation() instead"))); |
1245 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_get_orientation() instead"); |
1246 | |
1247 | MirWaitHandle* mir_surface_set_preferred_orientation(MirSurface *surface, MirOrientationMode orientation) |
1248 | -__attribute__((deprecated("use mir_window_set_preferred_orientation() instead"))); |
1249 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_set_preferred_orientation() instead"); |
1250 | |
1251 | MirOrientationMode mir_surface_get_preferred_orientation(MirSurface *surface) |
1252 | -__attribute__((deprecated("use mir_window_get_preferred_orientation() instead"))); |
1253 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_get_preferred_orientation() instead"); |
1254 | |
1255 | MirWaitHandle* mir_surface_request_persistent_id(MirSurface* surface, mir_surface_id_callback callback, void* context) |
1256 | -__attribute__((deprecated("use mir_window_request_persistent_id() instead"))); |
1257 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_request_persistent_id() instead"); |
1258 | |
1259 | MirPersistentId* mir_surface_request_persistent_id_sync(MirSurface *surface) |
1260 | -__attribute__((deprecated("use mir_window_request_persistent_id_sync() instead"))); |
1261 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_request_persistent_id_sync() instead"); |
1262 | |
1263 | void mir_surface_raise(MirSurface* surface, MirCookie const* cookie) |
1264 | -__attribute__((deprecated("use mir_window_raise() instead"))); |
1265 | +MIR_FOR_REMOVAL_IN_VERSION_1("use mir_window_raise() instead"); |
1266 | |
1267 | #pragma GCC diagnostic pop |
1268 | |
1269 | |
1270 | === modified file 'include/client/mir_toolkit/mir_wait.h' |
1271 | --- include/client/mir_toolkit/mir_wait.h 2017-01-19 23:17:56 +0000 |
1272 | +++ include/client/mir_toolkit/mir_wait.h 2017-05-26 16:23:13 +0000 |
1273 | @@ -19,6 +19,7 @@ |
1274 | #define MIR_TOOLKIT_MIR_WAIT_H_ |
1275 | |
1276 | #include <mir_toolkit/client_types.h> |
1277 | +#include <mir_toolkit/deprecations.h> |
1278 | |
1279 | #ifdef __cplusplus |
1280 | /** |
1281 | @@ -36,7 +37,7 @@ |
1282 | * \param [in] wait_handle Handle returned by an asynchronous request |
1283 | */ |
1284 | void mir_wait_for(MirWaitHandle *wait_handle) |
1285 | -__attribute__ ((deprecated("No longer supported - use callbacks or wait for state changes"))); |
1286 | +MIR_FOR_REMOVAL_IN_VERSION_1("No longer supported - use callbacks or wait for state changes"); |
1287 | |
1288 | /** |
1289 | * Wait on the supplied handle until one instance of the associated request |
1290 | @@ -47,7 +48,7 @@ |
1291 | * \param [in] wait_handle Handle returned by an asynchronous request |
1292 | */ |
1293 | void mir_wait_for_one(MirWaitHandle *wait_handle) |
1294 | -__attribute__ ((deprecated("No longer supported - use callbacks or wait for state changes"))); |
1295 | +MIR_FOR_REMOVAL_IN_VERSION_1("No longer supported - use callbacks or wait for state changes"); |
1296 | |
1297 | |
1298 | #ifdef __cplusplus |
1299 | |
1300 | === modified file 'include/client/mir_toolkit/mir_window.h' |
1301 | --- include/client/mir_toolkit/mir_window.h 2017-02-03 20:39:06 +0000 |
1302 | +++ include/client/mir_toolkit/mir_window.h 2017-05-26 16:23:13 +0000 |
1303 | @@ -22,6 +22,7 @@ |
1304 | #include <mir_toolkit/client_types.h> |
1305 | #include <mir_toolkit/common.h> |
1306 | #include <mir_toolkit/mir_cursor_configuration.h> |
1307 | +#include <mir_toolkit/deprecations.h> |
1308 | |
1309 | #include <stdbool.h> |
1310 | |
1311 | @@ -555,7 +556,7 @@ |
1312 | MirRenderSurface* render_surface, |
1313 | int logical_width, int logical_height, |
1314 | int displacement_x, int displacement_y) |
1315 | -__attribute__((deprecated("This function is slated for rename due to MirRenderSurface-->MirSurface transition"))); |
1316 | +MIR_FOR_REMOVAL_IN_VERSION_1("This function is slated for rename due to MirRenderSurface-->MirSurface transition"); |
1317 | #pragma GCC diagnostic pop |
1318 | |
1319 | /** |
1320 | @@ -774,7 +775,7 @@ |
1321 | * \param [in,out] context User data passed to completion callback. |
1322 | */ |
1323 | void mir_window_request_persistent_id(MirWindow* window, MirWindowIdCallback callback, void* context) |
1324 | -__attribute__((deprecated("Use mir_window_request_window_id() instead"))); |
1325 | +MIR_FOR_REMOVAL_IN_VERSION_1("Use mir_window_request_window_id() instead"); |
1326 | void mir_window_request_window_id(MirWindow* window, MirWindowIdCallback callback, void* context); |
1327 | |
1328 | /** |
1329 | @@ -784,7 +785,7 @@ |
1330 | * be freed with a call to mir_persistent_id_release() |
1331 | */ |
1332 | MirPersistentId* mir_window_request_persistent_id_sync(MirWindow* window) |
1333 | -__attribute__((deprecated("Use mir_window_request_window_id_sync"))); |
1334 | +MIR_FOR_REMOVAL_IN_VERSION_1("Use mir_window_request_window_id_sync"); |
1335 | MirWindowId* mir_window_request_window_id_sync(MirWindow* window); |
1336 | #ifdef __cplusplus |
1337 | } |
1338 | |
1339 | === modified file 'include/client/mir_toolkit/rs/mir_render_surface.h' |
1340 | --- include/client/mir_toolkit/rs/mir_render_surface.h 2017-03-16 16:47:21 +0000 |
1341 | +++ include/client/mir_toolkit/rs/mir_render_surface.h 2017-05-26 16:23:13 +0000 |
1342 | @@ -21,6 +21,18 @@ |
1343 | #define MIR_TOOLKIT_MIR_RENDER_SURFACE_H_ |
1344 | |
1345 | #include <mir_toolkit/client_types.h> |
1346 | +#include <mir_toolkit/deprecations.h> |
1347 | + |
1348 | +#ifndef MIR_DEPRECATE_RENDERSURFACES |
1349 | + #define MIR_DEPRECATE_RENDERSURFACES 0 |
1350 | +#endif |
1351 | + |
1352 | +#if MIR_ENABLE_DEPRECATIONS > 0 && MIR_DEPRECATE_RENDERSURFACES > 0 |
1353 | + #define MIR_DEPRECATE_RENDERSURFACES_FOR_RENAME\ |
1354 | + __attribute__((deprecated("This function is slated for rename due to MirRenderSurface-->MirSurface transition"))) |
1355 | +#else |
1356 | + #define MIR_DEPRECATE_RENDERSURFACES_FOR_RENAME |
1357 | +#endif |
1358 | |
1359 | #ifdef __cplusplus |
1360 | /** |
1361 | @@ -30,6 +42,9 @@ |
1362 | extern "C" { |
1363 | #endif |
1364 | |
1365 | +typedef void (*MirRenderSurfaceCallback)(MirRenderSurface*, void* context) |
1366 | +MIR_DEPRECATE_RENDERSURFACES_FOR_RENAME; |
1367 | + |
1368 | #pragma GCC diagnostic push |
1369 | #pragma GCC diagnostic ignored "-Wdeprecated-declarations" |
1370 | /** |
1371 | @@ -49,7 +64,7 @@ |
1372 | int width, int height, |
1373 | MirRenderSurfaceCallback callback, |
1374 | void* context) |
1375 | -__attribute__((deprecated("This function is slated for rename due to MirRenderSurface-->MirSurface transition"))); |
1376 | +MIR_DEPRECATE_RENDERSURFACES_FOR_RENAME; |
1377 | |
1378 | /** |
1379 | * Create a render surface and wait for the result |
1380 | @@ -64,7 +79,7 @@ |
1381 | MirRenderSurface* mir_connection_create_render_surface_sync( |
1382 | MirConnection* connection, |
1383 | int width, int height) |
1384 | -__attribute__((deprecated("This function is slated for rename due to MirRenderSurface-->MirSurface transition"))); |
1385 | +MIR_DEPRECATE_RENDERSURFACES_FOR_RENAME; |
1386 | |
1387 | /** |
1388 | * Get the size of the MirRenderSurface |
1389 | @@ -76,7 +91,7 @@ |
1390 | void mir_render_surface_get_size( |
1391 | MirRenderSurface* render_surface, |
1392 | int* width, int* height) |
1393 | -__attribute__((deprecated("This function is slated for rename due to MirRenderSurface-->MirSurface transition"))); |
1394 | +MIR_DEPRECATE_RENDERSURFACES_FOR_RENAME; |
1395 | |
1396 | /** |
1397 | * Set the size of the MirRenderSurface |
1398 | @@ -88,7 +103,7 @@ |
1399 | void mir_render_surface_set_size( |
1400 | MirRenderSurface* render_surface, |
1401 | int width, int height) |
1402 | -__attribute__((deprecated("This function is slated for rename due to MirRenderSurface-->MirSurface transition"))); |
1403 | +MIR_DEPRECATE_RENDERSURFACES_FOR_RENAME; |
1404 | |
1405 | /** |
1406 | * Test for a valid render surface |
1407 | @@ -100,8 +115,7 @@ |
1408 | */ |
1409 | bool mir_render_surface_is_valid( |
1410 | MirRenderSurface* render_surface) |
1411 | -__attribute__((deprecated("This function is slated for rename due to MirRenderSurface-->MirSurface transition"))); |
1412 | - |
1413 | +MIR_DEPRECATE_RENDERSURFACES_FOR_RENAME; |
1414 | /** |
1415 | * Retrieve a text description of the error. The returned string is owned by |
1416 | * the library and remains valid until the render surface or the associated |
1417 | @@ -113,7 +127,7 @@ |
1418 | */ |
1419 | char const *mir_render_surface_get_error_message( |
1420 | MirRenderSurface* render_surface) |
1421 | -__attribute__((deprecated("This function is slated for rename due to MirRenderSurface-->MirSurface transition"))); |
1422 | +MIR_DEPRECATE_RENDERSURFACES_FOR_RENAME; |
1423 | |
1424 | /** |
1425 | * Release the specified render surface |
1426 | @@ -122,7 +136,7 @@ |
1427 | */ |
1428 | void mir_render_surface_release( |
1429 | MirRenderSurface* render_surface) |
1430 | -__attribute__((deprecated("This function is slated for rename due to MirRenderSurface-->MirSurface transition"))); |
1431 | +MIR_DEPRECATE_RENDERSURFACES_FOR_RENAME; |
1432 | |
1433 | /** |
1434 | * Obtain the buffer stream backing a given render surface. |
1435 | @@ -142,7 +156,7 @@ |
1436 | MirRenderSurface* render_surface, |
1437 | int width, int height, |
1438 | MirPixelFormat format) |
1439 | -__attribute__((deprecated("This function is slated for rename due to MirRenderSurface-->MirSurface transition"))); |
1440 | +MIR_DEPRECATE_RENDERSURFACES_FOR_RENAME; |
1441 | |
1442 | /** |
1443 | * Obtain the presentation chain backing a given render surface. |
1444 | @@ -155,7 +169,7 @@ |
1445 | */ |
1446 | MirPresentationChain* mir_render_surface_get_presentation_chain( |
1447 | MirRenderSurface* render_surface) |
1448 | -__attribute__((deprecated("This function is slated for rename due to MirRenderSurface-->MirSurface transition"))); |
1449 | +MIR_DEPRECATE_RENDERSURFACES_FOR_RENAME; |
1450 | |
1451 | /** Query whether the server supports a given presentation mode. |
1452 | * |
1453 | @@ -189,7 +203,29 @@ |
1454 | MirWindowSpec* spec, |
1455 | MirRenderSurface* render_surface, |
1456 | int hotspot_x, int hotspot_y) |
1457 | -__attribute__((deprecated("This function is slated for rename due to MirRenderSurface-->MirSurface transition"))); |
1458 | +MIR_DEPRECATE_RENDERSURFACES_FOR_RENAME; |
1459 | + |
1460 | +/** |
1461 | + * Set the MirWindowSpec to display content contained in a render surface |
1462 | + * |
1463 | + * \warning: The initial call to mir_window_spec_add_render_surface will set |
1464 | + * the bottom-most content, and subsequent calls will stack the |
1465 | + * content on top. |
1466 | + * |
1467 | + * \param spec The window_spec to be updated |
1468 | + * \param render_surface The render surface containing the content to be displayed |
1469 | + * \param logical_width The width that the content will be displayed at |
1470 | + * (Ignored for buffer streams) |
1471 | + * \param logical_height The height that the content will be displayed at |
1472 | + * (Ignored for buffer streams) |
1473 | + * \param displacement_x The x displacement from the top-left corner of the MirWindow |
1474 | + * \param displacement_y The y displacement from the top-left corner of the MirWindow |
1475 | + */ |
1476 | +void mir_window_spec_add_render_surface(MirWindowSpec* spec, |
1477 | + MirRenderSurface* render_surface, |
1478 | + int logical_width, int logical_height, |
1479 | + int displacement_x, int displacement_y) |
1480 | +MIR_DEPRECATE_RENDERSURFACES_FOR_RENAME; |
1481 | |
1482 | #pragma GCC diagnostic pop |
1483 | |
1484 | |
1485 | === modified file 'include/core/mir_toolkit/common.h' |
1486 | --- include/core/mir_toolkit/common.h 2017-01-23 22:29:00 +0000 |
1487 | +++ include/core/mir_toolkit/common.h 2017-05-26 16:23:13 +0000 |
1488 | @@ -21,6 +21,8 @@ |
1489 | #ifndef MIR_COMMON_H_ |
1490 | #define MIR_COMMON_H_ |
1491 | |
1492 | +#include <mir_toolkit/deprecations.h> |
1493 | + |
1494 | //for clang |
1495 | #ifndef __has_feature |
1496 | #define __has_feature(x) 0 // Compatibility with non-clang |
1497 | @@ -35,7 +37,7 @@ |
1498 | (__has_extension(attribute_deprecated_with_message) && \ |
1499 | __has_extension(enumerator_attributes)) |
1500 | #define MIR_DEPRECATED_ENUM(ENUM, INSTEAD) \ |
1501 | - ENUM __attribute__ ((deprecated("Use " #INSTEAD " instead"))) |
1502 | + ENUM MIR_FOR_REMOVAL_IN_VERSION_1("Use " #INSTEAD " instead") |
1503 | #else |
1504 | #define MIR_DEPRECATED_ENUM(ENUM, INSTEAD) \ |
1505 | ENUM |
1506 | @@ -65,7 +67,7 @@ |
1507 | mir_surface_attrib_preferred_orientation, |
1508 | /* Must be last */ |
1509 | mir_surface_attribs |
1510 | -} MirSurfaceAttrib __attribute__ ((deprecated("use MirWindowAttrib"))); |
1511 | +} MirSurfaceAttrib MIR_FOR_REMOVAL_IN_VERSION_1("use MirWindowAttrib"); |
1512 | |
1513 | /** |
1514 | * Attributes of a window that the client and server/shell may wish to |
1515 | @@ -102,7 +104,7 @@ |
1516 | mir_surface_type_satellite, /**< AKA "toolbox"/"toolbar" */ |
1517 | mir_surface_type_tip, /**< AKA "tooltip" */ |
1518 | mir_surface_types |
1519 | -} MirSurfaceType __attribute__ ((deprecated("use MirWindowType"))); |
1520 | +} MirSurfaceType MIR_FOR_REMOVAL_IN_VERSION_1("use MirWindowType"); |
1521 | |
1522 | typedef enum MirWindowType |
1523 | { |
1524 | @@ -132,7 +134,7 @@ |
1525 | mir_surface_state_horizmaximized, |
1526 | mir_surface_state_hidden, |
1527 | mir_surface_states |
1528 | -} MirSurfaceState __attribute__ ((deprecated("use MirWindowState"))); |
1529 | +} MirSurfaceState MIR_FOR_REMOVAL_IN_VERSION_1("use MirWindowState"); |
1530 | |
1531 | typedef enum MirWindowState |
1532 | { |
1533 | @@ -154,7 +156,7 @@ |
1534 | { |
1535 | mir_surface_unfocused = 0, |
1536 | mir_surface_focused |
1537 | -} MirSurfaceFocusState __attribute__ ((deprecated("use MirWindowFocusState"))); |
1538 | +} MirSurfaceFocusState MIR_FOR_REMOVAL_IN_VERSION_1("use MirWindowFocusState"); |
1539 | |
1540 | typedef enum MirWindowFocusState |
1541 | { |
1542 | @@ -166,7 +168,7 @@ |
1543 | { |
1544 | mir_surface_visibility_occluded = 0, |
1545 | mir_surface_visibility_exposed |
1546 | -} MirSurfaceVisibility __attribute__ ((deprecated("use MirWindowFocusState"))); |
1547 | +} MirSurfaceVisibility MIR_FOR_REMOVAL_IN_VERSION_1("use MirWindowFocusState"); |
1548 | |
1549 | typedef enum MirWindowVisibility |
1550 | { |
1551 | |
1552 | === added file 'include/core/mir_toolkit/deprecations.h' |
1553 | --- include/core/mir_toolkit/deprecations.h 1970-01-01 00:00:00 +0000 |
1554 | +++ include/core/mir_toolkit/deprecations.h 2017-05-26 16:23:13 +0000 |
1555 | @@ -0,0 +1,36 @@ |
1556 | +/* |
1557 | + * Copyright © 2017 Canonical Ltd. |
1558 | + * |
1559 | + * This program is free software: you can redistribute it and/or modify it |
1560 | + * under the terms of the GNU Lesser General Public License version 3, |
1561 | + * as published by the Free Software Foundation. |
1562 | + * |
1563 | + * This program is distributed in the hope that it will be useful, |
1564 | + * but WITHOUT ANY WARRANTY; without even the implied warranty of |
1565 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
1566 | + * GNU Lesser General Public License for more details. |
1567 | + * |
1568 | + * You should have received a copy of the GNU Lesser General Public License |
1569 | + * along with this program. If not, see <http://www.gnu.org/licenses/>. |
1570 | + */ |
1571 | + |
1572 | +#ifndef MIR_DEPRECATIONS_H_ |
1573 | +#define MIR_DEPRECATIONS_H_ |
1574 | + |
1575 | +#ifndef MIR_ENABLE_DEPRECATIONS |
1576 | + // use g++ version < 6.2 as a proxy for building on Ubunutu 16.04LTS ("Xenial") or 16.10 (Yakkety) |
1577 | + #if defined(__clang__) || !defined(__GNUC__) || (__GNUC__ > 6) || ((__GNUC__ == 6) && (__GNUC_MINOR__ >= 2)) |
1578 | + #define MIR_ENABLE_DEPRECATIONS 1 |
1579 | + #else |
1580 | + #define MIR_ENABLE_DEPRECATIONS 0 |
1581 | + #endif |
1582 | +#endif |
1583 | + |
1584 | +#if MIR_ENABLE_DEPRECATIONS > 0 |
1585 | + #define MIR_FOR_REMOVAL_IN_VERSION_1(message)\ |
1586 | + __attribute__((deprecated(message))) |
1587 | +#else |
1588 | + #define MIR_FOR_REMOVAL_IN_VERSION_1(message) |
1589 | +#endif |
1590 | + |
1591 | +#endif //MIR_DEPRECATIONS_H_ |
1592 | |
1593 | === modified file 'src/common/events/input_configuration_event.cpp' |
1594 | --- src/common/events/input_configuration_event.cpp 2017-01-20 16:27:50 +0000 |
1595 | +++ src/common/events/input_configuration_event.cpp 2017-05-26 16:23:13 +0000 |
1596 | @@ -18,13 +18,12 @@ |
1597 | |
1598 | #include "mir/events/input_configuration_event.h" |
1599 | |
1600 | +#pragma GCC diagnostic ignored "-Wdeprecated-declarations" |
1601 | MirInputConfigurationEvent::MirInputConfigurationEvent() |
1602 | { |
1603 | event.initInputConfiguration(); |
1604 | } |
1605 | |
1606 | -#pragma GCC diagnostic push |
1607 | -#pragma GCC diagnostic ignored "-Wdeprecated-declarations" |
1608 | MirInputConfigurationAction MirInputConfigurationEvent::action() const |
1609 | { |
1610 | return static_cast<MirInputConfigurationAction>(event.asReader().getInputConfiguration().getAction()); |
1611 | @@ -34,7 +33,6 @@ |
1612 | { |
1613 | event.getInputConfiguration().setAction(static_cast<mir::capnp::InputConfigurationEvent::Action>(action)); |
1614 | } |
1615 | -#pragma GCC diagnostic pop |
1616 | |
1617 | std::chrono::nanoseconds MirInputConfigurationEvent::when() const |
1618 | { |
1619 | |
1620 | === modified file 'src/include/common/mir/events/input_configuration_event.h' |
1621 | --- src/include/common/mir/events/input_configuration_event.h 2017-01-20 16:27:50 +0000 |
1622 | +++ src/include/common/mir/events/input_configuration_event.h 2017-05-26 16:23:13 +0000 |
1623 | @@ -37,8 +37,7 @@ |
1624 | |
1625 | MirInputDeviceId id() const; |
1626 | void set_id(MirInputDeviceId id); |
1627 | -} |
1628 | - __attribute__((deprecated)); |
1629 | +}; |
1630 | #pragma GCC diagnostic pop |
1631 | |
1632 | #endif /* MIR_COMMON_INPUT_CONFIGURATION_EVENT_H_ */ |
1633 | |
1634 | === modified file 'src/platforms/android/utils/CMakeLists.txt' |
1635 | --- src/platforms/android/utils/CMakeLists.txt 2017-01-18 02:29:37 +0000 |
1636 | +++ src/platforms/android/utils/CMakeLists.txt 2017-05-26 16:23:13 +0000 |
1637 | @@ -36,6 +36,7 @@ |
1638 | ) |
1639 | |
1640 | target_link_libraries(mir_demo_standalone_render_overlays |
1641 | + mirclient |
1642 | mircommon |
1643 | mirplatform |
1644 | ) |
1645 | |
1646 | === modified file 'src/platforms/mesa/server/kms/kms_page_flipper.cpp' |
1647 | --- src/platforms/mesa/server/kms/kms_page_flipper.cpp 2017-01-18 02:29:37 +0000 |
1648 | +++ src/platforms/mesa/server/kms/kms_page_flipper.cpp 2017-05-26 16:23:13 +0000 |
1649 | @@ -26,6 +26,7 @@ |
1650 | #include <xf86drm.h> |
1651 | #include <xf86drmMode.h> |
1652 | #include <chrono> |
1653 | +#include <cstring> |
1654 | |
1655 | namespace mg = mir::graphics; |
1656 | namespace mgm = mir::graphics::mesa; |
1657 | @@ -89,12 +90,11 @@ |
1658 | |
1659 | mg::Frame mgm::KMSPageFlipper::wait_for_flip(uint32_t crtc_id) |
1660 | { |
1661 | - static drmEventContext evctx = |
1662 | - { |
1663 | - DRM_EVENT_CONTEXT_VERSION, /* .version */ |
1664 | - 0, /* .vblank_handler */ |
1665 | - page_flip_handler /* .page_flip_handler */ |
1666 | - }; |
1667 | + drmEventContext evctx; |
1668 | + memset(&evctx, 0, sizeof evctx); |
1669 | + evctx.version = 2; // We only support the old v2 page_flip_handler |
1670 | + evctx.page_flip_handler = &page_flip_handler; |
1671 | + |
1672 | static std::thread::id const invalid_tid; |
1673 | |
1674 | { |
1675 | |
1676 | === modified file 'src/server/input/default_configuration.cpp' |
1677 | --- src/server/input/default_configuration.cpp 2017-01-18 02:29:37 +0000 |
1678 | +++ src/server/input/default_configuration.cpp 2017-05-26 16:23:13 +0000 |
1679 | @@ -186,7 +186,9 @@ |
1680 | std::chrono::milliseconds const key_repeat_delay{50}; |
1681 | |
1682 | auto const options = the_options(); |
1683 | - auto enable_repeat = options->get<bool>(options::enable_key_repeat_opt); |
1684 | + // lp:1675357: Disable generation of key repeat events on nested servers |
1685 | + auto enable_repeat = options->get<bool>(options::enable_key_repeat_opt) && |
1686 | + !options->is_set(options::host_socket_opt); |
1687 | |
1688 | return std::make_shared<mi::KeyRepeatDispatcher>( |
1689 | the_event_filter_chain_dispatcher(), the_main_loop(), the_cookie_authority(), |
1690 | @@ -365,7 +367,9 @@ |
1691 | the_key_mapper(), |
1692 | the_server_status_listener()); |
1693 | |
1694 | - if (key_repeater && !the_options()->is_set(options::host_socket_opt)) |
1695 | + // lp:1675357: KeyRepeatDispatcher must be informed about removed input devices, otherwise |
1696 | + // pressed keys get repeated indefinitely |
1697 | + if (key_repeater) |
1698 | key_repeater->set_input_device_hub(hub); |
1699 | return hub; |
1700 | }); |
1701 | |
1702 | === modified file 'src/server/input/default_device.cpp' |
1703 | --- src/server/input/default_device.cpp 2017-01-18 02:29:37 +0000 |
1704 | +++ src/server/input/default_device.cpp 2017-05-26 16:23:13 +0000 |
1705 | @@ -30,10 +30,17 @@ |
1706 | |
1707 | namespace mi = mir::input; |
1708 | |
1709 | -mi::DefaultDevice::DefaultDevice(MirInputDeviceId id, std::shared_ptr<dispatch::ActionQueue> const& actions, |
1710 | - InputDevice& device, std::shared_ptr<KeyMapper> const& key_mapper) |
1711 | - : device_id{id}, device{device}, info(device.get_device_info()), pointer{device.get_pointer_settings()}, |
1712 | - touchpad{device.get_touchpad_settings()}, actions{actions}, key_mapper{key_mapper} |
1713 | +mi::DefaultDevice::DefaultDevice(MirInputDeviceId id, |
1714 | + std::shared_ptr<dispatch::ActionQueue> const& actions, |
1715 | + InputDevice& device, |
1716 | + std::shared_ptr<KeyMapper> const& key_mapper) |
1717 | + : device_id{id}, |
1718 | + device{device}, |
1719 | + info(device.get_device_info()), |
1720 | + pointer{device.get_pointer_settings()}, |
1721 | + touchpad{device.get_touchpad_settings()}, |
1722 | + actions{actions}, |
1723 | + key_mapper{key_mapper} |
1724 | { |
1725 | if (contains(info.capabilities, mi::DeviceCapability::keyboard)) |
1726 | { |
1727 | @@ -70,8 +77,8 @@ |
1728 | auto const& settings = pointer.value(); |
1729 | |
1730 | return MirPointerConfig(settings.handedness, settings.acceleration, |
1731 | - settings.cursor_acceleration_bias, settings.horizontal_scroll_scale, |
1732 | - settings.vertical_scroll_scale); |
1733 | + settings.cursor_acceleration_bias, settings.horizontal_scroll_scale, |
1734 | + settings.vertical_scroll_scale); |
1735 | } |
1736 | |
1737 | mir::optional_value<MirTouchpadConfig> mi::DefaultDevice::touchpad_configuration() const |
1738 | @@ -82,14 +89,17 @@ |
1739 | auto const& settings = touchpad.value(); |
1740 | |
1741 | return MirTouchpadConfig(settings.click_mode, settings.scroll_mode, settings.button_down_scroll_button, |
1742 | - settings.tap_to_click, settings.disable_while_typing, settings.disable_with_mouse, |
1743 | - settings.middle_mouse_button_emulation); |
1744 | + settings.tap_to_click, settings.disable_while_typing, settings.disable_with_mouse, |
1745 | + settings.middle_mouse_button_emulation); |
1746 | } |
1747 | |
1748 | void mi::DefaultDevice::apply_pointer_configuration(MirPointerConfig const& conf) |
1749 | { |
1750 | - if (!pointer.is_set()) |
1751 | - BOOST_THROW_EXCEPTION(std::invalid_argument("Cannot apply a pointer configuration")); |
1752 | + { |
1753 | + std::lock_guard<std::mutex> lock(config_mutex); |
1754 | + if (!pointer.is_set()) |
1755 | + BOOST_THROW_EXCEPTION(std::invalid_argument("Cannot apply a pointer configuration")); |
1756 | + } |
1757 | |
1758 | if (conf.cursor_acceleration_bias() < -1.0 || conf.cursor_acceleration_bias() > 1.0) |
1759 | BOOST_THROW_EXCEPTION(std::invalid_argument("Cursor acceleration bias out of range")); |
1760 | @@ -101,18 +111,25 @@ |
1761 | settings.vertical_scroll_scale = conf.vertical_scroll_scale(); |
1762 | settings.horizontal_scroll_scale = conf.horizontal_scroll_scale(); |
1763 | |
1764 | - pointer = settings; |
1765 | - |
1766 | - actions->enqueue([settings = std::move(settings), dev=&device] |
1767 | - { |
1768 | - dev->apply_settings(settings); |
1769 | - }); |
1770 | + { |
1771 | + std::lock_guard<std::mutex> lock(config_mutex); |
1772 | + pointer = settings; |
1773 | + if (!actions) // device is disabled |
1774 | + return; |
1775 | + actions->enqueue([settings = std::move(settings), dev=&device] |
1776 | + { |
1777 | + dev->apply_settings(settings); |
1778 | + }); |
1779 | + } |
1780 | } |
1781 | |
1782 | void mi::DefaultDevice::apply_touchpad_configuration(MirTouchpadConfig const& conf) |
1783 | { |
1784 | - if (!touchpad.is_set()) |
1785 | - BOOST_THROW_EXCEPTION(std::invalid_argument("Cannot apply a touchpad configuration")); |
1786 | + { |
1787 | + std::lock_guard<std::mutex> lock(config_mutex); |
1788 | + if (!touchpad.is_set()) |
1789 | + BOOST_THROW_EXCEPTION(std::invalid_argument("Cannot apply a touchpad configuration")); |
1790 | + } |
1791 | |
1792 | if (conf.scroll_mode() & mir_touchpad_scroll_mode_button_down_scroll && |
1793 | conf.button_down_scroll_button() == mi::no_scroll_button) |
1794 | @@ -127,12 +144,17 @@ |
1795 | settings.tap_to_click = conf.tap_to_click(); |
1796 | settings.middle_mouse_button_emulation = conf.middle_mouse_button_emulation(); |
1797 | |
1798 | - touchpad = settings; |
1799 | + { |
1800 | + std::lock_guard<std::mutex> lock(config_mutex); |
1801 | + touchpad = settings; |
1802 | |
1803 | - actions->enqueue([settings = std::move(settings), dev=&device] |
1804 | - { |
1805 | + if (!actions) // device is disabled |
1806 | + return; |
1807 | + actions->enqueue([settings = std::move(settings), dev=&device] |
1808 | + { |
1809 | dev->apply_settings(settings); |
1810 | - }); |
1811 | + }); |
1812 | + } |
1813 | } |
1814 | |
1815 | mir::optional_value<MirKeyboardConfig> mi::DefaultDevice::keyboard_configuration() const |
1816 | @@ -145,9 +167,18 @@ |
1817 | if (!contains(info.capabilities, mi::DeviceCapability::keyboard)) |
1818 | BOOST_THROW_EXCEPTION(std::invalid_argument("Cannot apply a keyboard configuration")); |
1819 | |
1820 | + std::lock_guard<std::mutex> lock(config_mutex); |
1821 | + if (!actions) // device is disabled |
1822 | + return; |
1823 | if (keyboard.value().device_keymap() != conf.device_keymap()) |
1824 | - { |
1825 | keyboard = conf; |
1826 | - key_mapper->set_keymap_for_device(device_id, conf.device_keymap()); |
1827 | - } |
1828 | + else |
1829 | + return; |
1830 | + key_mapper->set_keymap_for_device(device_id, conf.device_keymap()); |
1831 | +} |
1832 | + |
1833 | +void mi::DefaultDevice::disable_queue() |
1834 | +{ |
1835 | + std::lock_guard<std::mutex> lock(config_mutex); |
1836 | + actions.reset(); |
1837 | } |
1838 | |
1839 | === modified file 'src/server/input/default_device.h' |
1840 | --- src/server/input/default_device.h 2017-01-18 02:29:37 +0000 |
1841 | +++ src/server/input/default_device.h 2017-05-26 16:23:13 +0000 |
1842 | @@ -29,6 +29,7 @@ |
1843 | #include "mir/optional_value.h" |
1844 | |
1845 | #include <memory> |
1846 | +#include <mutex> |
1847 | |
1848 | namespace mir |
1849 | { |
1850 | @@ -58,6 +59,7 @@ |
1851 | void apply_touchpad_configuration(MirTouchpadConfig const&) override; |
1852 | optional_value<MirKeyboardConfig> keyboard_configuration() const override; |
1853 | void apply_keyboard_configuration(MirKeyboardConfig const&) override; |
1854 | + void disable_queue(); |
1855 | private: |
1856 | MirInputDeviceId const device_id; |
1857 | InputDevice& device; |
1858 | @@ -65,8 +67,9 @@ |
1859 | optional_value<PointerSettings> pointer; |
1860 | optional_value<TouchpadSettings> touchpad; |
1861 | optional_value<MirKeyboardConfig> keyboard; |
1862 | - std::shared_ptr<dispatch::ActionQueue> const actions; |
1863 | + std::shared_ptr<dispatch::ActionQueue> actions; |
1864 | std::shared_ptr<KeyMapper> const key_mapper; |
1865 | + std::mutex mutable config_mutex; |
1866 | }; |
1867 | |
1868 | } |
1869 | |
1870 | === modified file 'src/server/input/default_input_device_hub.cpp' |
1871 | --- src/server/input/default_input_device_hub.cpp 2017-01-19 09:38:52 +0000 |
1872 | +++ src/server/input/default_input_device_hub.cpp 2017-05-26 16:23:13 +0000 |
1873 | @@ -99,15 +99,16 @@ |
1874 | if (it == end(devices)) |
1875 | { |
1876 | auto id = create_new_device_id(); |
1877 | - auto handle = std::make_shared<DefaultDevice>(id, device_queue, *device, key_mapper); |
1878 | + auto queue = std::make_shared<dispatch::ActionQueue>(); |
1879 | + auto handle = std::make_shared<DefaultDevice>(id, queue, *device, key_mapper); |
1880 | // send input device info to observer loop.. |
1881 | devices.push_back(std::make_unique<RegisteredDevice>( |
1882 | - device, id, input_dispatchable, cookie_authority, handle)); |
1883 | + device, handle->id(), queue, cookie_authority, handle)); |
1884 | |
1885 | auto const& dev = devices.back(); |
1886 | |
1887 | seat->add_device(*handle); |
1888 | - dev->start(seat); |
1889 | + dev->start(seat, input_dispatchable); |
1890 | |
1891 | // pass input device handle to observer loop.. |
1892 | observer_queue->enqueue(this, |
1893 | @@ -115,7 +116,6 @@ |
1894 | { |
1895 | add_device_handle(handle); |
1896 | }); |
1897 | - |
1898 | } |
1899 | else |
1900 | { |
1901 | @@ -140,7 +140,7 @@ |
1902 | if (seat) |
1903 | { |
1904 | seat->remove_device(*item->handle); |
1905 | - item->stop(); |
1906 | + item->stop(input_dispatchable); |
1907 | } |
1908 | // send input device info to observer queue.. |
1909 | observer_queue->enqueue( |
1910 | @@ -166,14 +166,14 @@ |
1911 | mi::DefaultInputDeviceHub::RegisteredDevice::RegisteredDevice( |
1912 | std::shared_ptr<InputDevice> const& dev, |
1913 | MirInputDeviceId device_id, |
1914 | - std::shared_ptr<dispatch::MultiplexingDispatchable> const& multiplexer, |
1915 | + std::shared_ptr<dispatch::ActionQueue> const& queue, |
1916 | std::shared_ptr<mir::cookie::Authority> const& cookie_authority, |
1917 | std::shared_ptr<mi::DefaultDevice> const& handle) |
1918 | : handle(handle), |
1919 | device_id(device_id), |
1920 | cookie_authority(cookie_authority), |
1921 | device(dev), |
1922 | - multiplexer(multiplexer) |
1923 | + queue(queue) |
1924 | { |
1925 | } |
1926 | |
1927 | @@ -206,17 +206,23 @@ |
1928 | return dev == device; |
1929 | } |
1930 | |
1931 | -void mi::DefaultInputDeviceHub::RegisteredDevice::start(std::shared_ptr<Seat> const& seat) |
1932 | +void mi::DefaultInputDeviceHub::RegisteredDevice::start(std::shared_ptr<Seat> const& seat, std::shared_ptr<dispatch::MultiplexingDispatchable> const& multiplexer) |
1933 | { |
1934 | + multiplexer->add_watch(queue); |
1935 | + |
1936 | this->seat = seat; |
1937 | builder = std::make_unique<DefaultEventBuilder>(device_id, cookie_authority, seat); |
1938 | device->start(this, builder.get()); |
1939 | } |
1940 | |
1941 | -void mi::DefaultInputDeviceHub::RegisteredDevice::stop() |
1942 | +void mi::DefaultInputDeviceHub::RegisteredDevice::stop(std::shared_ptr<dispatch::MultiplexingDispatchable> const& multiplexer) |
1943 | { |
1944 | + multiplexer->remove_watch(queue); |
1945 | + handle->disable_queue(); |
1946 | + |
1947 | device->stop(); |
1948 | seat = nullptr; |
1949 | + queue.reset(); |
1950 | builder.reset(); |
1951 | } |
1952 | |
1953 | |
1954 | === modified file 'src/server/input/default_input_device_hub.h' |
1955 | --- src/server/input/default_input_device_hub.h 2017-01-19 09:38:52 +0000 |
1956 | +++ src/server/input/default_input_device_hub.h 2017-05-26 16:23:13 +0000 |
1957 | @@ -90,6 +90,7 @@ |
1958 | void device_changed(Device* dev); |
1959 | void emit_changed_devices(); |
1960 | MirInputDeviceId create_new_device_id(); |
1961 | + |
1962 | std::shared_ptr<Seat> const seat; |
1963 | std::shared_ptr<frontend::EventSink> const sink; |
1964 | std::shared_ptr<dispatch::MultiplexingDispatchable> const input_dispatchable; |
1965 | @@ -105,14 +106,14 @@ |
1966 | public: |
1967 | RegisteredDevice(std::shared_ptr<InputDevice> const& dev, |
1968 | MirInputDeviceId dev_id, |
1969 | - std::shared_ptr<dispatch::MultiplexingDispatchable> const& multiplexer, |
1970 | + std::shared_ptr<dispatch::ActionQueue> const& multiplexer, |
1971 | std::shared_ptr<cookie::Authority> const& cookie_authority, |
1972 | std::shared_ptr<DefaultDevice> const& handle); |
1973 | void handle_input(MirEvent& event) override; |
1974 | mir::geometry::Rectangle bounding_rectangle() const override; |
1975 | bool device_matches(std::shared_ptr<InputDevice> const& dev) const; |
1976 | - void start(std::shared_ptr<Seat> const& seat); |
1977 | - void stop(); |
1978 | + void start(std::shared_ptr<Seat> const& seat, std::shared_ptr<dispatch::MultiplexingDispatchable> const& dispatchable); |
1979 | + void stop(std::shared_ptr<dispatch::MultiplexingDispatchable> const& dispatchable); |
1980 | MirInputDeviceId id(); |
1981 | std::shared_ptr<Seat> seat; |
1982 | const std::shared_ptr<DefaultDevice> handle; |
1983 | @@ -124,7 +125,7 @@ |
1984 | std::unique_ptr<DefaultEventBuilder> builder; |
1985 | std::shared_ptr<cookie::Authority> cookie_authority; |
1986 | std::shared_ptr<InputDevice> const device; |
1987 | - std::shared_ptr<dispatch::MultiplexingDispatchable> const multiplexer; |
1988 | + std::shared_ptr<dispatch::ActionQueue> queue; |
1989 | }; |
1990 | |
1991 | std::vector<std::shared_ptr<Device>> handles; |
1992 | |
1993 | === modified file 'tests/unit-tests/input/test_default_device.cpp' |
1994 | --- tests/unit-tests/input/test_default_device.cpp 2017-01-18 02:29:37 +0000 |
1995 | +++ tests/unit-tests/input/test_default_device.cpp 2017-05-26 16:23:13 +0000 |
1996 | @@ -155,3 +155,26 @@ |
1997 | |
1998 | queue->dispatch(md::FdEvent::readable); |
1999 | } |
2000 | + |
2001 | +TEST_F(DefaultDevice, disable_queue_ends_config_processing) |
2002 | +{ |
2003 | + mi::DefaultDevice dev(MirInputDeviceId{17}, queue, touchpad, mt::fake_shared(key_mapper)); |
2004 | + |
2005 | + dev.disable_queue(); |
2006 | + MirPointerConfig pointer_conf; |
2007 | + pointer_conf.cursor_acceleration_bias(1.0); |
2008 | + |
2009 | + EXPECT_CALL(touchpad, apply_settings(Matcher<mi::TouchpadSettings const&>(_))).Times(0); |
2010 | + dev.apply_pointer_configuration(pointer_conf); |
2011 | +} |
2012 | + |
2013 | +TEST_F(DefaultDevice, disable_queue_removes_reference_to_queue) |
2014 | +{ |
2015 | + std::weak_ptr<md::ActionQueue> ref = queue; |
2016 | + mi::DefaultDevice dev(MirInputDeviceId{17}, queue, touchpad, mt::fake_shared(key_mapper)); |
2017 | + queue.reset(); |
2018 | + |
2019 | + EXPECT_THAT(ref.lock(), Ne(nullptr)); |
2020 | + dev.disable_queue(); |
2021 | + EXPECT_THAT(ref.lock(), Eq(nullptr)); |
2022 | +} |
2023 | |
2024 | === modified file 'tests/unit-tests/input/test_default_input_device_hub.cpp' |
2025 | --- tests/unit-tests/input/test_default_input_device_hub.cpp 2017-01-19 09:38:52 +0000 |
2026 | +++ tests/unit-tests/input/test_default_input_device_hub.cpp 2017-05-26 16:23:13 +0000 |
2027 | @@ -236,3 +236,21 @@ |
2028 | observer_loop.trigger_server_actions(); |
2029 | } |
2030 | |
2031 | +TEST_F(InputDeviceHubTest, no_device_config_action_after_device_removal) |
2032 | +{ |
2033 | + std::shared_ptr<mi::Device> dev_ptr; |
2034 | + MirPointerConfig ptr_config; |
2035 | + ptr_config.cursor_acceleration_bias(0.5); |
2036 | + |
2037 | + ON_CALL(mock_observer, device_added(WithName("mouse"))).WillByDefault(SaveArg<0>(&dev_ptr)); |
2038 | + |
2039 | + hub.add_device(mt::fake_shared(mouse)); |
2040 | + hub.add_observer(mt::fake_shared(mock_observer)); |
2041 | + observer_loop.trigger_server_actions(); |
2042 | + |
2043 | + EXPECT_CALL(mouse, apply_settings(Matcher<mi::PointerSettings const&>(_))).Times(0); |
2044 | + |
2045 | + dev_ptr->apply_pointer_configuration(ptr_config); |
2046 | + hub.remove_device(mt::fake_shared(mouse)); |
2047 | + observer_loop.trigger_server_actions(); |
2048 | +} |
FAILED: Continuous integration, rev:4056 /mir-jenkins. ubuntu. com/job/ mir-ubuntu- ci/109/ /mir-jenkins. ubuntu. com/job/ build-mir/ 4573/console /mir-jenkins. ubuntu. com/job/ build-0- fetch/4699 /mir-jenkins. ubuntu. com/job/ build-1- sourcepkg/ release= xenial+ overlay/ 4688 /mir-jenkins. ubuntu. com/job/ build-1- sourcepkg/ release= zesty/4688 /mir-jenkins. ubuntu. com/job/ build-2- binpkg- mir/arch= amd64,compiler= clang,platform= mesa,release= zesty/4605 /mir-jenkins. ubuntu. com/job/ build-2- binpkg- mir/arch= amd64,compiler= clang,platform= mesa,release= zesty/4605/ artifact/ output/ *zip*/output. zip /mir-jenkins. ubuntu. com/job/ build-2- binpkg- mir/arch= amd64,compiler= gcc,platform= mesa,release= xenial+ overlay/ 4605/console /mir-jenkins. ubuntu. com/job/ build-2- binpkg- mir/arch= amd64,compiler= gcc,platform= mesa,release= zesty/4605 /mir-jenkins. ubuntu. com/job/ build-2- binpkg- mir/arch= amd64,compiler= gcc,platform= mesa,release= zesty/4605/ artifact/ output/ *zip*/output. zip /mir-jenkins. ubuntu. com/job/ build-2- binpkg- mir/arch= cross-armhf, compiler= gcc,platform= mesa,release= zesty/4605 /mir-jenkins. ubuntu. com/job/ build-2- binpkg- mir/arch= cross-armhf, compiler= gcc,platform= mesa,release= zesty/4605/ artifact/ output/ *zip*/output. zip /mir-jenkins. ubuntu. com/job/ build-2- binpkg- mir/arch= i386,compiler= gcc,platform= mesa,release= xenial+ overlay/ 4605 /mir-jenkins. ubuntu. com/job/ build-2- binpkg- mir/arch= i386,compiler= gcc,platform= mesa,release= xenial+ overlay/ 4605/artifact/ output/ *zip*/output. zip
https:/
Executed test runs:
FAILURE: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
deb: https:/
FAILURE: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
Click here to trigger a rebuild: /mir-jenkins. ubuntu. com/job/ mir-ubuntu- ci/109/ rebuild
https:/