Merge lp:~alan-griffiths/miral/remove-some-modules-Unity-Application-dependence-on-libmirserver-dev into lp:miral

Proposed by Alan Griffiths on 2016-10-28
Status: Merged
Approved by: Gerry Boland on 2016-11-01
Approved revision: 428
Merged at revision: 426
Proposed branch: lp:~alan-griffiths/miral/remove-some-modules-Unity-Application-dependence-on-libmirserver-dev
Merge into: lp:miral
Diff against target: 203 lines (+77/-20)
7 files modified
miral-qt/src/modules/Unity/Application/CMakeLists.txt (+0/-2)
miral-qt/src/modules/Unity/Application/application_manager.cpp (+2/-10)
miral-qt/src/modules/Unity/Application/application_manager.h (+1/-1)
miral-qt/src/modules/Unity/Application/session.cpp (+5/-7)
miral-qt/src/platforms/mirserver/CMakeLists.txt (+1/-0)
miral-qt/src/platforms/mirserver/mirapplication.cpp (+34/-0)
miral-qt/src/platforms/mirserver/mirapplication.h (+34/-0)
To merge this branch: bzr merge lp:~alan-griffiths/miral/remove-some-modules-Unity-Application-dependence-on-libmirserver-dev
Reviewer Review Type Date Requested Status
Gerry Boland 2016-10-28 Approve on 2016-11-01
Review via email: mp+309593@code.launchpad.net

Commit Message

application_manager.cpp no longer needs libmiral-dev

To post a comment you must log in.
428. By Alan Griffiths on 2016-10-28

Add missing files

Gerry Boland (gerboland) wrote :

Change looks good, I approve of it.

I would quibble about the style of mirapplication.h/cpp - Qt prefers camelCase over under_score function naming - but as this feels temporary I won't block on it

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'miral-qt/src/modules/Unity/Application/CMakeLists.txt'
2--- miral-qt/src/modules/Unity/Application/CMakeLists.txt 2016-10-28 11:57:11 +0000
3+++ miral-qt/src/modules/Unity/Application/CMakeLists.txt 2016-10-28 16:23:58 +0000
4@@ -72,11 +72,9 @@
5 settings_interface.h
6 )
7
8-set_source_files_properties(application_manager.cpp PROPERTIES COMPILE_FLAGS "${CMAKE_CXX_FLAGS} ${FIXME_MIRSERVER_CXXFLAGS}")
9 # SurfaceObserver unecessarily uses public inheritance from mir::scene::SurfaceObserver
10 set_source_files_properties(mirsurface.cpp PROPERTIES COMPILE_FLAGS "${CMAKE_CXX_FLAGS} ${FIXME_MIRSERVER_CXXFLAGS}")
11 set_source_files_properties(mirbuffersgtexture.cpp PROPERTIES COMPILE_FLAGS "${CMAKE_CXX_FLAGS} ${FIXME_MIRSERVER_CXXFLAGS}")
12-set_source_files_properties(session.cpp PROPERTIES COMPILE_FLAGS "${CMAKE_CXX_FLAGS} ${FIXME_MIRSERVER_CXXFLAGS}")
13
14 add_library(unityapplicationplugin SHARED
15 ${QMLMIRPLUGIN_SRC}
16
17=== modified file 'miral-qt/src/modules/Unity/Application/application_manager.cpp'
18--- miral-qt/src/modules/Unity/Application/application_manager.cpp 2016-10-03 12:45:25 +0000
19+++ miral-qt/src/modules/Unity/Application/application_manager.cpp 2016-10-28 16:23:58 +0000
20@@ -31,12 +31,9 @@
21 #include "nativeinterface.h"
22 #include "sessionauthorizer.h"
23 #include "logging.h"
24+#include "mirapplication.h"
25
26 // mir
27-#include <mir/scene/session.h>
28-#include <mir/scene/surface.h>
29-#include <mir/graphics/display.h>
30-#include <mir/graphics/display_buffer.h>
31 #include <mir/geometry/rectangles.h>
32
33 // Qt
34@@ -580,14 +577,9 @@
35
36 Application* ApplicationManager::findApplicationWithSession(const std::shared_ptr<ms::Session> &session)
37 {
38- return findApplicationWithSession(session.get());
39-}
40-
41-Application* ApplicationManager::findApplicationWithSession(const ms::Session *session)
42-{
43 if (!session)
44 return nullptr;
45- return findApplicationWithPid(session->process_id());
46+ return findApplicationWithPid(pid_of(session));
47 }
48
49 Application* ApplicationManager::findApplicationWithPid(const pid_t pid) const
50
51=== modified file 'miral-qt/src/modules/Unity/Application/application_manager.h'
52--- miral-qt/src/modules/Unity/Application/application_manager.h 2016-09-30 14:04:24 +0000
53+++ miral-qt/src/modules/Unity/Application/application_manager.h 2016-10-28 16:23:58 +0000
54@@ -122,7 +122,7 @@
55 void setFocused(Application *application);
56 void add(Application *application);
57 void remove(Application* application);
58- Application* findApplicationWithSession(const mir::scene::Session *session);
59+
60 QModelIndex findIndex(Application* application);
61 void resumeApplication(Application *application);
62 QString toString() const;
63
64=== modified file 'miral-qt/src/modules/Unity/Application/session.cpp'
65--- miral-qt/src/modules/Unity/Application/session.cpp 2016-10-10 11:11:50 +0000
66+++ miral-qt/src/modules/Unity/Application/session.cpp 2016-10-28 16:23:58 +0000
67@@ -24,9 +24,7 @@
68
69 // mirserver
70 #include "logging.h"
71-
72-// mir
73-#include <mir/scene/session.h>
74+#include "mirapplication.h"
75
76 // Qt
77 #include <QPainter>
78@@ -119,7 +117,7 @@
79
80 QString Session::name() const
81 {
82- return QString::fromStdString(m_session->name());
83+ return QString::fromStdString(name_of(m_session));
84 }
85
86 std::shared_ptr<ms::Session> Session::session() const
87@@ -291,7 +289,7 @@
88 {
89 DEBUG_MSG << " state=" << sessionStateToString(m_state);
90 if (m_state == Running) {
91- session()->set_lifecycle_state(mir_lifecycle_state_will_suspend);
92+ apply_lifecycle_state_to(session(), mir_lifecycle_state_will_suspend);
93 m_suspendTimer->start();
94
95 foreachPromptSession([this](const qtmir::PromptSession &promptSession) {
96@@ -324,7 +322,7 @@
97 }
98 }
99
100- session()->set_lifecycle_state(mir_lifecycle_state_resumed);
101+ apply_lifecycle_state_to(session(), mir_lifecycle_state_resumed);
102
103 foreachPromptSession([this](const qtmir::PromptSession &promptSession) {
104 m_promptSessionManager->resumePromptSession(promptSession);
105@@ -542,7 +540,7 @@
106
107 pid_t Session::pid() const
108 {
109- return m_session->process_id();
110+ return pid_of(m_session);
111 }
112
113 void Session::setSuspendTimer(AbstractTimer *timer)
114
115=== modified file 'miral-qt/src/platforms/mirserver/CMakeLists.txt'
116--- miral-qt/src/platforms/mirserver/CMakeLists.txt 2016-10-28 09:51:07 +0000
117+++ miral-qt/src/platforms/mirserver/CMakeLists.txt 2016-10-28 16:23:58 +0000
118@@ -96,6 +96,7 @@
119 screen.cpp
120 screenwindow.cpp
121 screensmodel.cpp
122+ mirapplication.cpp mirapplication.h
123 mirserverintegration.cpp
124 miropenglcontext.cpp
125 offscreensurface.cpp
126
127=== added file 'miral-qt/src/platforms/mirserver/mirapplication.cpp'
128--- miral-qt/src/platforms/mirserver/mirapplication.cpp 1970-01-01 00:00:00 +0000
129+++ miral-qt/src/platforms/mirserver/mirapplication.cpp 2016-10-28 16:23:58 +0000
130@@ -0,0 +1,34 @@
131+/*
132+ * Copyright © 2016 Canonical Ltd.
133+ *
134+ * This program is free software: you can redistribute it and/or modify it under
135+ * the terms of the GNU Lesser General Public License version 3, as published by
136+ * the Free Software Foundation.
137+ *
138+ * This program is distributed in the hope that it will be useful, but WITHOUT
139+ * ANY WARRANTY; without even the implied warranties of MERCHANTABILITY,
140+ * SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
141+ * Lesser General Public License for more details.
142+ *
143+ * You should have received a copy of the GNU Lesser General Public License
144+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
145+ */
146+
147+#include "mirapplication.h"
148+
149+#include <mir/scene/session.h>
150+
151+std::string qtmir::name_of(const miral::Application &application)
152+{
153+ return application->name();
154+}
155+
156+pid_t qtmir::pid_of(const miral::Application &application)
157+{
158+ return application->process_id();
159+}
160+
161+void qtmir::apply_lifecycle_state_to(const miral::Application &application, MirLifecycleState state)
162+{
163+ application->set_lifecycle_state(state);
164+}
165
166=== added file 'miral-qt/src/platforms/mirserver/mirapplication.h'
167--- miral-qt/src/platforms/mirserver/mirapplication.h 1970-01-01 00:00:00 +0000
168+++ miral-qt/src/platforms/mirserver/mirapplication.h 2016-10-28 16:23:58 +0000
169@@ -0,0 +1,34 @@
170+/*
171+ * Copyright © 2016 Canonical Ltd.
172+ *
173+ * This program is free software: you can redistribute it and/or modify it under
174+ * the terms of the GNU Lesser General Public License version 3, as published by
175+ * the Free Software Foundation.
176+ *
177+ * This program is distributed in the hope that it will be useful, but WITHOUT
178+ * ANY WARRANTY; without even the implied warranties of MERCHANTABILITY,
179+ * SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
180+ * Lesser General Public License for more details.
181+ *
182+ * You should have received a copy of the GNU Lesser General Public License
183+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
184+ */
185+
186+#ifndef QTMIR_MIRAPPLICATION_H
187+#define QTMIR_MIRAPPLICATION_H
188+
189+#include <miral/application.h>
190+
191+#include <mir_toolkit/common.h>
192+
193+#include <string>
194+
195+namespace qtmir
196+{
197+ std::string name_of(const miral::Application &application);
198+ pid_t pid_of(const miral::Application &application);
199+
200+ void apply_lifecycle_state_to(const miral::Application &application, MirLifecycleState state);
201+}
202+
203+#endif //QTMIR_MIRAPPLICATION_H

Subscribers

People subscribed via source and target branches