Merge lp:~aacid/qtmir/system_includes into lp:qtmir

Proposed by Albert Astals Cid
Status: Superseded
Proposed branch: lp:~aacid/qtmir/system_includes
Merge into: lp:qtmir
Diff against target: 1237 lines (+304/-75)
36 files modified
CMakeLists.txt (+12/-7)
debian/changelog (+25/-0)
debian/control (+1/-1)
demos/qml-demo-client/CMakeLists.txt (+3/-6)
demos/qml-demo-shell/CMakeLists.txt (+3/-6)
src/common/debughelpers.cpp (+1/-0)
src/modules/Unity/Application/CMakeLists.txt (+6/-2)
src/modules/Unity/Application/application.cpp (+16/-12)
src/modules/Unity/Application/application.h (+5/-4)
src/modules/Unity/Application/mirsurfacelistmodel.cpp (+30/-4)
src/modules/Unity/Application/mirsurfacelistmodel.h (+3/-0)
src/modules/Unity/Application/session.cpp (+21/-22)
src/modules/Unity/Application/sessionmanager.h (+0/-1)
src/modules/Unity/Application/ubuntukeyboardinfo.cpp (+2/-0)
src/modules/Unity/Application/upstart/taskcontroller.cpp (+2/-2)
src/modules/Unity/Screens/CMakeLists.txt (+4/-0)
src/platforms/mirserver/CMakeLists.txt (+5/-0)
src/platforms/mirserver/mirwindowmanager.cpp (+1/-1)
tests/framework/CMakeLists.txt (+5/-1)
tests/framework/mock_mir_session.cpp (+1/-0)
tests/mirserver/Clipboard/CMakeLists.txt (+4/-0)
tests/mirserver/QtEventFeeder/CMakeLists.txt (+4/-0)
tests/mirserver/QtEventFeeder/mock_qtwindowsystem.h (+12/-1)
tests/mirserver/QtEventFeeder/qteventfeeder_test.cpp (+2/-2)
tests/mirserver/Screen/CMakeLists.txt (+4/-0)
tests/mirserver/ScreensModel/CMakeLists.txt (+4/-0)
tests/mirserver/ScreensModel/screensmodel_test.cpp (+1/-0)
tests/mirserver/WindowManager/CMakeLists.txt (+4/-0)
tests/modules/Application/CMakeLists.txt (+4/-1)
tests/modules/Application/application_test.cpp (+32/-0)
tests/modules/ApplicationManager/CMakeLists.txt (+5/-1)
tests/modules/ApplicationManager/application_manager_test.cpp (+64/-0)
tests/modules/SessionManager/CMakeLists.txt (+5/-1)
tests/modules/SessionManager/session_test.cpp (+5/-0)
tests/modules/SharedWakelock/CMakeLists.txt (+4/-0)
tests/modules/SurfaceManager/CMakeLists.txt (+4/-0)
To merge this branch: bzr merge lp:~aacid/qtmir/system_includes
Reviewer Review Type Date Requested Status
Mir development team Pending
Review via email: mp+296597@code.launchpad.net

This proposal has been superseded by a proposal from 2016-06-06.

Commit message

Mark system includes as such

Description of the change

 * Are there any related MPs required for this MP to build/function as expected?
Prereq

 * 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.
lp:~aacid/qtmir/system_includes updated
519. By Albert Astals Cid

spacing++

520. By Albert Astals Cid

Merge lp:~dandrader/qtmir/mirSurfaceInputBounds

Unmerged revisions

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'CMakeLists.txt'
--- CMakeLists.txt 2016-05-18 20:56:14 +0000
+++ CMakeLists.txt 2016-06-06 19:37:34 +0000
@@ -13,6 +13,13 @@
13# Find includes in corresponding build directories13# Find includes in corresponding build directories
14set(CMAKE_INCLUDE_CURRENT_DIR ON)14set(CMAKE_INCLUDE_CURRENT_DIR ON)
1515
16find_package (ECM 1.7.0 QUIET NO_MODULE)
17if (ECM_FOUND)
18 # Provides us with -DECM_ENABLE_SANITIZERS='X'
19 # Where X can be address, thread, memory, leak, undefined
20 include("${ECM_MODULE_DIR}/ECMEnableSanitizers.cmake")
21endif()
22
16# add custom cmake modules23# add custom cmake modules
17set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules)24set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules)
1825
@@ -76,23 +83,21 @@
76pkg_check_modules(GSETTINGS_QT REQUIRED gsettings-qt)83pkg_check_modules(GSETTINGS_QT REQUIRED gsettings-qt)
77pkg_check_modules(QTDBUSTEST libqtdbustest-1 REQUIRED)84pkg_check_modules(QTDBUSTEST libqtdbustest-1 REQUIRED)
78pkg_check_modules(QTDBUSMOCK libqtdbusmock-1 REQUIRED)85pkg_check_modules(QTDBUSMOCK libqtdbusmock-1 REQUIRED)
79pkg_check_modules(APPLICATION_API REQUIRED unity-shell-application=17)86pkg_check_modules(APPLICATION_API REQUIRED unity-shell-application=18)
8087
81include_directories(${APPLICATION_API_INCLUDE_DIRS})88include_directories(SYSTEM ${APPLICATION_API_INCLUDE_DIRS})
8289
83add_definitions(-DMIR_REQUIRE_DEPRECATED_EVENT_OPT_IN=1)90add_definitions(-DMIR_REQUIRE_DEPRECATED_EVENT_OPT_IN=1)
8491
85# Use the fast string builder92# Use the fast string builder
86add_definitions(-DQT_USE_QSTRINGBUILDER)93add_definitions(-DQT_USE_QSTRINGBUILDER)
8794
88include_directories( ${APPLICATION_API_INCLUDE_DIRS} )
89
90# We expect this to be set via debian/rules for GLES builds95# We expect this to be set via debian/rules for GLES builds
91if ("${USE_OPENGLES}" STREQUAL 1)96if ("${USE_OPENGLES}" STREQUAL 1)
92 message(STATUS "Qt5 determined to be compiled with GLES support")97 message(STATUS "Qt5 determined to be compiled with GLES support")
93 pkg_check_modules(GLESv2 glesv2)98 pkg_check_modules(GLESv2 glesv2)
94 add_definitions(-DQT_USING_GLES)99 add_definitions(-DQT_USING_GLES)
95 include_directories (${GLESv2_INCLUDE_DIRS})100 include_directories (SYSTEM ${GLESv2_INCLUDE_DIRS})
96 set (GL_LIBRARIES "${GLESv2_LIBRARIES}")101 set (GL_LIBRARIES "${GLESv2_LIBRARIES}")
97# Because qt/gl and qt/gles are not parallel installable we have a difficulty102# Because qt/gl and qt/gles are not parallel installable we have a difficulty
98# building qtmir-desktop on armhf. We would like to link against opengl and bind the103# building qtmir-desktop on armhf. We would like to link against opengl and bind the
@@ -103,13 +108,13 @@
103 message(STATUS "Linking against OpenGL ES but binding OpenGL API")108 message(STATUS "Linking against OpenGL ES but binding OpenGL API")
104 pkg_check_modules(GLESv2 glesv2)109 pkg_check_modules(GLESv2 glesv2)
105 add_definitions(-DQT_USING_GL)110 add_definitions(-DQT_USING_GL)
106 include_directories (${GLESv2_INCLUDE_DIRS})111 include_directories (SYSTEM ${GLESv2_INCLUDE_DIRS})
107 set (GL_LIBRARIES "${GLESv2_LIBRARIES}")112 set (GL_LIBRARIES "${GLESv2_LIBRARIES}")
108else()113else()
109 message(STATUS "Qt5 determined to be compiled with OpenGL support")114 message(STATUS "Qt5 determined to be compiled with OpenGL support")
110 pkg_check_modules(GL gl)115 pkg_check_modules(GL gl)
111 add_definitions(-DQT_USING_OPENGL)116 add_definitions(-DQT_USING_OPENGL)
112 include_directories (${GL_INCLUDE_DIRS})117 include_directories (SYSTEM ${GL_INCLUDE_DIRS})
113endif()118endif()
114119
115# Standard install paths120# Standard install paths
116121
=== modified file 'debian/changelog'
--- debian/changelog 2016-05-25 13:54:56 +0000
+++ debian/changelog 2016-06-06 19:37:34 +0000
@@ -1,3 +1,28 @@
1qtmir (0.4.8+16.10.20160606.1-0ubuntu1) yakkety; urgency=medium
2
3 [ Albert Astals Cid ]
4 * Add support for compiler sanitizers via ECM
5 * Compile with -fsanitize=undefined
6 * Fix leak in ScreensModelTest (LP: #1585502)
7 * Fix leak in SessionManager test (LP: #1585498)
8 * Remove unused m_sessions member
9 * Add missing breaks
10 * Initialize m_lastX and m_lastY
11 * Initialize m_sessionId
12 * Give the locker a name
13 * Fix memory leak in QtEventFeederTest (LP: #1585503)
14 * Fix leaks in application_manager_test (LP: #1585501)
15
16 [ Daniel d'Andrada ]
17 * Improve Session debug logging
18 * MirSurfaceListModel: prepending a surface always causes
19 firstChanged() emission
20
21 [ Michael Zanetti ]
22 * Adding ApplicationInfo::surfaceCount property
23
24 -- MichaƂ Sawicz <michal.sawicz@canonical.com> Mon, 06 Jun 2016 15:45:57 +0000
25
1qtmir (0.4.8+16.10.20160525.2-0ubuntu1) yakkety; urgency=medium26qtmir (0.4.8+16.10.20160525.2-0ubuntu1) yakkety; urgency=medium
227
3 [ Alan Griffiths ]28 [ Alan Griffiths ]
429
=== modified file 'debian/control'
--- debian/control 2016-05-18 20:56:14 +0000
+++ debian/control 2016-06-06 19:37:34 +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.113),25 libunity-api-dev (>= 7.114),
26 liburl-dispatcher1-dev,26 liburl-dispatcher1-dev,
27 libxkbcommon-dev,27 libxkbcommon-dev,
28 libxrender-dev,28 libxrender-dev,
2929
=== modified file 'demos/qml-demo-client/CMakeLists.txt'
--- demos/qml-demo-client/CMakeLists.txt 2015-09-01 16:16:47 +0000
+++ demos/qml-demo-client/CMakeLists.txt 2016-06-06 19:37:34 +0000
@@ -2,19 +2,16 @@
2configure_file(${DEMO_CLIENT}.desktop.in ${CMAKE_CURRENT_BINARY_DIR}/${DEMO_CLIENT}.desktop @ONLY)2configure_file(${DEMO_CLIENT}.desktop.in ${CMAKE_CURRENT_BINARY_DIR}/${DEMO_CLIENT}.desktop @ONLY)
33
4include_directories(4include_directories(
5 SYSTEM
5 ${Qt5Gui_PRIVATE_INCLUDE_DIRS}6 ${Qt5Gui_PRIVATE_INCLUDE_DIRS}
7 ${Qt5Qml_PRIVATE_INCLUDE_DIRS}
8 ${Qt5Quick_PRIVATE_INCLUDE_DIRS}
6)9)
710
8add_executable(${DEMO_CLIENT}11add_executable(${DEMO_CLIENT}
9 main.cpp12 main.cpp
10)13)
1114
12include_directories(
13 ${Qt5Gui_PRIVATE_INCLUDE_DIRS}
14 ${Qt5Qml_PRIVATE_INCLUDE_DIRS}
15 ${Qt5Quick_PRIVATE_INCLUDE_DIRS}
16)
17
18target_link_libraries(15target_link_libraries(
19 ${DEMO_CLIENT}16 ${DEMO_CLIENT}
20 Qt5::Core17 Qt5::Core
2118
=== modified file 'demos/qml-demo-shell/CMakeLists.txt'
--- demos/qml-demo-shell/CMakeLists.txt 2015-09-01 16:16:47 +0000
+++ demos/qml-demo-shell/CMakeLists.txt 2016-06-06 19:37:34 +0000
@@ -1,19 +1,16 @@
1set(DEMO_SHELL qtmir-demo-shell)1set(DEMO_SHELL qtmir-demo-shell)
22
3include_directories(3include_directories(
4 SYSTEM
4 ${Qt5Gui_PRIVATE_INCLUDE_DIRS}5 ${Qt5Gui_PRIVATE_INCLUDE_DIRS}
6 ${Qt5Qml_PRIVATE_INCLUDE_DIRS}
7 ${Qt5Quick_PRIVATE_INCLUDE_DIRS}
5)8)
69
7add_executable(${DEMO_SHELL}10add_executable(${DEMO_SHELL}
8 main.cpp11 main.cpp
9)12)
1013
11include_directories(
12 ${Qt5Gui_PRIVATE_INCLUDE_DIRS}
13 ${Qt5Qml_PRIVATE_INCLUDE_DIRS}
14 ${Qt5Quick_PRIVATE_INCLUDE_DIRS}
15)
16
17target_link_libraries(14target_link_libraries(
18 ${DEMO_SHELL}15 ${DEMO_SHELL}
19 Qt5::Core16 Qt5::Core
2017
=== modified file 'src/common/debughelpers.cpp'
--- src/common/debughelpers.cpp 2015-11-10 11:07:23 +0000
+++ src/common/debughelpers.cpp 2016-06-06 19:37:34 +0000
@@ -54,6 +54,7 @@
54 break;54 break;
55 case QEvent::TouchCancel:55 case QEvent::TouchCancel:
56 message.append("TouchCancel ");56 message.append("TouchCancel ");
57 break;
57 default:58 default:
58 message.append("TouchUNKNOWN ");59 message.append("TouchUNKNOWN ");
59 }60 }
6061
=== modified file 'src/modules/Unity/Application/CMakeLists.txt'
--- src/modules/Unity/Application/CMakeLists.txt 2016-04-26 08:56:36 +0000
+++ src/modules/Unity/Application/CMakeLists.txt 2016-06-06 19:37:34 +0000
@@ -1,4 +1,10 @@
1include_directories(1include_directories(
2 ${CMAKE_SOURCE_DIR}/src/platforms/mirserver
3 ${CMAKE_SOURCE_DIR}/src/common
4)
5
6include_directories(
7 SYSTEM
2 ${GLIB_INCLUDE_DIRS}8 ${GLIB_INCLUDE_DIRS}
3 ${GIO_INCLUDE_DIRS}9 ${GIO_INCLUDE_DIRS}
4 ${GIO_UNIX_INCLUDE_DIRS}10 ${GIO_UNIX_INCLUDE_DIRS}
@@ -7,8 +13,6 @@
7 ${PROCESS_CPP_INCLUDE_DIRS}13 ${PROCESS_CPP_INCLUDE_DIRS}
8 ${UBUNTU_PLATFORM_API_INCLUDE_DIRS}14 ${UBUNTU_PLATFORM_API_INCLUDE_DIRS}
9 ${UBUNTU_APP_LAUNCH_INCLUDE_DIRS}15 ${UBUNTU_APP_LAUNCH_INCLUDE_DIRS}
10 ${CMAKE_SOURCE_DIR}/src/platforms/mirserver
11 ${CMAKE_SOURCE_DIR}/src/common
12 ${GSETTINGS_QT_INCLUDE_DIRS}16 ${GSETTINGS_QT_INCLUDE_DIRS}
1317
14 ${LTTNG_INCLUDE_DIRS}18 ${LTTNG_INCLUDE_DIRS}
1519
=== modified file 'src/modules/Unity/Application/application.cpp'
--- src/modules/Unity/Application/application.cpp 2016-05-25 13:54:52 +0000
+++ src/modules/Unity/Application/application.cpp 2016-06-06 19:37:34 +0000
@@ -55,6 +55,8 @@
55 , m_processState(ProcessUnknown)55 , m_processState(ProcessUnknown)
56 , m_stopTimer(nullptr)56 , m_stopTimer(nullptr)
57 , m_exemptFromLifecycle(false)57 , m_exemptFromLifecycle(false)
58 , m_proxySurfaceList(new ProxySurfaceListModel(this))
59 , m_proxyPromptSurfaceList(new ProxySurfaceListModel(this))
58{60{
59 DEBUG_MSG << "()";61 DEBUG_MSG << "()";
6062
@@ -66,6 +68,8 @@
66 m_rotatesWindowContents = m_appInfo->rotatesWindowContents();68 m_rotatesWindowContents = m_appInfo->rotatesWindowContents();
6769
68 setStopTimer(new Timer);70 setStopTimer(new Timer);
71
72 connect(m_proxySurfaceList, &unityapp::MirSurfaceListInterface::countChanged, this, &unityapp::ApplicationInfoInterface::surfaceCountChanged);
69}73}
7074
71Application::~Application()75Application::~Application()
@@ -411,8 +415,8 @@
411bool Application::focused() const415bool Application::focused() const
412{416{
413 bool someSurfaceHasFocus = false; // to be proven wrong417 bool someSurfaceHasFocus = false; // to be proven wrong
414 for (int i = 0; i < m_proxySurfaceList.rowCount() && !someSurfaceHasFocus; ++i) {418 for (int i = 0; i < m_proxySurfaceList->rowCount() && !someSurfaceHasFocus; ++i) {
415 someSurfaceHasFocus |= m_proxySurfaceList.get(i)->focused();419 someSurfaceHasFocus |= m_proxySurfaceList->get(i)->focused();
416 }420 }
417 return someSurfaceHasFocus;421 return someSurfaceHasFocus;
418}422}
@@ -475,8 +479,8 @@
475 return;479 return;
476480
477 if (m_session) {481 if (m_session) {
478 m_proxySurfaceList.setSourceList(nullptr);482 m_proxySurfaceList->setSourceList(nullptr);
479 m_proxyPromptSurfaceList.setSourceList(nullptr);483 m_proxyPromptSurfaceList->setSourceList(nullptr);
480 m_session->disconnect(this);484 m_session->disconnect(this);
481 m_session->surfaceList()->disconnect(this);485 m_session->surfaceList()->disconnect(this);
482 m_session->setApplication(nullptr);486 m_session->setApplication(nullptr);
@@ -517,8 +521,8 @@
517 if (oldFullscreen != fullscreen())521 if (oldFullscreen != fullscreen())
518 Q_EMIT fullscreenChanged(fullscreen());522 Q_EMIT fullscreenChanged(fullscreen());
519523
520 m_proxySurfaceList.setSourceList(m_session->surfaceList());524 m_proxySurfaceList->setSourceList(m_session->surfaceList());
521 m_proxyPromptSurfaceList.setSourceList(m_session->promptSurfaceList());525 m_proxyPromptSurfaceList->setSourceList(m_session->promptSurfaceList());
522 } else {526 } else {
523 // this can only happen after the session has stopped527 // this can only happen after the session has stopped
524 Q_ASSERT(m_state == InternalState::Stopped || m_state == InternalState::StoppedResumable528 Q_ASSERT(m_state == InternalState::Stopped || m_state == InternalState::StoppedResumable
@@ -852,21 +856,21 @@
852 }856 }
853}857}
854858
855unityapp::MirSurfaceListInterface* Application::surfaceList()859unityapp::MirSurfaceListInterface* Application::surfaceList() const
856{860{
857 return &m_proxySurfaceList;861 return m_proxySurfaceList;
858}862}
859863
860unityapp::MirSurfaceListInterface* Application::promptSurfaceList()864unityapp::MirSurfaceListInterface* Application::promptSurfaceList() const
861{865{
862 return &m_proxyPromptSurfaceList;866 return m_proxyPromptSurfaceList;
863}867}
864868
865void Application::requestFocus()869void Application::requestFocus()
866{870{
867 if (m_proxySurfaceList.rowCount() > 0) {871 if (m_proxySurfaceList->rowCount() > 0) {
868 DEBUG_MSG << "() - Requesting focus for most recent app surface";872 DEBUG_MSG << "() - Requesting focus for most recent app surface";
869 m_proxySurfaceList.get(0)->requestFocus();873 m_proxySurfaceList->get(0)->requestFocus();
870 } else {874 } else {
871 DEBUG_MSG << "() - emitting focusRequested()";875 DEBUG_MSG << "() - emitting focusRequested()";
872 Q_EMIT focusRequested();876 Q_EMIT focusRequested();
873877
=== modified file 'src/modules/Unity/Application/application.h'
--- src/modules/Unity/Application/application.h 2016-05-20 08:41:17 +0000
+++ src/modules/Unity/Application/application.h 2016-06-06 19:37:34 +0000
@@ -108,8 +108,9 @@
108 void setExemptFromLifecycle(bool) override;108 void setExemptFromLifecycle(bool) override;
109 QSize initialSurfaceSize() const override;109 QSize initialSurfaceSize() const override;
110 void setInitialSurfaceSize(const QSize &size) override;110 void setInitialSurfaceSize(const QSize &size) override;
111 unity::shell::application::MirSurfaceListInterface* surfaceList() override;111 unity::shell::application::MirSurfaceListInterface* surfaceList() const override;
112 unity::shell::application::MirSurfaceListInterface* promptSurfaceList() override;112 unity::shell::application::MirSurfaceListInterface* promptSurfaceList() const override;
113 int surfaceCount() const override { return surfaceList()->count(); }
113114
114 ProcessState processState() const { return m_processState; }115 ProcessState processState() const { return m_processState; }
115 void setProcessState(ProcessState value);116 void setProcessState(ProcessState value);
@@ -190,8 +191,8 @@
190 QSize m_initialSurfaceSize;191 QSize m_initialSurfaceSize;
191 bool m_closing{false};192 bool m_closing{false};
192193
193 ProxySurfaceListModel m_proxySurfaceList;194 ProxySurfaceListModel *m_proxySurfaceList;
194 ProxySurfaceListModel m_proxyPromptSurfaceList;195 ProxySurfaceListModel *m_proxyPromptSurfaceList;
195196
196 friend class ApplicationManager;197 friend class ApplicationManager;
197 friend class SessionManager;198 friend class SessionManager;
198199
=== modified file 'src/modules/Unity/Application/mirsurfacelistmodel.cpp'
--- src/modules/Unity/Application/mirsurfacelistmodel.cpp 2016-05-17 19:57:52 +0000
+++ src/modules/Unity/Application/mirsurfacelistmodel.cpp 2016-06-06 19:37:34 +0000
@@ -20,6 +20,9 @@
2020
21#include <paths.h>21#include <paths.h>
2222
23#include <QDebug>
24#include <QDebugStateSaver>
25
23namespace unityapp = unity::shell::application;26namespace unityapp = unity::shell::application;
24using namespace qtmir;27using namespace qtmir;
2528
@@ -65,11 +68,11 @@
65 m_surfaceList.prepend(surface);68 m_surfaceList.prepend(surface);
66 connectSurface(surface);69 connectSurface(surface);
67 endInsertRows();70 endInsertRows();
68 Q_EMIT countChanged();71 Q_EMIT countChanged(m_surfaceList.count());
69 if (count() == 1) {72 if (count() == 1) {
70 Q_EMIT emptyChanged();73 Q_EMIT emptyChanged();
71 Q_EMIT firstChanged();
72 }74 }
75 Q_EMIT firstChanged();
73}76}
7477
75void MirSurfaceListModel::connectSurface(MirSurfaceInterface *surface)78void MirSurfaceListModel::connectSurface(MirSurfaceInterface *surface)
@@ -85,7 +88,7 @@
85 beginRemoveRows(QModelIndex(), i, i);88 beginRemoveRows(QModelIndex(), i, i);
86 m_surfaceList.removeAt(i);89 m_surfaceList.removeAt(i);
87 endRemoveRows();90 endRemoveRows();
88 Q_EMIT countChanged();91 Q_EMIT countChanged(m_surfaceList.count());
89 if (count() == 0) {92 if (count() == 0) {
90 Q_EMIT emptyChanged();93 Q_EMIT emptyChanged();
91 }94 }
@@ -147,7 +150,7 @@
147 });150 });
148 }151 }
149 endInsertRows();152 endInsertRows();
150 Q_EMIT countChanged();153 Q_EMIT countChanged(m_surfaceList.count());
151 if (wasEmpty) {154 if (wasEmpty) {
152 Q_EMIT emptyChanged();155 Q_EMIT emptyChanged();
153 }156 }
@@ -207,6 +210,11 @@
207// ProxySurfaceListModel210// ProxySurfaceListModel
208//////////////////////////////////////////////////////////////////////////////211//////////////////////////////////////////////////////////////////////////////
209212
213ProxySurfaceListModel::ProxySurfaceListModel(QObject *parent):
214 unity::shell::application::MirSurfaceListInterface(parent)
215{
216}
217
210void ProxySurfaceListModel::setSourceList(MirSurfaceListModel *sourceList)218void ProxySurfaceListModel::setSourceList(MirSurfaceListModel *sourceList)
211{219{
212 if (m_sourceList == sourceList)220 if (m_sourceList == sourceList)
@@ -284,3 +292,21 @@
284292
285 return m_sourceList->data(index, role);293 return m_sourceList->data(index, role);
286}294}
295
296QDebug operator<<(QDebug dbg, const unityapp::MirSurfaceListInterface &surfaceListConst)
297{
298 auto surfaceList = const_cast<unityapp::MirSurfaceListInterface*>(&surfaceListConst);
299
300 QDebugStateSaver saver(dbg);
301 dbg.nospace();
302 dbg << "MirSurfaceList(";
303 for (int i = 0; i < surfaceList->count(); ++i) {
304 if (i > 0) {
305 dbg << ", ";
306 }
307 auto surface = surfaceList->get(i);
308 dbg << (void*)surface;
309 }
310 dbg << ')';
311 return dbg;
312}
287313
=== modified file 'src/modules/Unity/Application/mirsurfacelistmodel.h'
--- src/modules/Unity/Application/mirsurfacelistmodel.h 2016-05-10 21:06:21 +0000
+++ src/modules/Unity/Application/mirsurfacelistmodel.h 2016-06-06 19:37:34 +0000
@@ -81,6 +81,7 @@
81{81{
82 Q_OBJECT82 Q_OBJECT
83public:83public:
84 ProxySurfaceListModel(QObject *parent = nullptr);
84 void setSourceList(MirSurfaceListModel *sourceList);85 void setSourceList(MirSurfaceListModel *sourceList);
8586
86 Q_INVOKABLE unity::shell::application::MirSurfaceInterface *get(int index) override;87 Q_INVOKABLE unity::shell::application::MirSurfaceInterface *get(int index) override;
@@ -94,4 +95,6 @@
9495
95} // namespace qtmir96} // namespace qtmir
9697
98QDebug operator<<(QDebug, const unity::shell::application::MirSurfaceListInterface &);
99
97#endif // QTMIR_MIRSURFACELISTMODEL_H100#endif // QTMIR_MIRSURFACELISTMODEL_H
98101
=== modified file 'src/modules/Unity/Application/session.cpp'
--- src/modules/Unity/Application/session.cpp 2016-05-17 19:18:44 +0000
+++ src/modules/Unity/Application/session.cpp 2016-06-06 19:37:34 +0000
@@ -38,6 +38,8 @@
3838
39using unity::shell::application::ApplicationInfoInterface;39using unity::shell::application::ApplicationInfoInterface;
4040
41#define DEBUG_MSG qCDebug(QTMIR_SURFACES).nospace() << "Session[" << (void*)this << ",name=" << name() << "]::" << __func__
42
41namespace qtmir43namespace qtmir
42{44{
4345
@@ -75,7 +77,7 @@
75 , m_live(true)77 , m_live(true)
76 , m_promptSessionManager(promptSessionManager)78 , m_promptSessionManager(promptSessionManager)
77{79{
78 qCDebug(QTMIR_SESSIONS) << "Session::Session() " << this->name();80 DEBUG_MSG << "()";
7981
80 setSuspendTimer(new Timer);82 setSuspendTimer(new Timer);
8183
@@ -84,7 +86,7 @@
8486
85Session::~Session()87Session::~Session()
86{88{
87 qCDebug(QTMIR_SESSIONS) << "Session::~Session() " << name();89 DEBUG_MSG << "()";
88 stopPromptSessions();90 stopPromptSessions();
8991
90 QList<SessionInterface*> children(m_children->list());92 QList<SessionInterface*> children(m_children->list());
@@ -107,7 +109,7 @@
107 Q_ASSERT(m_state == Session::Suspending);109 Q_ASSERT(m_state == Session::Suspending);
108110
109 if (m_surfaceList.count() == 0) {111 if (m_surfaceList.count() == 0) {
110 qCDebug(QTMIR_SESSIONS) << "Application::suspend - no surface to call stopFrameDropper() on!";112 DEBUG_MSG << " no surface to call stopFrameDropper() on!";
111 } else {113 } else {
112 for (int i = 0; i < m_surfaceList.count(); ++i) {114 for (int i = 0; i < m_surfaceList.count(); ++i) {
113 auto surface = static_cast<MirSurfaceInterface*>(m_surfaceList.get(i));115 auto surface = static_cast<MirSurfaceInterface*>(m_surfaceList.get(i));
@@ -153,8 +155,7 @@
153 return;155 return;
154 }156 }
155157
156 qCDebug(QTMIR_SESSIONS) << "Session::setState - session=" << name()158 DEBUG_MSG << "(state=" << sessionStateToString(state) << ")";
157 << "state=" << sessionStateToString(state);
158159
159 if (m_state == Suspending) {160 if (m_state == Suspending) {
160 m_suspendTimer->stop();161 m_suspendTimer->stop();
@@ -198,7 +199,7 @@
198199
199void Session::registerSurface(MirSurfaceInterface *newSurface)200void Session::registerSurface(MirSurfaceInterface *newSurface)
200{201{
201 qCDebug(QTMIR_SESSIONS) << "Session::resgisterSurface - session=" << name() << "surface=" << newSurface;202 DEBUG_MSG << "(surface=" << newSurface << ")";
202203
203 // Only notify QML of surface creation once it has drawn its first frame.204 // Only notify QML of surface creation once it has drawn its first frame.
204 if (newSurface->isFirstFrameDrawn()) {205 if (newSurface->isFirstFrameDrawn()) {
@@ -214,7 +215,7 @@
214215
215void Session::prependSurface(MirSurfaceInterface *newSurface)216void Session::prependSurface(MirSurfaceInterface *newSurface)
216{217{
217 qCDebug(QTMIR_SESSIONS) << "Session::prependSurface - session=" << name() << "surface=" << newSurface;218 DEBUG_MSG << "(surface=" << newSurface << ")";
218219
219 connect(newSurface, &MirSurfaceInterface::stateChanged,220 connect(newSurface, &MirSurfaceInterface::stateChanged,
220 this, &Session::updateFullscreenProperty);221 this, &Session::updateFullscreenProperty);
@@ -246,7 +247,7 @@
246247
247void Session::removeSurface(MirSurfaceInterface* surface)248void Session::removeSurface(MirSurfaceInterface* surface)
248{249{
249 qCDebug(QTMIR_SESSIONS) << "Session::removeSurface - session=" << name() << "surface=" << surface;250 DEBUG_MSG << "(surface=" << surface << ")";
250251
251 surface->disconnect(this);252 surface->disconnect(this);
252253
@@ -277,8 +278,8 @@
277278
278void Session::setFullscreen(bool fullscreen)279void Session::setFullscreen(bool fullscreen)
279{280{
280 qCDebug(QTMIR_SESSIONS) << "Session::setFullscreen - session=" << this << "fullscreen=" << fullscreen;
281 if (m_fullscreen != fullscreen) {281 if (m_fullscreen != fullscreen) {
282 DEBUG_MSG << "(" << fullscreen << ")";
282 m_fullscreen = fullscreen;283 m_fullscreen = fullscreen;
283 Q_EMIT fullscreenChanged(m_fullscreen);284 Q_EMIT fullscreenChanged(m_fullscreen);
284 }285 }
@@ -286,7 +287,7 @@
286287
287void Session::suspend()288void Session::suspend()
288{289{
289 qCDebug(QTMIR_SESSIONS) << "Session::suspend - session=" << this << "state=" << sessionStateToString(m_state);290 DEBUG_MSG << " state=" << sessionStateToString(m_state);
290 if (m_state == Running) {291 if (m_state == Running) {
291 session()->set_lifecycle_state(mir_lifecycle_state_will_suspend);292 session()->set_lifecycle_state(mir_lifecycle_state_will_suspend);
292 m_suspendTimer->start();293 m_suspendTimer->start();
@@ -305,7 +306,7 @@
305306
306void Session::resume()307void Session::resume()
307{308{
308 qCDebug(QTMIR_SESSIONS) << "Session::resume - session=" << this << "state=" << sessionStateToString(m_state);309 DEBUG_MSG << " state=" << sessionStateToString(m_state);
309310
310 if (m_state == Suspending || m_state == Suspended) {311 if (m_state == Suspending || m_state == Suspended) {
311 doResume();312 doResume();
@@ -336,7 +337,7 @@
336337
337void Session::close()338void Session::close()
338{339{
339 qCDebug(QTMIR_SESSIONS) << "Session::close - " << name();340 DEBUG_MSG << "()";
340341
341 if (m_state == Stopped) return;342 if (m_state == Stopped) return;
342343
@@ -348,7 +349,7 @@
348349
349void Session::stop()350void Session::stop()
350{351{
351 qCDebug(QTMIR_SESSIONS) << "Session::stop - " << name();352 DEBUG_MSG << "()";
352353
353 if (m_state != Stopped) {354 if (m_state != Stopped) {
354355
@@ -372,7 +373,7 @@
372void Session::setLive(const bool live)373void Session::setLive(const bool live)
373{374{
374 if (m_live != live) {375 if (m_live != live) {
375 qCDebug(QTMIR_SESSIONS) << "Session::setLive - " << name() << "live=" << live;376 DEBUG_MSG << "(" << live << ")";
376377
377 m_live = live;378 m_live = live;
378 Q_EMIT liveChanged(m_live);379 Q_EMIT liveChanged(m_live);
@@ -396,7 +397,7 @@
396397
397void Session::insertChildSession(uint index, SessionInterface* session)398void Session::insertChildSession(uint index, SessionInterface* session)
398{399{
399 qCDebug(QTMIR_SESSIONS) << "Session::insertChildSession - " << session->name() << " to " << name() << " @ " << index;400 DEBUG_MSG << "(index=" << index << ", Session[" << (void*)session << ",name=" << session->name() << "])";
400 Q_ASSERT(!m_children->contains(session));401 Q_ASSERT(!m_children->contains(session));
401402
402 m_children->insert(index, session);403 m_children->insert(index, session);
@@ -424,7 +425,7 @@
424425
425void Session::removeChildSession(SessionInterface* session)426void Session::removeChildSession(SessionInterface* session)
426{427{
427 qCDebug(QTMIR_SESSIONS) << "Session::removeChildSession - " << session->name() << " from " << name();428 DEBUG_MSG << "(Session[" << (void*)session << ",name=" << session->name() << "])";
428429
429 disconnect(session, 0, this, 0);430 disconnect(session, 0, this, 0);
430431
@@ -452,16 +453,14 @@
452453
453void Session::appendPromptSession(const std::shared_ptr<ms::PromptSession>& promptSession)454void Session::appendPromptSession(const std::shared_ptr<ms::PromptSession>& promptSession)
454{455{
455 qCDebug(QTMIR_SESSIONS) << "Session::appendPromptSession session=" << name()456 DEBUG_MSG << "(promptSession=" << (promptSession ? promptSession.get() : nullptr) << ")";
456 << "promptSession=" << (promptSession ? promptSession.get() : nullptr);
457457
458 m_promptSessions.append(promptSession);458 m_promptSessions.append(promptSession);
459}459}
460460
461void Session::removePromptSession(const std::shared_ptr<ms::PromptSession>& promptSession)461void Session::removePromptSession(const std::shared_ptr<ms::PromptSession>& promptSession)
462{462{
463 qCDebug(QTMIR_SESSIONS) << "Session::removePromptSession session=" << name()463 DEBUG_MSG << "(promptSession=" << (promptSession ? promptSession.get() : nullptr) << ")";
464 << "promptSession=" << (promptSession ? promptSession.get() : nullptr);
465464
466 m_promptSessions.removeAll(promptSession);465 m_promptSessions.removeAll(promptSession);
467}466}
@@ -477,7 +476,7 @@
477 QListIterator<std::shared_ptr<ms::PromptSession>> it(copy);476 QListIterator<std::shared_ptr<ms::PromptSession>> it(copy);
478 for ( it.toBack(); it.hasPrevious(); ) {477 for ( it.toBack(); it.hasPrevious(); ) {
479 std::shared_ptr<ms::PromptSession> promptSession = it.previous();478 std::shared_ptr<ms::PromptSession> promptSession = it.previous();
480 qCDebug(QTMIR_SESSIONS) << "Session::stopPromptSessions - promptSession=" << promptSession.get();479 DEBUG_MSG << " - promptSession=" << promptSession.get();
481480
482 m_promptSessionManager->stop_prompt_session(promptSession);481 m_promptSessionManager->stop_prompt_session(promptSession);
483 }482 }
@@ -500,7 +499,7 @@
500void Session::deleteIfZombieAndEmpty()499void Session::deleteIfZombieAndEmpty()
501{500{
502 if (!m_live && m_children->rowCount() == 0 && m_surfaceList.isEmpty()) {501 if (!m_live && m_children->rowCount() == 0 && m_surfaceList.isEmpty()) {
503 qCDebug(QTMIR_SESSIONS).nospace() << "Session::deleteIfZombieAndEmpty[" << name() << "] - deleteLater()";502 DEBUG_MSG << " - deleteLater()";
504 deleteLater();503 deleteLater();
505 }504 }
506}505}
507506
=== modified file 'src/modules/Unity/Application/sessionmanager.h'
--- src/modules/Unity/Application/sessionmanager.h 2015-08-11 12:08:32 +0000
+++ src/modules/Unity/Application/sessionmanager.h 2016-06-06 19:37:34 +0000
@@ -81,7 +81,6 @@
81 ApplicationManager* m_applicationManager;81 ApplicationManager* m_applicationManager;
82 static SessionManager *the_session_manager;82 static SessionManager *the_session_manager;
8383
84 QList<Session*> m_sessions;
85 QHash<const mir::scene::PromptSession *, SessionInterface *> m_mirPromptToSessionHash;84 QHash<const mir::scene::PromptSession *, SessionInterface *> m_mirPromptToSessionHash;
86};85};
8786
8887
=== modified file 'src/modules/Unity/Application/ubuntukeyboardinfo.cpp'
--- src/modules/Unity/Application/ubuntukeyboardinfo.cpp 2015-08-11 12:08:32 +0000
+++ src/modules/Unity/Application/ubuntukeyboardinfo.cpp 2016-06-06 19:37:34 +0000
@@ -36,6 +36,8 @@
36UbuntuKeyboardInfo::UbuntuKeyboardInfo(QObject *parent)36UbuntuKeyboardInfo::UbuntuKeyboardInfo(QObject *parent)
37 : QObject(parent),37 : QObject(parent),
38 m_consecutiveAttempts(0),38 m_consecutiveAttempts(0),
39 m_lastX(0),
40 m_lastY(0),
39 m_lastWidth(0),41 m_lastWidth(0),
40 m_lastHeight(0)42 m_lastHeight(0)
41{43{
4244
=== modified file 'src/modules/Unity/Application/upstart/taskcontroller.cpp'
--- src/modules/Unity/Application/upstart/taskcontroller.cpp 2016-05-04 16:35:50 +0000
+++ src/modules/Unity/Application/upstart/taskcontroller.cpp 2016-06-06 19:37:34 +0000
@@ -127,8 +127,8 @@
127 TaskController::Error error;127 TaskController::Error error;
128 switch(failureType)128 switch(failureType)
129 {129 {
130 case UBUNTU_APP_LAUNCH_APP_FAILED_CRASH: error = TaskController::Error::APPLICATION_CRASHED;130 case UBUNTU_APP_LAUNCH_APP_FAILED_CRASH: error = TaskController::Error::APPLICATION_CRASHED; break;
131 case UBUNTU_APP_LAUNCH_APP_FAILED_START_FAILURE: error = TaskController::Error::APPLICATION_FAILED_TO_START;131 case UBUNTU_APP_LAUNCH_APP_FAILED_START_FAILURE: error = TaskController::Error::APPLICATION_FAILED_TO_START; break;
132 }132 }
133133
134 auto thiz = static_cast<TaskController*>(userData);134 auto thiz = static_cast<TaskController*>(userData);
135135
=== modified file 'src/modules/Unity/Screens/CMakeLists.txt'
--- src/modules/Unity/Screens/CMakeLists.txt 2016-01-28 22:33:35 +0000
+++ src/modules/Unity/Screens/CMakeLists.txt 2016-06-06 19:37:34 +0000
@@ -1,5 +1,9 @@
1include_directories(1include_directories(
2 ${CMAKE_SOURCE_DIR}/src/platforms/mirserver2 ${CMAKE_SOURCE_DIR}/src/platforms/mirserver
3)
4
5include_directories(
6 SYSTEM
3 ${Qt5Gui_PRIVATE_INCLUDE_DIRS}7 ${Qt5Gui_PRIVATE_INCLUDE_DIRS}
4 ${Qt5Quick_INCLUDE_DIRS}8 ${Qt5Quick_INCLUDE_DIRS}
5 ${MIRSERVER_INCLUDE_DIRS}9 ${MIRSERVER_INCLUDE_DIRS}
610
=== modified file 'src/platforms/mirserver/CMakeLists.txt'
--- src/platforms/mirserver/CMakeLists.txt 2016-05-25 13:54:30 +0000
+++ src/platforms/mirserver/CMakeLists.txt 2016-06-06 19:37:34 +0000
@@ -26,6 +26,10 @@
26include_directories(26include_directories(
27 ${CMAKE_SOURCE_DIR}/src/common27 ${CMAKE_SOURCE_DIR}/src/common
2828
29)
30
31include_directories(
32 SYSTEM
29 ${MIRCOMMON_INCLUDE_DIRS}33 ${MIRCOMMON_INCLUDE_DIRS}
30 ${MIRSERVER_INCLUDE_DIRS}34 ${MIRSERVER_INCLUDE_DIRS}
31 ${MIRRENDERERGLDEV_INCLUDE_DIRS}35 ${MIRRENDERERGLDEV_INCLUDE_DIRS}
@@ -82,6 +86,7 @@
82 tracepoints.c86 tracepoints.c
83# We need to run moc on these headers87# We need to run moc on these headers
84 ${APPLICATION_API_INCLUDEDIR}/unity/shell/application/Mir.h88 ${APPLICATION_API_INCLUDEDIR}/unity/shell/application/Mir.h
89 ${APPLICATION_API_INCLUDEDIR}/unity/shell/application/MirMousePointerInterface.h
85 )90 )
8691
87add_library(qpa-mirserver SHARED92add_library(qpa-mirserver SHARED
8893
=== modified file 'src/platforms/mirserver/mirwindowmanager.cpp'
--- src/platforms/mirserver/mirwindowmanager.cpp 2016-04-28 12:48:48 +0000
+++ src/platforms/mirserver/mirwindowmanager.cpp 2016-06-06 19:37:34 +0000
@@ -196,7 +196,7 @@
196 const std::shared_ptr<mir::scene::Surface>& surface,196 const std::shared_ptr<mir::scene::Surface>& surface,
197 const mir::shell::SurfaceSpecification& modifications)197 const mir::shell::SurfaceSpecification& modifications)
198{198{
199 QMutexLocker(&SurfaceObserver::mutex);199 QMutexLocker locker(&SurfaceObserver::mutex);
200 SurfaceObserver *observer = SurfaceObserver::observerForSurface(surface.get());200 SurfaceObserver *observer = SurfaceObserver::observerForSurface(surface.get());
201 if (observer) {201 if (observer) {
202 observer->notifySurfaceModifications(modifications);202 observer->notifySurfaceModifications(modifications);
203203
=== modified file 'tests/framework/CMakeLists.txt'
--- tests/framework/CMakeLists.txt 2016-05-24 20:13:10 +0000
+++ tests/framework/CMakeLists.txt 2016-06-06 19:37:34 +0000
@@ -1,7 +1,11 @@
1include_directories(1include_directories(
2 ${APPLICATION_API_INCLUDE_DIRS}
3 ${CMAKE_SOURCE_DIR}/src/platforms/mirserver2 ${CMAKE_SOURCE_DIR}/src/platforms/mirserver
4 ${CMAKE_SOURCE_DIR}/src/modules3 ${CMAKE_SOURCE_DIR}/src/modules
4)
5
6include_directories(
7 SYSTEM
8 ${APPLICATION_API_INCLUDE_DIRS}
5 ${MIRSERVER_INCLUDE_DIRS}9 ${MIRSERVER_INCLUDE_DIRS}
6 ${MIRRENDERERGLDEV_INCLUDE_DIRS}10 ${MIRRENDERERGLDEV_INCLUDE_DIRS}
711
812
=== modified file 'tests/framework/mock_mir_session.cpp'
--- tests/framework/mock_mir_session.cpp 2015-10-19 10:45:42 +0000
+++ tests/framework/mock_mir_session.cpp 2016-06-06 19:37:34 +0000
@@ -22,6 +22,7 @@
22{22{
2323
24MockSession::MockSession()24MockSession::MockSession()
25 : m_sessionId(-1)
25{26{
26}27}
2728
2829
=== modified file 'tests/mirserver/Clipboard/CMakeLists.txt'
--- tests/mirserver/Clipboard/CMakeLists.txt 2014-12-03 08:56:35 +0000
+++ tests/mirserver/Clipboard/CMakeLists.txt 2016-06-06 19:37:34 +0000
@@ -6,6 +6,10 @@
66
7include_directories(7include_directories(
8 ${CMAKE_SOURCE_DIR}/src/platforms/mirserver8 ${CMAKE_SOURCE_DIR}/src/platforms/mirserver
9)
10
11include_directories(
12 SYSTEM
9 ${Qt5Gui_PRIVATE_INCLUDE_DIRS}13 ${Qt5Gui_PRIVATE_INCLUDE_DIRS}
10 ${MIRSERVER_INCLUDE_DIRS}14 ${MIRSERVER_INCLUDE_DIRS}
11)15)
1216
=== modified file 'tests/mirserver/QtEventFeeder/CMakeLists.txt'
--- tests/mirserver/QtEventFeeder/CMakeLists.txt 2014-12-03 08:56:35 +0000
+++ tests/mirserver/QtEventFeeder/CMakeLists.txt 2016-06-06 19:37:34 +0000
@@ -7,6 +7,10 @@
7include_directories(7include_directories(
8 ${CMAKE_SOURCE_DIR}/src/platforms/mirserver8 ${CMAKE_SOURCE_DIR}/src/platforms/mirserver
9 ${CMAKE_SOURCE_DIR}/src/common9 ${CMAKE_SOURCE_DIR}/src/common
10)
11
12include_directories(
13 SYSTEM
10 ${Qt5Gui_PRIVATE_INCLUDE_DIRS}14 ${Qt5Gui_PRIVATE_INCLUDE_DIRS}
11 ${MIRSERVER_INCLUDE_DIRS}15 ${MIRSERVER_INCLUDE_DIRS}
12)16)
1317
=== modified file 'tests/mirserver/QtEventFeeder/mock_qtwindowsystem.h'
--- tests/mirserver/QtEventFeeder/mock_qtwindowsystem.h 2016-01-07 11:37:55 +0000
+++ tests/mirserver/QtEventFeeder/mock_qtwindowsystem.h 2016-06-06 19:37:34 +0000
@@ -28,7 +28,6 @@
28 MOCK_METHOD1(getWindowForTouchPoint, QWindow*(const QPoint &point));28 MOCK_METHOD1(getWindowForTouchPoint, QWindow*(const QPoint &point));
29 MOCK_METHOD0(lastWindow, QWindow*());29 MOCK_METHOD0(lastWindow, QWindow*());
30 MOCK_METHOD0(focusedWindow, QWindow*());30 MOCK_METHOD0(focusedWindow, QWindow*());
31 MOCK_METHOD1(registerTouchDevice, void(QTouchDevice* device));
3231
33 // Wanted to use GMock, but MOCK_METHOD11 not implemented32 // Wanted to use GMock, but MOCK_METHOD11 not implemented
34 void handleExtendedKeyEvent(QWindow */*window*/, ulong /*timestamp*/, QEvent::Type /*type*/, int /*key*/,33 void handleExtendedKeyEvent(QWindow */*window*/, ulong /*timestamp*/, QEvent::Type /*type*/, int /*key*/,
@@ -43,6 +42,18 @@
43 Qt::KeyboardModifiers mods));42 Qt::KeyboardModifiers mods));
44 MOCK_METHOD4(handleMouseEvent, void(ulong timestamp, QPointF point, Qt::MouseButtons buttons, Qt::KeyboardModifiers modifiers));43 MOCK_METHOD4(handleMouseEvent, void(ulong timestamp, QPointF point, Qt::MouseButtons buttons, Qt::KeyboardModifiers modifiers));
45 MOCK_METHOD3(handleWheelEvent, void(ulong timestamp, QPoint angleDelta, Qt::KeyboardModifiers mods));44 MOCK_METHOD3(handleWheelEvent, void(ulong timestamp, QPoint angleDelta, Qt::KeyboardModifiers mods));
45
46 ~MockQtWindowSystem()
47 {
48 qDeleteAll(m_devices);
49 }
50
51 void registerTouchDevice(QTouchDevice* device)
52 {
53 m_devices << device;
54 }
55
56 QVector<QTouchDevice*> m_devices;
46};57};
4758
48namespace testing59namespace testing
4960
=== modified file 'tests/mirserver/QtEventFeeder/qteventfeeder_test.cpp'
--- tests/mirserver/QtEventFeeder/qteventfeeder_test.cpp 2016-04-29 15:41:00 +0000
+++ tests/mirserver/QtEventFeeder/qteventfeeder_test.cpp 2016-06-06 19:37:34 +0000
@@ -78,11 +78,11 @@
78 mockWindowSystem = new MockQtWindowSystem;78 mockWindowSystem = new MockQtWindowSystem;
79 auto screens = QSharedPointer<ScreensModel>();79 auto screens = QSharedPointer<ScreensModel>();
8080
81 EXPECT_CALL(*mockWindowSystem, registerTouchDevice(_));81 ASSERT_TRUE(mockWindowSystem->m_devices.count() == 0);
8282
83 qtEventFeeder = new QtEventFeeder(screens, mockWindowSystem);83 qtEventFeeder = new QtEventFeeder(screens, mockWindowSystem);
8484
85 ASSERT_TRUE(Mock::VerifyAndClearExpectations(mockWindowSystem));85 ASSERT_TRUE(mockWindowSystem->m_devices.count() == 1);
8686
87 int argc = 0;87 int argc = 0;
88 char **argv = nullptr;88 char **argv = nullptr;
8989
=== modified file 'tests/mirserver/Screen/CMakeLists.txt'
--- tests/mirserver/Screen/CMakeLists.txt 2015-11-11 10:43:36 +0000
+++ tests/mirserver/Screen/CMakeLists.txt 2016-06-06 19:37:34 +0000
@@ -8,6 +8,10 @@
8 ${CMAKE_SOURCE_DIR}/tests/framework8 ${CMAKE_SOURCE_DIR}/tests/framework
9 ${CMAKE_SOURCE_DIR}/src/platforms/mirserver9 ${CMAKE_SOURCE_DIR}/src/platforms/mirserver
10 ${CMAKE_SOURCE_DIR}/src/common10 ${CMAKE_SOURCE_DIR}/src/common
11)
12
13include_directories(
14 SYSTEM
11 ${Qt5Gui_PRIVATE_INCLUDE_DIRS}15 ${Qt5Gui_PRIVATE_INCLUDE_DIRS}
12 ${MIRSERVER_INCLUDE_DIRS}16 ${MIRSERVER_INCLUDE_DIRS}
13)17)
1418
=== modified file 'tests/mirserver/ScreensModel/CMakeLists.txt'
--- tests/mirserver/ScreensModel/CMakeLists.txt 2016-02-16 11:48:35 +0000
+++ tests/mirserver/ScreensModel/CMakeLists.txt 2016-06-06 19:37:34 +0000
@@ -11,6 +11,10 @@
11 ${CMAKE_SOURCE_DIR}/tests/framework11 ${CMAKE_SOURCE_DIR}/tests/framework
12 ${CMAKE_SOURCE_DIR}/src/platforms/mirserver12 ${CMAKE_SOURCE_DIR}/src/platforms/mirserver
13 ${CMAKE_SOURCE_DIR}/src/common13 ${CMAKE_SOURCE_DIR}/src/common
14)
15
16include_directories(
17 SYSTEM
14 ${Qt5Gui_PRIVATE_INCLUDE_DIRS}18 ${Qt5Gui_PRIVATE_INCLUDE_DIRS}
15 ${MIRSERVER_INCLUDE_DIRS}19 ${MIRSERVER_INCLUDE_DIRS}
16 ${MIRRENDERERGLDEV_INCLUDE_DIRS}20 ${MIRRENDERERGLDEV_INCLUDE_DIRS}
1721
=== modified file 'tests/mirserver/ScreensModel/screensmodel_test.cpp'
--- tests/mirserver/ScreensModel/screensmodel_test.cpp 2016-04-29 15:41:00 +0000
+++ tests/mirserver/ScreensModel/screensmodel_test.cpp 2016-06-06 19:37:34 +0000
@@ -64,6 +64,7 @@
64void ScreensModelTest::TearDown()64void ScreensModelTest::TearDown()
65{65{
66 delete screensModel;66 delete screensModel;
67 delete app;
67}68}
6869
69TEST_F(ScreensModelTest, SingleScreenFound)70TEST_F(ScreensModelTest, SingleScreenFound)
7071
=== modified file 'tests/mirserver/WindowManager/CMakeLists.txt'
--- tests/mirserver/WindowManager/CMakeLists.txt 2016-03-10 11:55:28 +0000
+++ tests/mirserver/WindowManager/CMakeLists.txt 2016-06-06 19:37:34 +0000
@@ -1,5 +1,9 @@
1include_directories(1include_directories(
2 ${CMAKE_SOURCE_DIR}/src/platforms/mirserver2 ${CMAKE_SOURCE_DIR}/src/platforms/mirserver
3)
4
5include_directories(
6 SYSTEM
3 ${MIRSERVER_INCLUDE_DIRS}7 ${MIRSERVER_INCLUDE_DIRS}
4)8)
59
610
=== modified file 'tests/modules/Application/CMakeLists.txt'
--- tests/modules/Application/CMakeLists.txt 2015-12-15 10:03:32 +0000
+++ tests/modules/Application/CMakeLists.txt 2016-06-06 19:37:34 +0000
@@ -7,8 +7,11 @@
7 ${CMAKE_SOURCE_DIR}/src/platforms/mirserver7 ${CMAKE_SOURCE_DIR}/src/platforms/mirserver
8 ${CMAKE_SOURCE_DIR}/src/modules8 ${CMAKE_SOURCE_DIR}/src/modules
9 ${CMAKE_SOURCE_DIR}/tests/framework9 ${CMAKE_SOURCE_DIR}/tests/framework
10)
11
12include_directories(
13 SYSTEM
10 ${MIRSERVER_INCLUDE_DIRS}14 ${MIRSERVER_INCLUDE_DIRS}
11
12 ${Qt5Core_INCLUDE_DIRS}15 ${Qt5Core_INCLUDE_DIRS}
13 ${Qt5GUI_INCLUDE_DIRS}16 ${Qt5GUI_INCLUDE_DIRS}
14 ${Qt5Quick_INCLUDE_DIRS}17 ${Qt5Quick_INCLUDE_DIRS}
1518
=== modified file 'tests/modules/Application/application_test.cpp'
--- tests/modules/Application/application_test.cpp 2016-05-02 12:57:40 +0000
+++ tests/modules/Application/application_test.cpp 2016-06-06 19:37:34 +0000
@@ -590,6 +590,38 @@
590 EXPECT_EQ(Application::InternalState::StoppedResumable, application->internalState());590 EXPECT_EQ(Application::InternalState::StoppedResumable, application->internalState());
591}591}
592592
593TEST_F(ApplicationTests, surfaceCountPropertyUpdates)
594{
595 using namespace ::testing;
596
597 QScopedPointer<Application> application(createApplicationWithFakes());
598
599 application->setProcessState(Application::ProcessRunning);
600 Session *session = createSessionWithFakes();
601
602 application->setSession(session);
603
604 QSignalSpy surfaceCountChangedSpy(application.data(), &Application::surfaceCountChanged);
605
606 EXPECT_EQ(application->surfaceCount(), 0);
607 EXPECT_EQ(surfaceCountChangedSpy.count(), 0);
608
609 FakeMirSurface *surface = new FakeMirSurface;
610 session->registerSurface(surface);
611 surface->drawFirstFrame();
612
613 EXPECT_EQ(application->surfaceCount(), 1);
614 EXPECT_EQ(surfaceCountChangedSpy.count(), 1);
615
616 FakeMirSurface *surface2 = new FakeMirSurface;
617 session->registerSurface(surface2);
618 surface2->drawFirstFrame();
619
620 EXPECT_EQ(application->surfaceCount(), 2);
621 EXPECT_EQ(surfaceCountChangedSpy.count(), 2);
622
623}
624
593/*625/*
594 Regression test for bug "App respawns if manually closed while it's launching"626 Regression test for bug "App respawns if manually closed while it's launching"
595 https://bugs.launchpad.net/ubuntu/+source/qtmir/+bug/1575577627 https://bugs.launchpad.net/ubuntu/+source/qtmir/+bug/1575577
596628
=== modified file 'tests/modules/ApplicationManager/CMakeLists.txt'
--- tests/modules/ApplicationManager/CMakeLists.txt 2015-09-30 15:45:17 +0000
+++ tests/modules/ApplicationManager/CMakeLists.txt 2016-06-06 19:37:34 +0000
@@ -5,10 +5,14 @@
5)5)
66
7include_directories(7include_directories(
8 ${APPLICATION_API_INCLUDE_DIRS}
9 ${CMAKE_SOURCE_DIR}/src/platforms/mirserver8 ${CMAKE_SOURCE_DIR}/src/platforms/mirserver
10 ${CMAKE_SOURCE_DIR}/src/modules9 ${CMAKE_SOURCE_DIR}/src/modules
11 ${CMAKE_SOURCE_DIR}/tests/framework10 ${CMAKE_SOURCE_DIR}/tests/framework
11)
12
13include_directories(
14 SYSTEM
15 ${APPLICATION_API_INCLUDE_DIRS}
12 ${MIRSERVER_INCLUDE_DIRS}16 ${MIRSERVER_INCLUDE_DIRS}
13)17)
1418
1519
=== modified file 'tests/modules/ApplicationManager/application_manager_test.cpp'
--- tests/modules/ApplicationManager/application_manager_test.cpp 2016-05-03 15:27:26 +0000
+++ tests/modules/ApplicationManager/application_manager_test.cpp 2016-06-06 19:37:34 +0000
@@ -118,6 +118,8 @@
118118
119 EXPECT_FALSE(authed);119 EXPECT_FALSE(authed);
120 EXPECT_EQ(application, applicationManager.findApplication(dialer_app_id));120 EXPECT_EQ(application, applicationManager.findApplication(dialer_app_id));
121
122 delete surface;
121}123}
122124
123TEST_F(ApplicationManagerTests,application_dies_while_starting)125TEST_F(ApplicationManagerTests,application_dies_while_starting)
@@ -271,6 +273,10 @@
271273
272TEST_F(ApplicationManagerTests,two_session_on_one_application)274TEST_F(ApplicationManagerTests,two_session_on_one_application)
273{275{
276 int argc = 0;
277 char* argv[0];
278 QCoreApplication qtApp(argc, argv); // app for deleteLater event
279
274 using namespace ::testing;280 using namespace ::testing;
275 const pid_t a_procId = 5921;281 const pid_t a_procId = 5921;
276 const char an_app_id[] = "some_app";282 const char an_app_id[] = "some_app";
@@ -293,10 +299,18 @@
293299
294 EXPECT_EQ(true, authed);300 EXPECT_EQ(true, authed);
295 EXPECT_EQ(second_session, the_app->session()->session());301 EXPECT_EQ(second_session, the_app->session()->session());
302
303 onSessionStopping(first_session);
304 onSessionStopping(second_session);
305 qtApp.sendPostedEvents(nullptr, QEvent::DeferredDelete);
296}306}
297307
298TEST_F(ApplicationManagerTests,two_session_on_one_application_after_starting)308TEST_F(ApplicationManagerTests,two_session_on_one_application_after_starting)
299{309{
310 int argc = 0;
311 char* argv[0];
312 QCoreApplication qtApp(argc, argv); // app for deleteLater event
313
300 using namespace ::testing;314 using namespace ::testing;
301 const pid_t a_procId = 5921;315 const pid_t a_procId = 5921;
302 const char an_app_id[] = "some_app";316 const char an_app_id[] = "some_app";
@@ -323,6 +337,11 @@
323 EXPECT_EQ(true, authed);337 EXPECT_EQ(true, authed);
324 EXPECT_EQ(Application::Running, the_app->state());338 EXPECT_EQ(Application::Running, the_app->state());
325 EXPECT_EQ(first_session, the_app->session()->session());339 EXPECT_EQ(first_session, the_app->session()->session());
340
341 onSessionStopping(first_session);
342 onSessionStopping(second_session);
343 delete aSurface;
344 qtApp.sendPostedEvents(nullptr, QEvent::DeferredDelete);
326}345}
327346
328TEST_F(ApplicationManagerTests,starting_app_is_suspended_when_it_gets_ready_if_requested)347TEST_F(ApplicationManagerTests,starting_app_is_suspended_when_it_gets_ready_if_requested)
@@ -357,6 +376,8 @@
357376
358 // now that its ready, suspend process should have begun377 // now that its ready, suspend process should have begun
359 EXPECT_EQ(Application::InternalState::SuspendingWaitSession, app->internalState());378 EXPECT_EQ(Application::InternalState::SuspendingWaitSession, app->internalState());
379
380 delete aSurface;
360}381}
361382
362TEST_F(ApplicationManagerTests,requestFocusApplication)383TEST_F(ApplicationManagerTests,requestFocusApplication)
@@ -746,6 +767,8 @@
746 // Check application state is correctly set767 // Check application state is correctly set
747 Application *theApp = applicationManager.findApplication(appId);768 Application *theApp = applicationManager.findApplication(appId);
748 EXPECT_EQ(theApp->state(), Application::Running);769 EXPECT_EQ(theApp->state(), Application::Running);
770
771 delete surface;
749}772}
750773
751/*774/*
@@ -879,6 +902,8 @@
879902
880 EXPECT_EQ(2, countSpy.count()); //FIXME(greyback)903 EXPECT_EQ(2, countSpy.count()); //FIXME(greyback)
881 EXPECT_EQ(0, applicationManager.count());904 EXPECT_EQ(0, applicationManager.count());
905
906 delete surface;
882}907}
883908
884/*909/*
@@ -921,6 +946,8 @@
921946
922 EXPECT_EQ(countSpy.count(), 2); //FIXME(greyback)947 EXPECT_EQ(countSpy.count(), 2); //FIXME(greyback)
923 EXPECT_EQ(applicationManager.count(), 0);948 EXPECT_EQ(applicationManager.count(), 0);
949
950 delete surface;
924}951}
925952
926/*953/*
@@ -971,6 +998,8 @@
971998
972 EXPECT_EQ(0, countSpy.count());999 EXPECT_EQ(0, countSpy.count());
973 EXPECT_EQ(1, applicationManager.count());1000 EXPECT_EQ(1, applicationManager.count());
1001
1002 delete surface;
974}1003}
9751004
976/*1005/*
@@ -1023,6 +1052,8 @@
10231052
1024 EXPECT_EQ(countSpy.count(), 0);1053 EXPECT_EQ(countSpy.count(), 0);
1025 EXPECT_EQ(applicationManager.count(), 1);1054 EXPECT_EQ(applicationManager.count(), 1);
1055
1056 delete surface;
1026}1057}
10271058
1028/*1059/*
@@ -1092,6 +1123,8 @@
10921123
1093 EXPECT_EQ(countSpy.count(), 2); //FIXME(greyback)1124 EXPECT_EQ(countSpy.count(), 2); //FIXME(greyback)
1094 EXPECT_EQ(applicationManager.count(), 0);1125 EXPECT_EQ(applicationManager.count(), 0);
1126
1127 delete surface;
1095}1128}
10961129
1097/*1130/*
@@ -1133,6 +1166,8 @@
11331166
1134 Application *app = applicationManager.findApplication(appId);1167 Application *app = applicationManager.findApplication(appId);
1135 EXPECT_EQ(nullptr, app);1168 EXPECT_EQ(nullptr, app);
1169
1170 delete surface;
1136}1171}
11371172
1138/*1173/*
@@ -1187,6 +1222,8 @@
1187 EXPECT_EQ(1, applicationManager.count());1222 EXPECT_EQ(1, applicationManager.count());
11881223
1189 EXPECT_EQ(Application::Stopped, app->state());1224 EXPECT_EQ(Application::Stopped, app->state());
1225
1226 delete surface;
1190}1227}
11911228
1192/*1229/*
@@ -1236,6 +1273,10 @@
1236 */1273 */
1237TEST_F(ApplicationManagerTests,unexpectedStopOfForegroundWebapp)1274TEST_F(ApplicationManagerTests,unexpectedStopOfForegroundWebapp)
1238{1275{
1276 int argc = 0;
1277 char* argv[0];
1278 QCoreApplication qtApp(argc, argv); // app for deleteLater event
1279
1239 using namespace ::testing;1280 using namespace ::testing;
1240 const QString appId("webapp");1281 const QString appId("webapp");
1241 const pid_t procId1 = 5551;1282 const pid_t procId1 = 5551;
@@ -1279,6 +1320,10 @@
12791320
1280 EXPECT_EQ(countSpy.count(), 2); //FIXME(greyback)1321 EXPECT_EQ(countSpy.count(), 2); //FIXME(greyback)
1281 EXPECT_EQ(applicationManager.count(), 0);1322 EXPECT_EQ(applicationManager.count(), 0);
1323
1324 delete surface;
1325
1326 qtApp.sendPostedEvents(nullptr, QEvent::DeferredDelete);
1282}1327}
12831328
1284/*1329/*
@@ -1287,6 +1332,10 @@
1287 */1332 */
1288TEST_F(ApplicationManagerTests,unexpectedStopOfBackgroundWebapp)1333TEST_F(ApplicationManagerTests,unexpectedStopOfBackgroundWebapp)
1289{1334{
1335 int argc = 0;
1336 char* argv[0];
1337 QCoreApplication qtApp(argc, argv); // app for deleteLater event
1338
1290 using namespace ::testing;1339 using namespace ::testing;
1291 const QString appId("webapp");1340 const QString appId("webapp");
1292 const pid_t procId1 = 5551;1341 const pid_t procId1 = 5551;
@@ -1336,6 +1385,11 @@
1336 onSessionStopping(session1);1385 onSessionStopping(session1);
13371386
1338 EXPECT_EQ(0, countSpy.count());1387 EXPECT_EQ(0, countSpy.count());
1388
1389 delete surface1;
1390 delete surface2;
1391
1392 qtApp.sendPostedEvents(nullptr, QEvent::DeferredDelete);
1339}1393}
13401394
1341/*1395/*
@@ -1460,6 +1514,8 @@
14601514
1461 EXPECT_EQ(Application::Running, the_app->state());1515 EXPECT_EQ(Application::Running, the_app->state());
1462 ASSERT_EQ(Application::InternalState::Running, the_app->internalState());1516 ASSERT_EQ(Application::InternalState::Running, the_app->internalState());
1517
1518 delete surface;
1463}1519}
14641520
1465/*1521/*
@@ -1499,6 +1555,8 @@
1499 EXPECT_FALSE(sharedWakelock.enabled());1555 EXPECT_FALSE(sharedWakelock.enabled());
1500 ASSERT_EQ(Application::InternalState::RunningInBackground, application->internalState());1556 ASSERT_EQ(Application::InternalState::RunningInBackground, application->internalState());
1501 EXPECT_EQ(Application::Running, application->state());1557 EXPECT_EQ(Application::Running, application->state());
1558
1559 delete surface;
1502}1560}
15031561
1504/*1562/*
@@ -1628,6 +1686,8 @@
16281686
1629 EXPECT_EQ(0, applicationManager.count());1687 EXPECT_EQ(0, applicationManager.count());
1630 EXPECT_TRUE(dir.exists());1688 EXPECT_TRUE(dir.exists());
1689
1690 delete aSurface;
1631}1691}
16321692
1633/*1693/*
@@ -1652,6 +1712,8 @@
1652 applicationManager.stopApplication(appId);1712 applicationManager.stopApplication(appId);
16531713
1654 EXPECT_EQ(1, spy.count());1714 EXPECT_EQ(1, spy.count());
1715
1716 delete surface;
1655}1717}
16561718
16571719
@@ -1899,4 +1961,6 @@
1899 surface->requestFocus();1961 surface->requestFocus();
19001962
1901 EXPECT_EQ(1, focusRequestedSpy.count());1963 EXPECT_EQ(1, focusRequestedSpy.count());
1964
1965 delete surface;
1902}1966}
19031967
=== modified file 'tests/modules/SessionManager/CMakeLists.txt'
--- tests/modules/SessionManager/CMakeLists.txt 2015-09-30 15:45:17 +0000
+++ tests/modules/SessionManager/CMakeLists.txt 2016-06-06 19:37:34 +0000
@@ -6,10 +6,14 @@
6)6)
77
8include_directories(8include_directories(
9 ${APPLICATION_API_INCLUDE_DIRS}
10 ${CMAKE_SOURCE_DIR}/src/platforms/mirserver9 ${CMAKE_SOURCE_DIR}/src/platforms/mirserver
11 ${CMAKE_SOURCE_DIR}/src/modules10 ${CMAKE_SOURCE_DIR}/src/modules
12 ${CMAKE_SOURCE_DIR}/tests/framework11 ${CMAKE_SOURCE_DIR}/tests/framework
12)
13
14include_directories(
15 SYSTEM
16 ${APPLICATION_API_INCLUDE_DIRS}
13 ${MIRSERVER_INCLUDE_DIRS}17 ${MIRSERVER_INCLUDE_DIRS}
14)18)
1519
1620
=== modified file 'tests/modules/SessionManager/session_test.cpp'
--- tests/modules/SessionManager/session_test.cpp 2016-05-24 21:32:06 +0000
+++ tests/modules/SessionManager/session_test.cpp 2016-06-06 19:37:34 +0000
@@ -62,6 +62,8 @@
6262
63 surface->drawFirstFrame();63 surface->drawFirstFrame();
64 EXPECT_EQ(Session::Running, session->state());64 EXPECT_EQ(Session::Running, session->state());
65
66 delete surface;
65}67}
6668
67TEST_F(SessionTests, AddChildSession)69TEST_F(SessionTests, AddChildSession)
@@ -220,6 +222,7 @@
220 FakeMirSurface *surface = new FakeMirSurface;222 FakeMirSurface *surface = new FakeMirSurface;
221 session->registerSurface(surface);223 session->registerSurface(surface);
222 surface->drawFirstFrame();224 surface->drawFirstFrame();
225 delete surface;
223 }226 }
224 EXPECT_EQ(Session::Running, session->state());227 EXPECT_EQ(Session::Running, session->state());
225228
@@ -251,6 +254,7 @@
251 FakeMirSurface *surface = new FakeMirSurface;254 FakeMirSurface *surface = new FakeMirSurface;
252 session->registerSurface(surface);255 session->registerSurface(surface);
253 surface->drawFirstFrame();256 surface->drawFirstFrame();
257 delete surface;
254 }258 }
255 EXPECT_EQ(Session::Running, session->state());259 EXPECT_EQ(Session::Running, session->state());
256260
@@ -296,6 +300,7 @@
296 FakeMirSurface *surface = new FakeMirSurface;300 FakeMirSurface *surface = new FakeMirSurface;
297 session->registerSurface(surface);301 session->registerSurface(surface);
298 surface->drawFirstFrame();302 surface->drawFirstFrame();
303 delete surface;
299 }304 }
300 EXPECT_EQ(Session::Running, session->state());305 EXPECT_EQ(Session::Running, session->state());
301306
302307
=== modified file 'tests/modules/SharedWakelock/CMakeLists.txt'
--- tests/modules/SharedWakelock/CMakeLists.txt 2015-09-30 15:45:17 +0000
+++ tests/modules/SharedWakelock/CMakeLists.txt 2016-06-06 19:37:34 +0000
@@ -5,6 +5,10 @@
55
6include_directories(6include_directories(
7 ${CMAKE_SOURCE_DIR}/src/modules7 ${CMAKE_SOURCE_DIR}/src/modules
8)
9
10include_directories(
11 SYSTEM
8 ${QTDBUSTEST_INCLUDE_DIRS}12 ${QTDBUSTEST_INCLUDE_DIRS}
9 ${QTDBUSMOCK_INCLUDE_DIRS}13 ${QTDBUSMOCK_INCLUDE_DIRS}
10)14)
1115
=== modified file 'tests/modules/SurfaceManager/CMakeLists.txt'
--- tests/modules/SurfaceManager/CMakeLists.txt 2016-05-24 20:13:10 +0000
+++ tests/modules/SurfaceManager/CMakeLists.txt 2016-06-06 19:37:34 +0000
@@ -9,6 +9,10 @@
9 ${CMAKE_SOURCE_DIR}/src/modules9 ${CMAKE_SOURCE_DIR}/src/modules
10 ${CMAKE_SOURCE_DIR}/src/platforms/mirserver10 ${CMAKE_SOURCE_DIR}/src/platforms/mirserver
11 ${CMAKE_SOURCE_DIR}/tests/framework11 ${CMAKE_SOURCE_DIR}/tests/framework
12)
13
14include_directories(
15 SYSTEM
12 ${MIRSERVER_INCLUDE_DIRS}16 ${MIRSERVER_INCLUDE_DIRS}
13 ${Qt5Quick_PRIVATE_INCLUDE_DIRS}17 ${Qt5Quick_PRIVATE_INCLUDE_DIRS}
14)18)

Subscribers

People subscribed via source and target branches