Merge lp:~alan-griffiths/mir/remove-force_requests_to_complete into lp:mir
- remove-force_requests_to_complete
- Merge into development-branch
Proposed by
Alan Griffiths
Status: | Work in progress |
---|---|
Proposed branch: | lp:~alan-griffiths/mir/remove-force_requests_to_complete |
Merge into: | lp:mir |
Prerequisite: | lp:~alan-griffiths/mir/SwitchingBundle-controls-completion-of-client_acquire-without-blocking |
Diff against target: |
1020 lines (+76/-217) 34 files modified
examples/demo-inprocess-surface-client/inprocess_egl_client.cpp (+0/-2) include/server/mir/compositor/buffer_stream.h (+0/-1) include/server/mir/default_server_configuration.h (+0/-1) include/server/mir/frontend/surface.h (+0/-2) include/server/mir/shell/session.h (+0/-2) include/test/mir_test_doubles/stub_buffer_stream.h (+0/-4) include/test/mir_test_doubles/stub_session.h (+0/-3) include/test/mir_test_doubles/stub_shell_session.h (+0/-3) src/server/compositor/buffer_bundle.h (+0/-1) src/server/compositor/buffer_stream_surfaces.cpp (+0/-6) src/server/compositor/buffer_stream_surfaces.h (+0/-1) src/server/compositor/switching_bundle.cpp (+0/-9) src/server/compositor/switching_bundle.h (+0/-1) src/server/frontend/default_configuration.cpp (+0/-4) src/server/frontend/published_socket_connector.cpp (+1/-10) src/server/frontend/published_socket_connector.h (+0/-3) src/server/frontend/session_mediator.cpp (+9/-5) src/server/frontend/session_mediator.h (+2/-1) src/server/scene/application_session.cpp (+0/-9) src/server/scene/application_session.h (+0/-2) src/server/scene/basic_surface.cpp (+0/-5) src/server/scene/basic_surface.h (+0/-1) src/server/scene/default_configuration.cpp (+0/-13) src/server/scene/surface_impl.cpp (+0/-5) src/server/scene/surface_impl.h (+0/-2) tests/integration-tests/compositor/test_buffer_stream.cpp (+0/-2) tests/integration-tests/test_swapinterval.cpp (+0/-1) tests/mir_test_doubles/test_protobuf_socket_server.cpp (+0/-1) tests/unit-tests/compositor/test_buffer_stream.cpp (+0/-21) tests/unit-tests/compositor/test_switching_bundle.cpp (+0/-4) tests/unit-tests/frontend/test_published_socket_connector.cpp (+0/-17) tests/unit-tests/frontend/test_session_mediator.cpp (+64/-64) tests/unit-tests/scene/test_surface.cpp (+0/-10) tests/unit-tests/scene/test_surface_stack.cpp (+0/-1) |
To merge this branch: | bzr merge lp:~alan-griffiths/mir/remove-force_requests_to_complete |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Mir development team | Pending | ||
Review via email: mp+205173@code.launchpad.net |
Commit message
Strip out all the force_requests_
Description of the change
Strip out all the force_requests_
To post a comment you must log in.
Unmerged revisions
- 1372. By Alan Griffiths
-
Try extending lifetime of session mediator until callback processed
- 1371. By Alan Griffiths
-
merge lp:~alan-griffiths/mir/SwitchingBundle-controls-completion-of-client_acquire-without-blocking
- 1370. By Alan Griffiths
-
Strip out all the force_requests_
to_complete( ) code that became obsolete with lp:~alan-griffiths/mir/SwitchingBundle-controls-completion-of-client_acquire-without-blocking - 1369. By Alan Griffiths
-
merge lp:~alan-griffiths/mir/SwitchingBundle-controls-completion-of-client_acquire-without-blocking
Preview Diff
[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1 | === modified file 'examples/demo-inprocess-surface-client/inprocess_egl_client.cpp' |
2 | --- examples/demo-inprocess-surface-client/inprocess_egl_client.cpp 2014-01-13 06:12:33 +0000 |
3 | +++ examples/demo-inprocess-surface-client/inprocess_egl_client.cpp 2014-02-06 14:45:58 +0000 |
4 | @@ -69,8 +69,6 @@ |
5 | { |
6 | terminate = true; |
7 | auto session = focus_controller->focussed_application().lock(); |
8 | - if (session) |
9 | - session->force_requests_to_complete(); |
10 | client_thread.join(); |
11 | } |
12 | |
13 | |
14 | === modified file 'include/server/mir/compositor/buffer_stream.h' |
15 | --- include/server/mir/compositor/buffer_stream.h 2014-02-06 14:45:58 +0000 |
16 | +++ include/server/mir/compositor/buffer_stream.h 2014-02-06 14:45:58 +0000 |
17 | @@ -49,7 +49,6 @@ |
18 | virtual geometry::Size stream_size() = 0; |
19 | virtual void resize(geometry::Size const& size) = 0; |
20 | virtual void allow_framedropping(bool) = 0; |
21 | - virtual void force_requests_to_complete() = 0; |
22 | }; |
23 | |
24 | } |
25 | |
26 | === modified file 'include/server/mir/default_server_configuration.h' |
27 | --- include/server/mir/default_server_configuration.h 2014-01-29 18:02:33 +0000 |
28 | +++ include/server/mir/default_server_configuration.h 2014-02-06 14:45:58 +0000 |
29 | @@ -313,7 +313,6 @@ |
30 | std::shared_ptr<scene::SessionManager> the_session_manager(); |
31 | std::shared_ptr<scene::SurfaceBuilder> the_surface_builder(); |
32 | std::shared_ptr<scene::SurfaceController> the_surface_controller(); |
33 | - std::function<void()> force_threads_to_unblock_callback(); |
34 | }; |
35 | } |
36 | |
37 | |
38 | === modified file 'include/server/mir/frontend/surface.h' |
39 | --- include/server/mir/frontend/surface.h 2014-02-06 14:45:58 +0000 |
40 | +++ include/server/mir/frontend/surface.h 2014-02-06 14:45:58 +0000 |
41 | @@ -51,8 +51,6 @@ |
42 | |
43 | virtual ~Surface() {} |
44 | |
45 | - virtual void force_requests_to_complete() = 0; |
46 | - |
47 | virtual geometry::Size size() const = 0; |
48 | virtual MirPixelFormat pixel_format() const = 0; |
49 | |
50 | |
51 | === modified file 'include/server/mir/shell/session.h' |
52 | --- include/server/mir/shell/session.h 2014-01-13 06:12:33 +0000 |
53 | +++ include/server/mir/shell/session.h 2014-02-06 14:45:58 +0000 |
54 | @@ -33,8 +33,6 @@ |
55 | { |
56 | public: |
57 | virtual std::string name() const = 0; |
58 | - virtual void force_requests_to_complete() = 0; |
59 | - |
60 | virtual void take_snapshot(SnapshotCallback const& snapshot_taken) = 0; |
61 | virtual std::shared_ptr<Surface> default_surface() const = 0; |
62 | virtual void set_lifecycle_state(MirLifecycleState state) = 0; |
63 | |
64 | === modified file 'include/test/mir_test_doubles/stub_buffer_stream.h' |
65 | --- include/test/mir_test_doubles/stub_buffer_stream.h 2014-02-06 14:45:58 +0000 |
66 | +++ include/test/mir_test_doubles/stub_buffer_stream.h 2014-02-06 14:45:58 +0000 |
67 | @@ -64,10 +64,6 @@ |
68 | { |
69 | } |
70 | |
71 | - void force_requests_to_complete() override |
72 | - { |
73 | - } |
74 | - |
75 | void allow_framedropping(bool) override |
76 | { |
77 | } |
78 | |
79 | === modified file 'include/test/mir_test_doubles/stub_session.h' |
80 | --- include/test/mir_test_doubles/stub_session.h 2013-08-28 03:41:48 +0000 |
81 | +++ include/test/mir_test_doubles/stub_session.h 2014-02-06 14:45:58 +0000 |
82 | @@ -45,9 +45,6 @@ |
83 | { |
84 | return std::string(); |
85 | } |
86 | - void force_requests_to_complete() |
87 | - { |
88 | - } |
89 | void hide() |
90 | { |
91 | } |
92 | |
93 | === modified file 'include/test/mir_test_doubles/stub_shell_session.h' |
94 | --- include/test/mir_test_doubles/stub_shell_session.h 2014-01-13 06:12:33 +0000 |
95 | +++ include/test/mir_test_doubles/stub_shell_session.h 2014-02-06 14:45:58 +0000 |
96 | @@ -45,9 +45,6 @@ |
97 | { |
98 | return std::string(); |
99 | } |
100 | - void force_requests_to_complete() override |
101 | - { |
102 | - } |
103 | void hide() override |
104 | { |
105 | } |
106 | |
107 | === modified file 'src/server/compositor/buffer_bundle.h' |
108 | --- src/server/compositor/buffer_bundle.h 2014-02-06 14:45:58 +0000 |
109 | +++ src/server/compositor/buffer_bundle.h 2014-02-06 14:45:58 +0000 |
110 | @@ -44,7 +44,6 @@ |
111 | |
112 | virtual graphics::BufferProperties properties() const = 0; |
113 | virtual void allow_framedropping(bool dropping_allowed) = 0; |
114 | - virtual void force_requests_to_complete() = 0; |
115 | virtual void resize(const geometry::Size &newsize) = 0; |
116 | protected: |
117 | BufferBundle() = default; |
118 | |
119 | === modified file 'src/server/compositor/buffer_stream_surfaces.cpp' |
120 | --- src/server/compositor/buffer_stream_surfaces.cpp 2014-02-06 14:45:58 +0000 |
121 | +++ src/server/compositor/buffer_stream_surfaces.cpp 2014-02-06 14:45:58 +0000 |
122 | @@ -34,7 +34,6 @@ |
123 | |
124 | mc::BufferStreamSurfaces::~BufferStreamSurfaces() |
125 | { |
126 | - force_requests_to_complete(); |
127 | } |
128 | |
129 | std::shared_ptr<mg::Buffer> mc::BufferStreamSurfaces::lock_compositor_buffer( |
130 | @@ -74,11 +73,6 @@ |
131 | buffer_bundle->resize(size); |
132 | } |
133 | |
134 | -void mc::BufferStreamSurfaces::force_requests_to_complete() |
135 | -{ |
136 | - buffer_bundle->force_requests_to_complete(); |
137 | -} |
138 | - |
139 | void mc::BufferStreamSurfaces::allow_framedropping(bool allow) |
140 | { |
141 | buffer_bundle->allow_framedropping(allow); |
142 | |
143 | === modified file 'src/server/compositor/buffer_stream_surfaces.h' |
144 | --- src/server/compositor/buffer_stream_surfaces.h 2014-02-06 14:45:58 +0000 |
145 | +++ src/server/compositor/buffer_stream_surfaces.h 2014-02-06 14:45:58 +0000 |
146 | @@ -49,7 +49,6 @@ |
147 | geometry::Size stream_size() override; |
148 | void resize(geometry::Size const& size) override; |
149 | void allow_framedropping(bool) override; |
150 | - void force_requests_to_complete() override; |
151 | |
152 | protected: |
153 | BufferStreamSurfaces(const BufferStreamSurfaces&) = delete; |
154 | |
155 | === modified file 'src/server/compositor/switching_bundle.cpp' |
156 | --- src/server/compositor/switching_bundle.cpp 2014-02-06 14:45:58 +0000 |
157 | +++ src/server/compositor/switching_bundle.cpp 2014-02-06 14:45:58 +0000 |
158 | @@ -398,15 +398,6 @@ |
159 | cond.notify_all(); |
160 | } |
161 | |
162 | -void mc::SwitchingBundle::force_requests_to_complete() |
163 | -{ |
164 | - std::unique_lock<std::mutex> lock(guard); |
165 | - client_acquire_todo = nullptr; |
166 | - drop_frames(nready); |
167 | - force_drop = nbuffers + 1; |
168 | - cond.notify_all(); |
169 | -} |
170 | - |
171 | void mc::SwitchingBundle::allow_framedropping(bool allow_dropping) |
172 | { |
173 | std::unique_lock<std::mutex> lock(guard); |
174 | |
175 | === modified file 'src/server/compositor/switching_bundle.h' |
176 | --- src/server/compositor/switching_bundle.h 2014-02-06 14:45:58 +0000 |
177 | +++ src/server/compositor/switching_bundle.h 2014-02-06 14:45:58 +0000 |
178 | @@ -56,7 +56,6 @@ |
179 | void compositor_release(std::shared_ptr<graphics::Buffer> const& released_buffer); |
180 | std::shared_ptr<graphics::Buffer> snapshot_acquire(); |
181 | void snapshot_release(std::shared_ptr<graphics::Buffer> const& released_buffer); |
182 | - void force_requests_to_complete(); |
183 | void allow_framedropping(bool dropping_allowed); |
184 | bool framedropping_allowed() const; |
185 | |
186 | |
187 | === modified file 'src/server/frontend/default_configuration.cpp' |
188 | --- src/server/frontend/default_configuration.cpp 2014-01-30 13:27:59 +0000 |
189 | +++ src/server/frontend/default_configuration.cpp 2014-02-06 14:45:58 +0000 |
190 | @@ -114,14 +114,11 @@ |
191 | { |
192 | auto const threads = the_options()->get<int>(frontend_threads_opt); |
193 | |
194 | - auto const& force_threads_to_unblock = force_threads_to_unblock_callback(); |
195 | - |
196 | if (the_options()->is_set(no_server_socket_opt)) |
197 | { |
198 | return std::make_shared<mf::BasicConnector>( |
199 | the_session_creator(), |
200 | threads, |
201 | - force_threads_to_unblock, |
202 | the_connector_report()); |
203 | } |
204 | else |
205 | @@ -130,7 +127,6 @@ |
206 | the_socket_file(), |
207 | the_session_creator(), |
208 | threads, |
209 | - force_threads_to_unblock, |
210 | the_connector_report()); |
211 | } |
212 | }); |
213 | |
214 | === modified file 'src/server/frontend/published_socket_connector.cpp' |
215 | --- src/server/frontend/published_socket_connector.cpp 2014-01-22 17:05:48 +0000 |
216 | +++ src/server/frontend/published_socket_connector.cpp 2014-02-06 14:45:58 +0000 |
217 | @@ -35,9 +35,8 @@ |
218 | const std::string& socket_file, |
219 | std::shared_ptr<SessionCreator> const& session_creator, |
220 | int threads, |
221 | - std::function<void()> const& force_threads_to_unblock, |
222 | std::shared_ptr<ConnectorReport> const& report) |
223 | -: BasicConnector(session_creator, threads, force_threads_to_unblock, report), |
224 | +: BasicConnector(session_creator, threads, report), |
225 | socket_file(socket_file), |
226 | acceptor(io_service, socket_file) |
227 | { |
228 | @@ -83,12 +82,10 @@ |
229 | mf::BasicConnector::BasicConnector( |
230 | std::shared_ptr<SessionCreator> const& session_creator, |
231 | int threads, |
232 | - std::function<void()> const& force_threads_to_unblock, |
233 | std::shared_ptr<ConnectorReport> const& report) |
234 | : work(io_service), |
235 | report(report), |
236 | io_service_threads(threads), |
237 | - force_threads_to_unblock(force_threads_to_unblock), |
238 | session_creator{session_creator} |
239 | { |
240 | } |
241 | @@ -123,12 +120,6 @@ |
242 | /* Stop processing new requests */ |
243 | io_service.stop(); |
244 | |
245 | - /* |
246 | - * Ensure that any pending requests will complete (i.e., that they |
247 | - * will not block indefinitely waiting for a resource from the server) |
248 | - */ |
249 | - force_threads_to_unblock(); |
250 | - |
251 | report->stopping_threads(io_service_threads.size()); |
252 | |
253 | /* Wait for all io processing threads to finish */ |
254 | |
255 | === modified file 'src/server/frontend/published_socket_connector.h' |
256 | --- src/server/frontend/published_socket_connector.h 2014-01-22 17:05:48 +0000 |
257 | +++ src/server/frontend/published_socket_connector.h 2014-02-06 14:45:58 +0000 |
258 | @@ -50,7 +50,6 @@ |
259 | explicit BasicConnector( |
260 | std::shared_ptr<SessionCreator> const& session_creator, |
261 | int threads, |
262 | - std::function<void()> const& force_threads_to_unblock, |
263 | std::shared_ptr<ConnectorReport> const& report); |
264 | ~BasicConnector() noexcept; |
265 | void start() override; |
266 | @@ -67,7 +66,6 @@ |
267 | |
268 | private: |
269 | std::vector<std::thread> io_service_threads; |
270 | - std::function<void()> const force_threads_to_unblock; |
271 | std::shared_ptr<SessionCreator> const session_creator; |
272 | }; |
273 | |
274 | @@ -79,7 +77,6 @@ |
275 | const std::string& socket_file, |
276 | std::shared_ptr<SessionCreator> const& session_creator, |
277 | int threads, |
278 | - std::function<void()> const& force_threads_to_unblock, |
279 | std::shared_ptr<ConnectorReport> const& report); |
280 | ~PublishedSocketConnector() noexcept; |
281 | |
282 | |
283 | === modified file 'src/server/frontend/session_mediator.cpp' |
284 | --- src/server/frontend/session_mediator.cpp 2014-02-06 14:45:58 +0000 |
285 | +++ src/server/frontend/session_mediator.cpp 2014-02-06 14:45:58 +0000 |
286 | @@ -174,20 +174,22 @@ |
287 | if (surface->supports_input()) |
288 | response->add_fd(surface->client_input_fd()); |
289 | |
290 | + auto const self = shared_from_this(); |
291 | + |
292 | advance_buffer(surf_id, *surface, |
293 | - [lock, this, response, done, session](graphics::Buffer* client_buffer, bool need_full_ipc) |
294 | + [lock, self, response, done, session](graphics::Buffer* client_buffer, bool need_full_ipc) |
295 | { |
296 | lock->unlock(); |
297 | |
298 | auto buffer = response->mutable_buffer(); |
299 | - pack_protobuf_buffer(*buffer, client_buffer, need_full_ipc); |
300 | + self->pack_protobuf_buffer(*buffer, client_buffer, need_full_ipc); |
301 | |
302 | // TODO: NOTE: We use the ordering here to ensure the shell acts on the surface after the surface ID is sent over the wire. |
303 | // This guarantees that notifications such as, gained focus, etc, can be correctly interpreted by the client. |
304 | // To achieve this order we rely on done->Run() sending messages synchronously. As documented in mfd::SocketMessenger::send. |
305 | // this will require additional synchronization if mfd::SocketMessenger::send changes. |
306 | done->Run(); |
307 | - shell->handle_surface_created(session); |
308 | + self->shell->handle_surface_created(session); |
309 | }); |
310 | } |
311 | |
312 | @@ -216,12 +218,14 @@ |
313 | |
314 | auto surface = session->get_surface(surf_id); |
315 | |
316 | + auto const self = shared_from_this(); |
317 | + |
318 | advance_buffer(surf_id, *surface, |
319 | - [lock, this, response, done, session](graphics::Buffer* client_buffer, bool need_full_ipc) |
320 | + [lock, self, response, done, session](graphics::Buffer* client_buffer, bool need_full_ipc) |
321 | { |
322 | lock->unlock(); |
323 | |
324 | - pack_protobuf_buffer(*response, client_buffer, need_full_ipc); |
325 | + self->pack_protobuf_buffer(*response, client_buffer, need_full_ipc); |
326 | |
327 | done->Run(); |
328 | }); |
329 | |
330 | === modified file 'src/server/frontend/session_mediator.h' |
331 | --- src/server/frontend/session_mediator.h 2014-02-06 14:45:58 +0000 |
332 | +++ src/server/frontend/session_mediator.h 2014-02-06 14:45:58 +0000 |
333 | @@ -56,7 +56,8 @@ |
334 | class Screencast; |
335 | |
336 | // SessionMediator relays requests from the client process into the server. |
337 | -class SessionMediator : public mir::protobuf::DisplayServer |
338 | +class SessionMediator : public mir::protobuf::DisplayServer, |
339 | + public std::enable_shared_from_this<SessionMediator> |
340 | { |
341 | public: |
342 | SessionMediator( |
343 | |
344 | === modified file 'src/server/scene/application_session.cpp' |
345 | --- src/server/scene/application_session.cpp 2014-01-13 06:12:33 +0000 |
346 | +++ src/server/scene/application_session.cpp 2014-02-06 14:45:58 +0000 |
347 | @@ -125,15 +125,6 @@ |
348 | return session_name; |
349 | } |
350 | |
351 | -void ms::ApplicationSession::force_requests_to_complete() |
352 | -{ |
353 | - std::unique_lock<std::mutex> lock(surfaces_mutex); |
354 | - for (auto& id_s : surfaces) |
355 | - { |
356 | - id_s.second->force_requests_to_complete(); |
357 | - } |
358 | -} |
359 | - |
360 | void ms::ApplicationSession::hide() |
361 | { |
362 | std::unique_lock<std::mutex> lock(surfaces_mutex); |
363 | |
364 | === modified file 'src/server/scene/application_session.h' |
365 | --- src/server/scene/application_session.h 2014-01-13 06:12:33 +0000 |
366 | +++ src/server/scene/application_session.h 2014-02-06 14:45:58 +0000 |
367 | @@ -61,8 +61,6 @@ |
368 | |
369 | std::string name() const; |
370 | |
371 | - void force_requests_to_complete(); |
372 | - |
373 | void hide(); |
374 | void show(); |
375 | |
376 | |
377 | === modified file 'src/server/scene/basic_surface.cpp' |
378 | --- src/server/scene/basic_surface.cpp 2014-02-06 14:45:58 +0000 |
379 | +++ src/server/scene/basic_surface.cpp 2014-02-06 14:45:58 +0000 |
380 | @@ -49,11 +49,6 @@ |
381 | report->surface_created(this); |
382 | } |
383 | |
384 | -void ms::BasicSurface::force_requests_to_complete() |
385 | -{ |
386 | - surface_buffer_stream->force_requests_to_complete(); |
387 | -} |
388 | - |
389 | ms::BasicSurface::~BasicSurface() |
390 | { |
391 | report->surface_deleted(this); |
392 | |
393 | === modified file 'src/server/scene/basic_surface.h' |
394 | --- src/server/scene/basic_surface.h 2014-02-06 14:45:58 +0000 |
395 | +++ src/server/scene/basic_surface.h 2014-02-06 14:45:58 +0000 |
396 | @@ -74,7 +74,6 @@ |
397 | |
398 | virtual std::shared_ptr<graphics::Buffer> snapshot_buffer() const; |
399 | virtual void swap_buffers(graphics::Buffer* old_buffer, std::function<void(graphics::Buffer* new_buffer)> complete); |
400 | - virtual void force_requests_to_complete(); |
401 | |
402 | virtual bool supports_input() const; |
403 | virtual int client_input_fd() const; |
404 | |
405 | === modified file 'src/server/scene/default_configuration.cpp' |
406 | --- src/server/scene/default_configuration.cpp 2014-01-29 15:20:07 +0000 |
407 | +++ src/server/scene/default_configuration.cpp 2014-02-06 14:45:58 +0000 |
408 | @@ -205,19 +205,6 @@ |
409 | return the_mediating_display_changer(); |
410 | } |
411 | |
412 | -std::function<void()> |
413 | -mir::DefaultServerConfiguration::force_threads_to_unblock_callback() |
414 | -{ |
415 | - auto shell_sessions = the_session_container(); |
416 | - return [shell_sessions] |
417 | - { |
418 | - shell_sessions->for_each([](std::shared_ptr<msh::Session> const& session) |
419 | - { |
420 | - session->force_requests_to_complete(); |
421 | - }); |
422 | - }; |
423 | -} |
424 | - |
425 | std::shared_ptr<mf::EventSink> |
426 | mir::DefaultServerConfiguration::the_global_event_sink() |
427 | { |
428 | |
429 | === modified file 'src/server/scene/surface_impl.cpp' |
430 | --- src/server/scene/surface_impl.cpp 2014-02-06 14:45:58 +0000 |
431 | +++ src/server/scene/surface_impl.cpp 2014-02-06 14:45:58 +0000 |
432 | @@ -73,11 +73,6 @@ |
433 | surface->set_hidden(false); |
434 | } |
435 | |
436 | -void ms::SurfaceImpl::force_requests_to_complete() |
437 | -{ |
438 | - surface->force_requests_to_complete(); |
439 | -} |
440 | - |
441 | mir::geometry::Size ms::SurfaceImpl::size() const |
442 | { |
443 | return surface->size(); |
444 | |
445 | === modified file 'src/server/scene/surface_impl.h' |
446 | --- src/server/scene/surface_impl.h 2014-02-06 14:45:58 +0000 |
447 | +++ src/server/scene/surface_impl.h 2014-02-06 14:45:58 +0000 |
448 | @@ -57,8 +57,6 @@ |
449 | virtual void hide(); |
450 | virtual void show(); |
451 | |
452 | - virtual void force_requests_to_complete(); |
453 | - |
454 | virtual std::string name() const; |
455 | |
456 | virtual void move_to(geometry::Point const& top_left); |
457 | |
458 | === modified file 'tests/integration-tests/compositor/test_buffer_stream.cpp' |
459 | --- tests/integration-tests/compositor/test_buffer_stream.cpp 2014-02-06 14:45:58 +0000 |
460 | +++ tests/integration-tests/compositor/test_buffer_stream.cpp 2014-02-06 14:45:58 +0000 |
461 | @@ -326,8 +326,6 @@ |
462 | |
463 | done = true; |
464 | |
465 | - buffer_stream.force_requests_to_complete(); |
466 | - |
467 | compositor.join(); |
468 | |
469 | for (auto &s : snapshotters) |
470 | |
471 | === modified file 'tests/integration-tests/test_swapinterval.cpp' |
472 | --- tests/integration-tests/test_swapinterval.cpp 2014-02-06 14:45:58 +0000 |
473 | +++ tests/integration-tests/test_swapinterval.cpp 2014-02-06 14:45:58 +0000 |
474 | @@ -70,7 +70,6 @@ |
475 | |
476 | geom::Size stream_size() override { return geom::Size{}; } |
477 | void resize(geom::Size const&) override {} |
478 | - void force_requests_to_complete() override {} |
479 | void allow_framedropping(bool) override |
480 | { |
481 | while (write(render_operations_fd, "a", 1) != 1) continue; |
482 | |
483 | === modified file 'tests/mir_test_doubles/test_protobuf_socket_server.cpp' |
484 | --- tests/mir_test_doubles/test_protobuf_socket_server.cpp 2014-01-22 15:54:11 +0000 |
485 | +++ tests/mir_test_doubles/test_protobuf_socket_server.cpp 2014-02-06 14:45:58 +0000 |
486 | @@ -42,7 +42,6 @@ |
487 | std::make_shared<mtd::StubSessionAuthorizer>(), |
488 | std::make_shared<mf::NullMessageProcessorReport>()), |
489 | 10, |
490 | - []{}, |
491 | report); |
492 | } |
493 | } |
494 | |
495 | === modified file 'tests/unit-tests/compositor/test_buffer_stream.cpp' |
496 | --- tests/unit-tests/compositor/test_buffer_stream.cpp 2014-02-06 14:45:58 +0000 |
497 | +++ tests/unit-tests/compositor/test_buffer_stream.cpp 2014-02-06 14:45:58 +0000 |
498 | @@ -39,10 +39,6 @@ |
499 | { |
500 | mock_buffer = std::make_shared<mtd::StubBuffer>(); |
501 | mock_bundle = std::make_shared<mtd::MockBufferBundle>(); |
502 | - |
503 | - // Two of the tests care about this, the rest should not... |
504 | - EXPECT_CALL(*mock_bundle, force_requests_to_complete()) |
505 | - .Times(::testing::AnyNumber()); |
506 | } |
507 | |
508 | std::shared_ptr<mtd::StubBuffer> mock_buffer; |
509 | @@ -75,23 +71,6 @@ |
510 | EXPECT_EQ(format, returned_pf); |
511 | } |
512 | |
513 | -TEST_F(BufferStreamTest, force_requests_to_complete) |
514 | -{ |
515 | - EXPECT_CALL(*mock_bundle, force_requests_to_complete()) |
516 | - .Times(2); // Once explcit, once on destruction |
517 | - |
518 | - mc::BufferStreamSurfaces buffer_stream(mock_bundle); |
519 | - buffer_stream.force_requests_to_complete(); |
520 | -} |
521 | - |
522 | -TEST_F(BufferStreamTest, requests_are_completed_before_destruction) |
523 | -{ |
524 | - EXPECT_CALL(*mock_bundle, force_requests_to_complete()) |
525 | - .Times(1); |
526 | - |
527 | - mc::BufferStreamSurfaces buffer_stream(mock_bundle); |
528 | -} |
529 | - |
530 | TEST_F(BufferStreamTest, get_buffer_for_compositor_handles_resources) |
531 | { |
532 | using namespace testing; |
533 | |
534 | === modified file 'tests/unit-tests/compositor/test_switching_bundle.cpp' |
535 | --- tests/unit-tests/compositor/test_switching_bundle.cpp 2014-02-06 14:45:58 +0000 |
536 | +++ tests/unit-tests/compositor/test_switching_bundle.cpp 2014-02-06 14:45:58 +0000 |
537 | @@ -293,8 +293,6 @@ |
538 | unsigned long frameno = 0; |
539 | const int N = 100; |
540 | |
541 | - bundle.force_requests_to_complete(); |
542 | - |
543 | std::shared_ptr<mg::Buffer> buf[N]; |
544 | for (int i = 0; i < N; i++) |
545 | buf[i] = bundle.compositor_acquire(++frameno); |
546 | @@ -713,7 +711,6 @@ |
547 | * unblock clients. The latter only temporarily unblock clients. |
548 | * But that requires interface changes all over the place... |
549 | */ |
550 | - bundle.force_requests_to_complete(); |
551 | client.join(); |
552 | } |
553 | } |
554 | @@ -729,7 +726,6 @@ |
555 | bundle.allow_framedropping(false); |
556 | |
557 | std::thread client(client_thread, std::ref(bundle), nbuffers); |
558 | - bundle.force_requests_to_complete(); |
559 | client.join(); |
560 | |
561 | EXPECT_FALSE(bundle.framedropping_allowed()); |
562 | |
563 | === modified file 'tests/unit-tests/frontend/test_published_socket_connector.cpp' |
564 | --- tests/unit-tests/frontend/test_published_socket_connector.cpp 2014-01-22 15:54:11 +0000 |
565 | +++ tests/unit-tests/frontend/test_published_socket_connector.cpp 2014-02-06 14:45:58 +0000 |
566 | @@ -342,27 +342,11 @@ |
567 | EXPECT_EQ(magic.magic(), stub_server_tool->drm_magic); |
568 | } |
569 | |
570 | -namespace |
571 | -{ |
572 | - |
573 | -class MockForceRequests |
574 | -{ |
575 | -public: |
576 | - MOCK_METHOD0(force_requests_to_complete, void()); |
577 | -}; |
578 | - |
579 | -} |
580 | - |
581 | TEST_F(PublishedSocketConnector, forces_requests_to_complete_when_stopping) |
582 | { |
583 | - MockForceRequests mock_force_requests; |
584 | auto stub_server_tool = std::make_shared<mt::StubServerTool>(); |
585 | auto ipc_factory = std::make_shared<mtd::StubIpcFactory>(*stub_server_tool); |
586 | |
587 | - /* Once for the explicit stop() and once when the communicator is destroyed */ |
588 | - EXPECT_CALL(mock_force_requests, force_requests_to_complete()) |
589 | - .Times(2); |
590 | - |
591 | auto comms = std::make_shared<mf::PublishedSocketConnector>( |
592 | "./test_socket1", |
593 | std::make_shared<mf::ProtobufSessionCreator>( |
594 | @@ -370,7 +354,6 @@ |
595 | std::make_shared<mtd::StubSessionAuthorizer>(), |
596 | std::make_shared<mf::NullMessageProcessorReport>()), |
597 | 10, |
598 | - std::bind(&MockForceRequests::force_requests_to_complete, &mock_force_requests), |
599 | std::make_shared<mf::NullConnectorReport>()); |
600 | |
601 | comms->start(); |
602 | |
603 | === modified file 'tests/unit-tests/frontend/test_session_mediator.cpp' |
604 | --- tests/unit-tests/frontend/test_session_mediator.cpp 2014-02-06 14:45:58 +0000 |
605 | +++ tests/unit-tests/frontend/test_session_mediator.cpp 2014-02-06 14:45:58 +0000 |
606 | @@ -206,10 +206,10 @@ |
607 | report{std::make_shared<mf::NullSessionMediatorReport>()}, |
608 | resource_cache{std::make_shared<mf::ResourceCache>()}, |
609 | stub_screencast{std::make_shared<StubScreencast>()}, |
610 | - mediator{shell, graphics_platform, graphics_changer, |
611 | + mediator{std::make_shared<mf::SessionMediator>(shell, graphics_platform, graphics_changer, |
612 | surface_pixel_formats, report, |
613 | std::make_shared<mtd::NullEventSink>(), |
614 | - resource_cache, stub_screencast}, |
615 | + resource_cache, stub_screencast)}, |
616 | stubbed_session{std::make_shared<StubbedSession>()}, |
617 | null_callback{google::protobuf::NewPermanentCallback(google::protobuf::DoNothing)} |
618 | { |
619 | @@ -227,7 +227,7 @@ |
620 | std::shared_ptr<mf::SessionMediatorReport> const report; |
621 | std::shared_ptr<mf::ResourceCache> const resource_cache; |
622 | std::shared_ptr<StubScreencast> const stub_screencast; |
623 | - mf::SessionMediator mediator; |
624 | + std::shared_ptr<mf::SessionMediator> const mediator; |
625 | std::shared_ptr<StubbedSession> const stubbed_session; |
626 | |
627 | std::unique_ptr<google::protobuf::Closure> null_callback; |
628 | @@ -243,8 +243,8 @@ |
629 | |
630 | EXPECT_CALL(*shell, close_session(_)).Times(1); |
631 | |
632 | - mediator.connect(nullptr, &connect_parameters, &connection, null_callback.get()); |
633 | - mediator.disconnect(nullptr, nullptr, nullptr, null_callback.get()); |
634 | + mediator->connect(nullptr, &connect_parameters, &connection, null_callback.get()); |
635 | + mediator->disconnect(nullptr, nullptr, nullptr, null_callback.get()); |
636 | } |
637 | |
638 | TEST_F(SessionMediatorTest, calling_methods_before_connect_throws) |
639 | @@ -253,31 +253,31 @@ |
640 | mp::SurfaceParameters request; |
641 | mp::Surface response; |
642 | |
643 | - mediator.create_surface(nullptr, &request, &response, null_callback.get()); |
644 | + mediator->create_surface(nullptr, &request, &response, null_callback.get()); |
645 | }, std::logic_error); |
646 | |
647 | EXPECT_THROW({ |
648 | mp::SurfaceId request; |
649 | mp::Buffer response; |
650 | |
651 | - mediator.next_buffer(nullptr, &request, &response, null_callback.get()); |
652 | + mediator->next_buffer(nullptr, &request, &response, null_callback.get()); |
653 | }, std::logic_error); |
654 | |
655 | EXPECT_THROW({ |
656 | mp::SurfaceId request; |
657 | |
658 | - mediator.release_surface(nullptr, &request, nullptr, null_callback.get()); |
659 | + mediator->release_surface(nullptr, &request, nullptr, null_callback.get()); |
660 | }, std::logic_error); |
661 | |
662 | EXPECT_THROW({ |
663 | mp::DRMMagic request; |
664 | mp::DRMAuthMagicStatus response; |
665 | |
666 | - mediator.drm_auth_magic(nullptr, &request, &response, null_callback.get()); |
667 | + mediator->drm_auth_magic(nullptr, &request, &response, null_callback.get()); |
668 | }, std::logic_error); |
669 | |
670 | EXPECT_THROW({ |
671 | - mediator.disconnect(nullptr, nullptr, nullptr, null_callback.get()); |
672 | + mediator->disconnect(nullptr, nullptr, nullptr, null_callback.get()); |
673 | }, std::logic_error); |
674 | } |
675 | |
676 | @@ -286,23 +286,23 @@ |
677 | mp::ConnectParameters connect_parameters; |
678 | mp::Connection connection; |
679 | |
680 | - mediator.connect(nullptr, &connect_parameters, &connection, null_callback.get()); |
681 | + mediator->connect(nullptr, &connect_parameters, &connection, null_callback.get()); |
682 | |
683 | { |
684 | mp::SurfaceParameters request; |
685 | mp::Surface surface_response; |
686 | |
687 | - mediator.create_surface(nullptr, &request, &surface_response, null_callback.get()); |
688 | + mediator->create_surface(nullptr, &request, &surface_response, null_callback.get()); |
689 | |
690 | mp::SurfaceId surface = surface_response.id(); |
691 | mp::Buffer buffer_response; |
692 | |
693 | - mediator.next_buffer(nullptr, &surface, &buffer_response, null_callback.get()); |
694 | + mediator->next_buffer(nullptr, &surface, &buffer_response, null_callback.get()); |
695 | |
696 | - mediator.release_surface(nullptr, &surface, nullptr, null_callback.get()); |
697 | + mediator->release_surface(nullptr, &surface, nullptr, null_callback.get()); |
698 | } |
699 | |
700 | - mediator.disconnect(nullptr, nullptr, nullptr, null_callback.get()); |
701 | + mediator->disconnect(nullptr, nullptr, nullptr, null_callback.get()); |
702 | } |
703 | |
704 | TEST_F(SessionMediatorTest, calling_methods_after_disconnect_throws) |
705 | @@ -310,39 +310,39 @@ |
706 | mp::ConnectParameters connect_parameters; |
707 | mp::Connection connection; |
708 | |
709 | - mediator.connect(nullptr, &connect_parameters, &connection, null_callback.get()); |
710 | + mediator->connect(nullptr, &connect_parameters, &connection, null_callback.get()); |
711 | |
712 | - mediator.disconnect(nullptr, nullptr, nullptr, null_callback.get()); |
713 | + mediator->disconnect(nullptr, nullptr, nullptr, null_callback.get()); |
714 | |
715 | EXPECT_THROW({ |
716 | mp::SurfaceParameters surface_parameters; |
717 | mp::Surface surface; |
718 | |
719 | - mediator.create_surface(nullptr, &surface_parameters, &surface, null_callback.get()); |
720 | + mediator->create_surface(nullptr, &surface_parameters, &surface, null_callback.get()); |
721 | }, std::logic_error); |
722 | |
723 | EXPECT_THROW({ |
724 | mp::SurfaceId request; |
725 | mp::Buffer response; |
726 | |
727 | - mediator.next_buffer(nullptr, &request, &response, null_callback.get()); |
728 | + mediator->next_buffer(nullptr, &request, &response, null_callback.get()); |
729 | }, std::logic_error); |
730 | |
731 | EXPECT_THROW({ |
732 | mp::SurfaceId request; |
733 | |
734 | - mediator.release_surface(nullptr, &request, nullptr, null_callback.get()); |
735 | + mediator->release_surface(nullptr, &request, nullptr, null_callback.get()); |
736 | }, std::logic_error); |
737 | |
738 | EXPECT_THROW({ |
739 | mp::DRMMagic request; |
740 | mp::DRMAuthMagicStatus response; |
741 | |
742 | - mediator.drm_auth_magic(nullptr, &request, &response, null_callback.get()); |
743 | + mediator->drm_auth_magic(nullptr, &request, &response, null_callback.get()); |
744 | }, std::logic_error); |
745 | |
746 | EXPECT_THROW({ |
747 | - mediator.disconnect(nullptr, nullptr, nullptr, null_callback.get()); |
748 | + mediator->disconnect(nullptr, nullptr, nullptr, null_callback.get()); |
749 | }, std::logic_error); |
750 | } |
751 | |
752 | @@ -351,11 +351,11 @@ |
753 | mp::ConnectParameters connect_parameters; |
754 | mp::Connection connection; |
755 | |
756 | - mediator.connect(nullptr, &connect_parameters, &connection, null_callback.get()); |
757 | - |
758 | - mediator.disconnect(nullptr, nullptr, nullptr, null_callback.get()); |
759 | - |
760 | - mediator.connect(nullptr, &connect_parameters, &connection, null_callback.get()); |
761 | + mediator->connect(nullptr, &connect_parameters, &connection, null_callback.get()); |
762 | + |
763 | + mediator->disconnect(nullptr, nullptr, nullptr, null_callback.get()); |
764 | + |
765 | + mediator->connect(nullptr, &connect_parameters, &connection, null_callback.get()); |
766 | } |
767 | |
768 | TEST_F(SessionMediatorTest, connect_packs_display_configuration) |
769 | @@ -369,7 +369,7 @@ |
770 | EXPECT_CALL(*mock_display, active_configuration()) |
771 | .Times(1) |
772 | .WillOnce(Return(mt::fake_shared(config))); |
773 | - mf::SessionMediator mediator( |
774 | + auto const mediator = std::make_shared<mf::SessionMediator>( |
775 | shell, graphics_platform, mock_display, |
776 | surface_pixel_formats, report, |
777 | std::make_shared<mtd::NullEventSink>(), |
778 | @@ -382,7 +382,7 @@ |
779 | connection.clear_display_output(); |
780 | connection.clear_display_configuration(); |
781 | |
782 | - mediator.connect(nullptr, &connect_parameters, &connection, null_callback.get()); |
783 | + mediator->connect(nullptr, &connect_parameters, &connection, null_callback.get()); |
784 | |
785 | EXPECT_THAT(connection.display_configuration(), |
786 | mt::DisplayConfigMatches(std::cref(config))); |
787 | @@ -393,17 +393,17 @@ |
788 | mp::ConnectParameters connect_parameters; |
789 | mp::Connection connection; |
790 | |
791 | - mediator.connect(nullptr, &connect_parameters, &connection, null_callback.get()); |
792 | + mediator->connect(nullptr, &connect_parameters, &connection, null_callback.get()); |
793 | |
794 | { |
795 | mp::SurfaceParameters request; |
796 | mp::Surface response; |
797 | |
798 | - mediator.create_surface(nullptr, &request, &response, null_callback.get()); |
799 | + mediator->create_surface(nullptr, &request, &response, null_callback.get()); |
800 | EXPECT_EQ(StubbedSession::testing_client_input_fd, response.fd(0)); |
801 | } |
802 | |
803 | - mediator.disconnect(nullptr, nullptr, nullptr, null_callback.get()); |
804 | + mediator->disconnect(nullptr, nullptr, nullptr, null_callback.get()); |
805 | } |
806 | |
807 | TEST_F(SessionMediatorTest, no_input_channel_is_nonfatal) |
808 | @@ -416,16 +416,16 @@ |
809 | EXPECT_CALL(*stubbed_session->mock_surface, client_input_fd()) |
810 | .Times(0); |
811 | |
812 | - mediator.connect(nullptr, &connect_parameters, &connection, null_callback.get()); |
813 | + mediator->connect(nullptr, &connect_parameters, &connection, null_callback.get()); |
814 | |
815 | { |
816 | mp::SurfaceParameters request; |
817 | mp::Surface response; |
818 | |
819 | - mediator.create_surface(nullptr, &request, &response, null_callback.get()); |
820 | + mediator->create_surface(nullptr, &request, &response, null_callback.get()); |
821 | } |
822 | |
823 | - mediator.disconnect(nullptr, nullptr, nullptr, null_callback.get()); |
824 | + mediator->disconnect(nullptr, nullptr, nullptr, null_callback.get()); |
825 | } |
826 | |
827 | TEST_F(SessionMediatorTest, session_only_sends_needed_buffers) |
828 | @@ -435,7 +435,7 @@ |
829 | mp::ConnectParameters connect_parameters; |
830 | mp::Connection connection; |
831 | |
832 | - mediator.connect(nullptr, &connect_parameters, &connection, null_callback.get()); |
833 | + mediator->connect(nullptr, &connect_parameters, &connection, null_callback.get()); |
834 | |
835 | { |
836 | EXPECT_CALL(*stubbed_session->mock_buffer, id()) |
837 | @@ -456,14 +456,14 @@ |
838 | .Times(2); |
839 | |
840 | mp::SurfaceParameters surface_request; |
841 | - mediator.create_surface(nullptr, &surface_request, &surface_response, null_callback.get()); |
842 | + mediator->create_surface(nullptr, &surface_request, &surface_response, null_callback.get()); |
843 | buffer_request = surface_response.id(); |
844 | - mediator.next_buffer(nullptr, &buffer_request, &buffer_response[0], null_callback.get()); |
845 | - mediator.next_buffer(nullptr, &buffer_request, &buffer_response[1], null_callback.get()); |
846 | - mediator.next_buffer(nullptr, &buffer_request, &buffer_response[2], null_callback.get()); |
847 | + mediator->next_buffer(nullptr, &buffer_request, &buffer_response[0], null_callback.get()); |
848 | + mediator->next_buffer(nullptr, &buffer_request, &buffer_response[1], null_callback.get()); |
849 | + mediator->next_buffer(nullptr, &buffer_request, &buffer_response[2], null_callback.get()); |
850 | } |
851 | |
852 | - mediator.disconnect(nullptr, nullptr, nullptr, null_callback.get()); |
853 | + mediator->disconnect(nullptr, nullptr, nullptr, null_callback.get()); |
854 | } |
855 | |
856 | TEST_F(SessionMediatorTest, session_with_multiple_surfaces_only_sends_needed_buffers) |
857 | @@ -473,7 +473,7 @@ |
858 | mp::ConnectParameters connect_parameters; |
859 | mp::Connection connection; |
860 | |
861 | - mediator.connect(nullptr, &connect_parameters, &connection, null_callback.get()); |
862 | + mediator->connect(nullptr, &connect_parameters, &connection, null_callback.get()); |
863 | |
864 | { |
865 | // AFAICS these values are stubs to set up the test condition, |
866 | @@ -504,19 +504,19 @@ |
867 | .Times(4); |
868 | |
869 | mp::SurfaceParameters surface_request; |
870 | - mediator.create_surface(nullptr, &surface_request, &surface_response[0], null_callback.get()); |
871 | - mediator.create_surface(nullptr, &surface_request, &surface_response[1], null_callback.get()); |
872 | + mediator->create_surface(nullptr, &surface_request, &surface_response[0], null_callback.get()); |
873 | + mediator->create_surface(nullptr, &surface_request, &surface_response[1], null_callback.get()); |
874 | buffer_request[0] = surface_response[0].id(); |
875 | buffer_request[1] = surface_response[1].id(); |
876 | - mediator.next_buffer(nullptr, &buffer_request[0], &buffer_response[0], null_callback.get()); |
877 | - mediator.next_buffer(nullptr, &buffer_request[1], &buffer_response[1], null_callback.get()); |
878 | - mediator.next_buffer(nullptr, &buffer_request[0], &buffer_response[2], null_callback.get()); |
879 | - mediator.next_buffer(nullptr, &buffer_request[1], &buffer_response[3], null_callback.get()); |
880 | - mediator.next_buffer(nullptr, &buffer_request[0], &buffer_response[4], null_callback.get()); |
881 | - mediator.next_buffer(nullptr, &buffer_request[1], &buffer_response[5], null_callback.get()); |
882 | + mediator->next_buffer(nullptr, &buffer_request[0], &buffer_response[0], null_callback.get()); |
883 | + mediator->next_buffer(nullptr, &buffer_request[1], &buffer_response[1], null_callback.get()); |
884 | + mediator->next_buffer(nullptr, &buffer_request[0], &buffer_response[2], null_callback.get()); |
885 | + mediator->next_buffer(nullptr, &buffer_request[1], &buffer_response[3], null_callback.get()); |
886 | + mediator->next_buffer(nullptr, &buffer_request[0], &buffer_response[4], null_callback.get()); |
887 | + mediator->next_buffer(nullptr, &buffer_request[1], &buffer_response[5], null_callback.get()); |
888 | } |
889 | |
890 | - mediator.disconnect(nullptr, nullptr, nullptr, null_callback.get()); |
891 | + mediator->disconnect(nullptr, nullptr, nullptr, null_callback.get()); |
892 | } |
893 | |
894 | TEST_F(SessionMediatorTest, buffer_resource_for_surface_unaffected_by_other_surfaces) |
895 | @@ -527,7 +527,7 @@ |
896 | mp::ConnectParameters connect_parameters; |
897 | mp::Connection connection; |
898 | |
899 | - mediator.connect(nullptr, &connect_parameters, &connection, null_callback.get()); |
900 | + mediator->connect(nullptr, &connect_parameters, &connection, null_callback.get()); |
901 | mp::SurfaceParameters surface_request; |
902 | mp::Surface surface_response; |
903 | |
904 | @@ -539,28 +539,28 @@ |
905 | EXPECT_CALL(*stubbed_session->mock_surface, swap_buffers(_, _)) |
906 | .WillOnce(InvokeArgument<1>(&buffer)); |
907 | |
908 | - mediator.create_surface(nullptr, &surface_request, &surface_response, null_callback.get()); |
909 | + mediator->create_surface(nullptr, &surface_request, &surface_response, null_callback.get()); |
910 | mp::SurfaceId our_surface{surface_response.id()}; |
911 | |
912 | Mock::VerifyAndClearExpectations(stubbed_session->mock_surface.get()); |
913 | |
914 | /* Creating a new surface should not affect our surfaces' buffers */ |
915 | EXPECT_CALL(*stubbed_session->mock_surface, swap_buffers(_, _)).Times(0); |
916 | - mediator.create_surface(nullptr, &surface_request, &surface_response, null_callback.get()); |
917 | + mediator->create_surface(nullptr, &surface_request, &surface_response, null_callback.get()); |
918 | |
919 | mp::SurfaceId new_surface{surface_response.id()}; |
920 | mp::Buffer buffer_response; |
921 | |
922 | /* Getting the next buffer of new surface should not affect our surfaces' buffers */ |
923 | - mediator.next_buffer(nullptr, &new_surface, &buffer_response, null_callback.get()); |
924 | + mediator->next_buffer(nullptr, &new_surface, &buffer_response, null_callback.get()); |
925 | |
926 | Mock::VerifyAndClearExpectations(stubbed_session->mock_surface.get()); |
927 | |
928 | /* Getting the next buffer of our surface should post the original */ |
929 | EXPECT_CALL(*stubbed_session->mock_surface, swap_buffers(Eq(&buffer), _)).Times(1); |
930 | |
931 | - mediator.next_buffer(nullptr, &our_surface, &buffer_response, null_callback.get()); |
932 | - mediator.disconnect(nullptr, nullptr, nullptr, null_callback.get()); |
933 | + mediator->next_buffer(nullptr, &our_surface, &buffer_response, null_callback.get()); |
934 | + mediator->disconnect(nullptr, nullptr, nullptr, null_callback.get()); |
935 | } |
936 | |
937 | TEST_F(SessionMediatorTest, display_config_request) |
938 | @@ -601,13 +601,13 @@ |
939 | .InSequence(seq) |
940 | .WillOnce(Return(mt::fake_shared(stub_display_config))); |
941 | |
942 | - mf::SessionMediator session_mediator{ |
943 | + auto const session_mediator = std::make_shared<mf::SessionMediator>( |
944 | shell, graphics_platform, mock_display_selector, |
945 | surface_pixel_formats, report, |
946 | std::make_shared<mtd::NullEventSink>(), resource_cache, |
947 | - std::make_shared<mtd::NullScreencast>()}; |
948 | + std::make_shared<mtd::NullScreencast>()); |
949 | |
950 | - session_mediator.connect(nullptr, &connect_parameters, &connection, null_callback.get()); |
951 | + session_mediator->connect(nullptr, &connect_parameters, &connection, null_callback.get()); |
952 | |
953 | mp::DisplayConfiguration configuration_response; |
954 | mp::DisplayConfiguration configuration; |
955 | @@ -631,12 +631,12 @@ |
956 | disp1->set_power_mode(static_cast<uint32_t>(mir_power_mode_off)); |
957 | disp1->set_orientation(mir_orientation_inverted); |
958 | |
959 | - session_mediator.configure_display(nullptr, &configuration, |
960 | + session_mediator->configure_display(nullptr, &configuration, |
961 | &configuration_response, null_callback.get()); |
962 | |
963 | EXPECT_THAT(configuration_response, mt::DisplayConfigMatches(std::cref(stub_display_config))); |
964 | |
965 | - session_mediator.disconnect(nullptr, nullptr, nullptr, null_callback.get()); |
966 | + session_mediator->disconnect(nullptr, nullptr, nullptr, null_callback.get()); |
967 | } |
968 | |
969 | TEST_F(SessionMediatorTest, fully_packs_buffer_for_create_screencast) |
970 | @@ -649,7 +649,7 @@ |
971 | |
972 | EXPECT_CALL(*graphics_platform, fill_ipc_package(_, &stub_buffer)); |
973 | |
974 | - mediator.create_screencast(nullptr, &screencast_parameters, |
975 | + mediator->create_screencast(nullptr, &screencast_parameters, |
976 | &screencast, null_callback.get()); |
977 | |
978 | EXPECT_EQ(stub_buffer.id().as_uint32_t(), |
979 | @@ -667,7 +667,7 @@ |
980 | EXPECT_CALL(*graphics_platform, fill_ipc_package(_, &stub_buffer)) |
981 | .Times(0); |
982 | |
983 | - mediator.screencast_buffer(nullptr, &screencast_id, |
984 | + mediator->screencast_buffer(nullptr, &screencast_id, |
985 | &protobuf_buffer, null_callback.get()); |
986 | |
987 | EXPECT_EQ(stub_buffer.id().as_uint32_t(), |
988 | |
989 | === modified file 'tests/unit-tests/scene/test_surface.cpp' |
990 | --- tests/unit-tests/scene/test_surface.cpp 2014-02-06 14:45:58 +0000 |
991 | +++ tests/unit-tests/scene/test_surface.cpp 2014-02-06 14:45:58 +0000 |
992 | @@ -377,16 +377,6 @@ |
993 | EXPECT_FLOAT_EQ(alpha, compositing_criteria->alpha()); |
994 | } |
995 | |
996 | -TEST_F(SurfaceCreation, test_surface_force_requests_to_complete) |
997 | -{ |
998 | - using namespace testing; |
999 | - |
1000 | - EXPECT_CALL(*mock_buffer_stream, force_requests_to_complete()).Times(Exactly(1)); |
1001 | - |
1002 | - ms::BasicSurface surf(stub_data, mock_buffer_stream, std::shared_ptr<mi::InputChannel>(), report); |
1003 | - surf.force_requests_to_complete(); |
1004 | -} |
1005 | - |
1006 | TEST_F(SurfaceCreation, test_surface_allow_framedropping) |
1007 | { |
1008 | using namespace testing; |
1009 | |
1010 | === modified file 'tests/unit-tests/scene/test_surface_stack.cpp' |
1011 | --- tests/unit-tests/scene/test_surface_stack.cpp 2014-02-06 14:45:58 +0000 |
1012 | +++ tests/unit-tests/scene/test_surface_stack.cpp 2014-02-06 14:45:58 +0000 |
1013 | @@ -75,7 +75,6 @@ |
1014 | virtual std::shared_ptr<mg::Buffer> snapshot_acquire(){ return std::shared_ptr<mg::Buffer>(); }; |
1015 | virtual void snapshot_release(std::shared_ptr<mg::Buffer> const&){} |
1016 | virtual void force_client_abort() {} |
1017 | - void force_requests_to_complete() {} |
1018 | virtual void allow_framedropping(bool) {} |
1019 | virtual mg::BufferProperties properties() const { return mg::BufferProperties{}; }; |
1020 | void resize(const geom::Size &) override {} |