Merge lp:~dandrader/qtmir/surfaceDrawn into lp:qtmir

Proposed by Daniel d'Andrada
Status: Superseded
Proposed branch: lp:~dandrader/qtmir/surfaceDrawn
Merge into: lp:qtmir
Diff against target: 399 lines (+32/-57)
17 files modified
CMakeLists.txt (+1/-1)
debian/control (+2/-2)
src/modules/Unity/Application/mirsurface.cpp (+1/-1)
src/modules/Unity/Application/mirsurface.h (+2/-2)
src/modules/Unity/Application/mirsurfaceinterface.h (+0/-3)
src/modules/Unity/Application/mirsurfacemanager.cpp (+2/-6)
src/modules/Unity/Application/session.cpp (+0/-13)
src/modules/Unity/Application/session.h (+1/-3)
src/modules/Unity/Application/session_interface.h (+1/-1)
tests/framework/fake_mirsurface.cpp (+2/-2)
tests/framework/fake_mirsurface.h (+2/-1)
tests/framework/fake_session.cpp (+1/-1)
tests/framework/fake_session.h (+1/-1)
tests/framework/mock_session.h (+1/-1)
tests/modules/Application/application_test.cpp (+8/-8)
tests/modules/ApplicationManager/application_manager_test.cpp (+1/-1)
tests/modules/SessionManager/session_test.cpp (+6/-10)
To merge this branch: bzr merge lp:~dandrader/qtmir/surfaceDrawn
Reviewer Review Type Date Requested Status
Nick Dedekind (community) code Approve
Unity8 CI Bot (community) continuous-integration Needs Fixing
Review via email: mp+294428@code.launchpad.net

This proposal has been superseded by a proposal from 2016-05-12.

Commit message

Implement MirSurface.drawn property

And no longer hide blank surfaces from shell

Description of the change

* Are there any related MPs required for this MP to build/function as expected? Please list.
https://code.launchpad.net/~dandrader/unity8/surfaceDrawn/+merge/294427
https://code.launchpad.net/~dandrader/unity-api/surfaceDrawn/+merge/294426

* Did you perform an exploratory manual test run of your code change and any related functionality?
Yes

* If you changed the packaging (debian), did you subscribe the ubuntu-unity team to this MP?
N/A

To post a comment you must log in.
Revision history for this message
Unity8 CI Bot (unity8-ci-bot) wrote :
review: Needs Fixing (continuous-integration)
Revision history for this message
Unity8 CI Bot (unity8-ci-bot) wrote :
review: Needs Fixing (continuous-integration)
Revision history for this message
Nick Dedekind (nick-dedekind) wrote :

Code looks fine. Will test when silo built.
https://requests.ci-train.ubuntu.com/#/ticket/1409

review: Approve (code)
lp:~dandrader/qtmir/surfaceDrawn updated
487. By Daniel d'Andrada

Implement MirSurface.drawn property

And no longer hide blank surfaces from shell

Unmerged revisions

487. By Daniel d'Andrada

Implement MirSurface.drawn property

And no longer hide blank surfaces from shell

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'CMakeLists.txt'
--- CMakeLists.txt 2016-04-26 07:20:33 +0000
+++ CMakeLists.txt 2016-05-11 20:34:48 +0000
@@ -76,7 +76,7 @@
76pkg_check_modules(GSETTINGS_QT REQUIRED gsettings-qt)76pkg_check_modules(GSETTINGS_QT REQUIRED gsettings-qt)
77pkg_check_modules(QTDBUSTEST libqtdbustest-1 REQUIRED)77pkg_check_modules(QTDBUSTEST libqtdbustest-1 REQUIRED)
78pkg_check_modules(QTDBUSMOCK libqtdbusmock-1 REQUIRED)78pkg_check_modules(QTDBUSMOCK libqtdbusmock-1 REQUIRED)
79pkg_check_modules(APPLICATION_API REQUIRED unity-shell-application=15)79pkg_check_modules(APPLICATION_API REQUIRED unity-shell-application=16)
8080
81include_directories(${APPLICATION_API_INCLUDE_DIRS})81include_directories(${APPLICATION_API_INCLUDE_DIRS})
8282
8383
=== modified file 'debian/control'
--- debian/control 2016-04-28 12:48:42 +0000
+++ debian/control 2016-05-11 20:34:48 +0000
@@ -22,7 +22,7 @@
22 libubuntu-app-launch2-dev (>= 0.9),22 libubuntu-app-launch2-dev (>= 0.9),
23 libubuntu-application-api-dev (>= 2.1.0),23 libubuntu-application-api-dev (>= 2.1.0),
24 libudev-dev,24 libudev-dev,
25 libunity-api-dev (>= 7.110),25 libunity-api-dev (>= 7.112),
26 liburl-dispatcher1-dev,26 liburl-dispatcher1-dev,
27 libxkbcommon-dev,27 libxkbcommon-dev,
28 libxrender-dev,28 libxrender-dev,
@@ -93,7 +93,7 @@
93Conflicts: libqtmir,93Conflicts: libqtmir,
94 libunity-mir1,94 libunity-mir1,
95Provides: unity-application-impl,95Provides: unity-application-impl,
96 unity-application-impl-15,96 unity-application-impl-16,
97Description: Qt plugin for Unity specific Mir APIs97Description: Qt plugin for Unity specific Mir APIs
98 QtMir provides Qt/QML bindings for Mir features that are exposed through the98 QtMir provides Qt/QML bindings for Mir features that are exposed through the
99 qtmir-desktop or qtmir-android QPA plugin such as Application management99 qtmir-desktop or qtmir-android QPA plugin such as Application management
100100
=== modified file 'src/modules/Unity/Application/mirsurface.cpp'
--- src/modules/Unity/Application/mirsurface.cpp 2016-04-26 08:30:26 +0000
+++ src/modules/Unity/Application/mirsurface.cpp 2016-05-11 20:34:48 +0000
@@ -263,7 +263,7 @@
263{263{
264 if (!m_firstFrameDrawn) {264 if (!m_firstFrameDrawn) {
265 m_firstFrameDrawn = true;265 m_firstFrameDrawn = true;
266 Q_EMIT firstFrameDrawn();266 Q_EMIT drawnChanged(true);
267 }267 }
268268
269 // restart the frame dropper so that items have enough time to render the next frame.269 // restart the frame dropper so that items have enough time to render the next frame.
270270
=== modified file 'src/modules/Unity/Application/mirsurface.h'
--- src/modules/Unity/Application/mirsurface.h 2016-04-26 08:30:26 +0000
+++ src/modules/Unity/Application/mirsurface.h 2016-05-11 20:34:48 +0000
@@ -90,6 +90,8 @@
9090
91 unity::shell::application::MirSurfaceListInterface* promptSurfaceList() override;91 unity::shell::application::MirSurfaceListInterface* promptSurfaceList() override;
9292
93 bool drawn() const override { return m_firstFrameDrawn; }
94
93 Q_INVOKABLE void requestFocus() override;95 Q_INVOKABLE void requestFocus() override;
94 Q_INVOKABLE void close() override;96 Q_INVOKABLE void close() override;
95 Q_INVOKABLE void raise() override;97 Q_INVOKABLE void raise() override;
@@ -99,8 +101,6 @@
99101
100 void setLive(bool value) override;102 void setLive(bool value) override;
101103
102 bool isFirstFrameDrawn() const override { return m_firstFrameDrawn; }
103
104 void stopFrameDropper() override;104 void stopFrameDropper() override;
105 void startFrameDropper() override;105 void startFrameDropper() override;
106106
107107
=== modified file 'src/modules/Unity/Application/mirsurfaceinterface.h'
--- src/modules/Unity/Application/mirsurfaceinterface.h 2016-04-29 15:41:00 +0000
+++ src/modules/Unity/Application/mirsurfaceinterface.h 2016-05-11 20:34:48 +0000
@@ -44,8 +44,6 @@
4444
45 virtual void setLive(bool value) = 0;45 virtual void setLive(bool value) = 0;
4646
47 virtual bool isFirstFrameDrawn() const = 0;
48
49 virtual void stopFrameDropper() = 0;47 virtual void stopFrameDropper() = 0;
50 virtual void startFrameDropper() = 0;48 virtual void startFrameDropper() = 0;
5149
@@ -116,7 +114,6 @@
116 void cursorChanged(const QCursor &cursor);114 void cursorChanged(const QCursor &cursor);
117 void raiseRequested();115 void raiseRequested();
118 void closeRequested();116 void closeRequested();
119 void firstFrameDrawn();
120 void framesPosted();117 void framesPosted();
121 void isBeingDisplayedChanged();118 void isBeingDisplayedChanged();
122 void frameDropped();119 void frameDropped();
123120
=== modified file 'src/modules/Unity/Application/mirsurfacemanager.cpp'
--- src/modules/Unity/Application/mirsurfacemanager.cpp 2016-04-29 15:41:00 +0000
+++ src/modules/Unity/Application/mirsurfacemanager.cpp 2016-05-11 20:34:48 +0000
@@ -113,18 +113,14 @@
113 }113 }
114114
115 if (session)115 if (session)
116 session->registerSurface(qmlSurface);116 session->prependSurface(qmlSurface);
117117
118 if (qmlSurface->type() == Mir::InputMethodType) {118 if (qmlSurface->type() == Mir::InputMethodType) {
119 m_inputMethodSurface = qmlSurface;119 m_inputMethodSurface = qmlSurface;
120 Q_EMIT inputMethodSurfaceChanged();120 Q_EMIT inputMethodSurfaceChanged();
121 }121 }
122122
123 // Only notify QML of surface creation once it has drawn its first frame.123 Q_EMIT surfaceCreated(qmlSurface);
124 connect(qmlSurface, &MirSurfaceInterface::firstFrameDrawn, this, [=]() {
125 tracepoint(qtmir, firstFrameDrawn);
126 Q_EMIT surfaceCreated(qmlSurface);
127 });
128124
129 // clean up after MirSurface is destroyed125 // clean up after MirSurface is destroyed
130 connect(qmlSurface, &QObject::destroyed, this, [&](QObject *obj) {126 connect(qmlSurface, &QObject::destroyed, this, [&](QObject *obj) {
131127
=== modified file 'src/modules/Unity/Application/session.cpp'
--- src/modules/Unity/Application/session.cpp 2016-04-06 16:52:49 +0000
+++ src/modules/Unity/Application/session.cpp 2016-05-11 20:34:48 +0000
@@ -191,19 +191,6 @@
191 Q_EMIT applicationChanged(application);191 Q_EMIT applicationChanged(application);
192}192}
193193
194void Session::registerSurface(MirSurfaceInterface *newSurface)
195{
196 qCDebug(QTMIR_SESSIONS) << "Session::resgisterSurface - session=" << name() << "surface=" << newSurface;
197
198 // Only notify QML of surface creation once it has drawn its first frame.
199 if (newSurface->isFirstFrameDrawn()) {
200 prependSurface(newSurface);
201 } else {
202 connect(newSurface, &MirSurfaceInterface::firstFrameDrawn,
203 this, [this, newSurface]() { this->prependSurface(newSurface); });
204 }
205}
206
207void Session::prependSurface(MirSurfaceInterface *newSurface)194void Session::prependSurface(MirSurfaceInterface *newSurface)
208{195{
209 qCDebug(QTMIR_SESSIONS) << "Session::prependSurface - session=" << name() << "surface=" << newSurface;196 qCDebug(QTMIR_SESSIONS) << "Session::prependSurface - session=" << name() << "surface=" << newSurface;
210197
=== modified file 'src/modules/Unity/Application/session.h'
--- src/modules/Unity/Application/session.h 2016-03-28 18:02:26 +0000
+++ src/modules/Unity/Application/session.h 2016-05-11 20:34:48 +0000
@@ -57,7 +57,7 @@
5757
58 void setApplication(unity::shell::application::ApplicationInfoInterface* item) override;58 void setApplication(unity::shell::application::ApplicationInfoInterface* item) override;
5959
60 void registerSurface(MirSurfaceInterface* surface) override;60 void prependSurface(MirSurfaceInterface* surface) override;
6161
62 void suspend() override;62 void suspend() override;
63 void resume() override;63 void resume() override;
@@ -102,8 +102,6 @@
102102
103 void stopPromptSessions();103 void stopPromptSessions();
104104
105 void prependSurface(MirSurfaceInterface* surface);
106
107 std::shared_ptr<mir::scene::Session> m_session;105 std::shared_ptr<mir::scene::Session> m_session;
108 Application* m_application;106 Application* m_application;
109 MirSurfaceListModel m_surfaceList;107 MirSurfaceListModel m_surfaceList;
110108
=== modified file 'src/modules/Unity/Application/session_interface.h'
--- src/modules/Unity/Application/session_interface.h 2016-04-06 16:52:49 +0000
+++ src/modules/Unity/Application/session_interface.h 2016-05-11 20:34:48 +0000
@@ -77,7 +77,7 @@
7777
78 // For MirSurface and MirSurfaceManager use78 // For MirSurface and MirSurfaceManager use
7979
80 virtual void registerSurface(MirSurfaceInterface* surface) = 0;80 virtual void prependSurface(MirSurfaceInterface* surface) = 0;
8181
82 // For Application use82 // For Application use
8383
8484
=== modified file 'tests/framework/fake_mirsurface.cpp'
--- tests/framework/fake_mirsurface.cpp 2016-04-05 18:58:38 +0000
+++ tests/framework/fake_mirsurface.cpp 2016-05-11 20:34:48 +0000
@@ -91,7 +91,7 @@
91 }91 }
92}92}
9393
94bool FakeMirSurface::isFirstFrameDrawn() const94bool FakeMirSurface::drawn() const
95{95{
96 return m_isFirstFrameDrawn;96 return m_isFirstFrameDrawn;
97}97}
@@ -188,7 +188,7 @@
188{188{
189 if (!m_isFirstFrameDrawn) {189 if (!m_isFirstFrameDrawn) {
190 m_isFirstFrameDrawn = true;190 m_isFirstFrameDrawn = true;
191 Q_EMIT firstFrameDrawn();191 Q_EMIT drawnChanged(true);
192 }192 }
193}193}
194194
195195
=== modified file 'tests/framework/fake_mirsurface.h'
--- tests/framework/fake_mirsurface.h 2016-04-26 08:30:26 +0000
+++ tests/framework/fake_mirsurface.h 2016-05-11 20:34:48 +0000
@@ -79,6 +79,8 @@
7979
80 unity::shell::application::MirSurfaceListInterface* promptSurfaceList() override { return &m_promptSurfaceList;}80 unity::shell::application::MirSurfaceListInterface* promptSurfaceList() override { return &m_promptSurfaceList;}
8181
82 bool drawn() const override;
83
82 void requestFocus() override {84 void requestFocus() override {
83 Q_EMIT focusRequested();85 Q_EMIT focusRequested();
84 }86 }
@@ -94,7 +96,6 @@
94 ////96 ////
95 // qtmir.MirSurfaceInterface97 // qtmir.MirSurfaceInterface
9698
97 bool isFirstFrameDrawn() const override;
98 void stopFrameDropper() override;99 void stopFrameDropper() override;
99 void startFrameDropper() override;100 void startFrameDropper() override;
100 void setLive(bool value) override;101 void setLive(bool value) override;
101102
=== modified file 'tests/framework/fake_session.cpp'
--- tests/framework/fake_session.cpp 2016-03-28 18:02:26 +0000
+++ tests/framework/fake_session.cpp 2016-05-11 20:34:48 +0000
@@ -49,7 +49,7 @@
49 return m_session;49 return m_session;
50}50}
5151
52void FakeSession::registerSurface(MirSurfaceInterface *) {}52void FakeSession::prependSurface(MirSurfaceInterface *) {}
5353
54void FakeSession::setApplication(unity::shell::application::ApplicationInfoInterface *app)54void FakeSession::setApplication(unity::shell::application::ApplicationInfoInterface *app)
55{55{
5656
=== modified file 'tests/framework/fake_session.h'
--- tests/framework/fake_session.h 2016-03-28 18:02:26 +0000
+++ tests/framework/fake_session.h 2016-05-11 20:34:48 +0000
@@ -43,7 +43,7 @@
4343
44 // For MirSurfaceItem and MirSurfaceManager use44 // For MirSurfaceItem and MirSurfaceManager use
4545
46 void registerSurface(MirSurfaceInterface*) override;46 void prependSurface(MirSurfaceInterface*) override;
4747
48 // For Application use48 // For Application use
4949
5050
=== modified file 'tests/framework/mock_session.h'
--- tests/framework/mock_session.h 2016-03-28 18:02:26 +0000
+++ tests/framework/mock_session.h 2016-05-11 20:34:48 +0000
@@ -42,7 +42,7 @@
4242
43 MOCK_CONST_METHOD0(session, std::shared_ptr<mir::scene::Session>());43 MOCK_CONST_METHOD0(session, std::shared_ptr<mir::scene::Session>());
4444
45 MOCK_METHOD1(registerSurface, void(MirSurfaceInterface* surface));45 MOCK_METHOD1(prependSurface, void(MirSurfaceInterface* surface));
46 MOCK_METHOD1(removeSurface, void(MirSurfaceInterface* surface));46 MOCK_METHOD1(removeSurface, void(MirSurfaceInterface* surface));
4747
48 MOCK_METHOD1(setApplication, void(unity::shell::application::ApplicationInfoInterface* item));48 MOCK_METHOD1(setApplication, void(unity::shell::application::ApplicationInfoInterface* item));
4949
=== modified file 'tests/modules/Application/application_test.cpp'
--- tests/modules/Application/application_test.cpp 2016-04-26 08:56:36 +0000
+++ tests/modules/Application/application_test.cpp 2016-05-11 20:34:48 +0000
@@ -285,7 +285,7 @@
285 QSignalSpy spyAppStopped(application.data(), SIGNAL(stopped()));285 QSignalSpy spyAppStopped(application.data(), SIGNAL(stopped()));
286286
287 FakeMirSurface *surface = new FakeMirSurface;287 FakeMirSurface *surface = new FakeMirSurface;
288 session->registerSurface(surface);288 session->prependSurface(surface);
289 surface->drawFirstFrame();289 surface->drawFirstFrame();
290290
291 ASSERT_EQ(Application::InternalState::Running, application->internalState());291 ASSERT_EQ(Application::InternalState::Running, application->internalState());
@@ -380,7 +380,7 @@
380 application->setSession(session);380 application->setSession(session);
381381
382 FakeMirSurface *surface = new FakeMirSurface;382 FakeMirSurface *surface = new FakeMirSurface;
383 session->registerSurface(surface);383 session->prependSurface(surface);
384 surface->drawFirstFrame();384 surface->drawFirstFrame();
385385
386 ASSERT_EQ(Application::InternalState::Running, application->internalState());386 ASSERT_EQ(Application::InternalState::Running, application->internalState());
@@ -388,7 +388,7 @@
388 // Add a second surface to ensure the application doesn't kill itself after it loses388 // Add a second surface to ensure the application doesn't kill itself after it loses
389 // one surface.389 // one surface.
390 FakeMirSurface *secondSurface = new FakeMirSurface;390 FakeMirSurface *secondSurface = new FakeMirSurface;
391 session->registerSurface(secondSurface);391 session->prependSurface(secondSurface);
392 secondSurface->drawFirstFrame();392 secondSurface->drawFirstFrame();
393393
394 suspend(application.data());394 suspend(application.data());
@@ -437,14 +437,14 @@
437 application->setSession(session);437 application->setSession(session);
438438
439 FakeMirSurface *surface = new FakeMirSurface;439 FakeMirSurface *surface = new FakeMirSurface;
440 session->registerSurface(surface);440 session->prependSurface(surface);
441 surface->drawFirstFrame();441 surface->drawFirstFrame();
442442
443 ASSERT_EQ(Application::InternalState::Running, application->internalState());443 ASSERT_EQ(Application::InternalState::Running, application->internalState());
444 ASSERT_EQ(Session::Running, session->state());444 ASSERT_EQ(Session::Running, session->state());
445445
446 FakeMirSurface *secondSurface = new FakeMirSurface;446 FakeMirSurface *secondSurface = new FakeMirSurface;
447 session->registerSurface(secondSurface);447 session->prependSurface(secondSurface);
448 secondSurface->drawFirstFrame();448 secondSurface->drawFirstFrame();
449449
450 delete surface;450 delete surface;
@@ -488,7 +488,7 @@
488 application->setSession(session);488 application->setSession(session);
489489
490 FakeMirSurface *surface = new FakeMirSurface;490 FakeMirSurface *surface = new FakeMirSurface;
491 session->registerSurface(surface);491 session->prependSurface(surface);
492 surface->drawFirstFrame();492 surface->drawFirstFrame();
493 ASSERT_EQ(Application::InternalState::Running, application->internalState());493 ASSERT_EQ(Application::InternalState::Running, application->internalState());
494494
@@ -532,7 +532,7 @@
532 application->setSession(session);532 application->setSession(session);
533533
534 FakeMirSurface *surface = new FakeMirSurface;534 FakeMirSurface *surface = new FakeMirSurface;
535 session->registerSurface(surface);535 session->prependSurface(surface);
536 surface->drawFirstFrame();536 surface->drawFirstFrame();
537 ASSERT_EQ(Application::InternalState::Running, application->internalState());537 ASSERT_EQ(Application::InternalState::Running, application->internalState());
538538
@@ -570,7 +570,7 @@
570 application->setSession(session);570 application->setSession(session);
571571
572 FakeMirSurface *surface = new FakeMirSurface;572 FakeMirSurface *surface = new FakeMirSurface;
573 session->registerSurface(surface);573 session->prependSurface(surface);
574 surface->drawFirstFrame();574 surface->drawFirstFrame();
575575
576 ASSERT_EQ(Application::InternalState::Running, application->internalState());576 ASSERT_EQ(Application::InternalState::Running, application->internalState());
577577
=== modified file 'tests/modules/ApplicationManager/application_manager_test.cpp'
--- tests/modules/ApplicationManager/application_manager_test.cpp 2016-04-26 08:56:36 +0000
+++ tests/modules/ApplicationManager/application_manager_test.cpp 2016-05-11 20:34:48 +0000
@@ -55,7 +55,7 @@
5555
56 SessionInterface* qmlSession = sessionManager.findSession(mirSession);56 SessionInterface* qmlSession = sessionManager.findSession(mirSession);
57 if (qmlSession) {57 if (qmlSession) {
58 qmlSession->registerSurface(qmlSurface);58 qmlSession->prependSurface(qmlSurface);
59 }59 }
6060
61 // I assume that applicationManager ignores the mirSurface parameter, so sending61 // I assume that applicationManager ignores the mirSurface parameter, so sending
6262
=== modified file 'tests/modules/SessionManager/session_test.cpp'
--- tests/modules/SessionManager/session_test.cpp 2016-03-28 18:02:26 +0000
+++ tests/modules/SessionManager/session_test.cpp 2016-05-11 20:34:48 +0000
@@ -43,7 +43,7 @@
43 }43 }
44};44};
4545
46TEST_F(SessionTests, FromStartingToRunningOnceSurfaceDrawsFirstFrame)46TEST_F(SessionTests, FromStartingToRunningOnceFirstSurfaceAppears)
47{47{
48 using namespace testing;48 using namespace testing;
4949
@@ -58,12 +58,8 @@
58 EXPECT_EQ(Session::Starting, session->state());58 EXPECT_EQ(Session::Starting, session->state());
5959
60 FakeMirSurface *surface = new FakeMirSurface;60 FakeMirSurface *surface = new FakeMirSurface;
61 session->registerSurface(surface);61 session->prependSurface(surface);
6262
63 // Still on Starting as the surface hasn't drawn its first frame yet
64 EXPECT_EQ(Session::Starting, session->state());
65
66 surface->drawFirstFrame();
67 EXPECT_EQ(Session::Running, session->state());63 EXPECT_EQ(Session::Running, session->state());
68}64}
6965
@@ -221,7 +217,7 @@
221 auto session = std::make_shared<qtmir::Session>(mirSession, mirServer->the_prompt_session_manager());217 auto session = std::make_shared<qtmir::Session>(mirSession, mirServer->the_prompt_session_manager());
222 {218 {
223 FakeMirSurface *surface = new FakeMirSurface;219 FakeMirSurface *surface = new FakeMirSurface;
224 session->registerSurface(surface);220 session->prependSurface(surface);
225 surface->drawFirstFrame();221 surface->drawFirstFrame();
226 }222 }
227 EXPECT_EQ(Session::Running, session->state());223 EXPECT_EQ(Session::Running, session->state());
@@ -252,7 +248,7 @@
252 auto session = std::make_shared<qtmir::Session>(mirSession, promptSessionManager);248 auto session = std::make_shared<qtmir::Session>(mirSession, promptSessionManager);
253 {249 {
254 FakeMirSurface *surface = new FakeMirSurface;250 FakeMirSurface *surface = new FakeMirSurface;
255 session->registerSurface(surface);251 session->prependSurface(surface);
256 surface->drawFirstFrame();252 surface->drawFirstFrame();
257 }253 }
258 EXPECT_EQ(Session::Running, session->state());254 EXPECT_EQ(Session::Running, session->state());
@@ -297,7 +293,7 @@
297 auto session = std::make_shared<SessionTestClass>(mirSession, mirServer->the_prompt_session_manager());293 auto session = std::make_shared<SessionTestClass>(mirSession, mirServer->the_prompt_session_manager());
298 {294 {
299 FakeMirSurface *surface = new FakeMirSurface;295 FakeMirSurface *surface = new FakeMirSurface;
300 session->registerSurface(surface);296 session->prependSurface(surface);
301 surface->drawFirstFrame();297 surface->drawFirstFrame();
302 }298 }
303 EXPECT_EQ(Session::Running, session->state());299 EXPECT_EQ(Session::Running, session->state());

Subscribers

People subscribed via source and target branches