on xenial help sign in
If not running in Mir load the "fake" application manager
a566d71Albert Astals
include/paths.h.in+10
@@ -57,6 +57,16 @@ inline QStringList overrideImportPaths() {
57 return paths;
57 return paths;
58}
58}
59
59
60+inline QStringList nonMirImportPaths() {
61+ QStringList paths;
62+ if (isRunningInstalled()) {
63+ paths << QString("@CMAKE_INSTALL_PREFIX@/@SHELL_INSTALL_QML@/nonmirplugins");
64+ } else {
65+ paths << QString("@CMAKE_BINARY_DIR@/nonmirplugins");
66+ }
67+ return paths;
68+}
69+
60inline QStringList fallbackImportPaths() {
70inline QStringList fallbackImportPaths() {
61 QStringList paths;
71 QStringList paths;
62 if (isRunningInstalled()) {
72 if (isRunningInstalled()) {
src/main.cpp+3
@@ -117,6 +117,9 @@ int startShell(int argc, const char** argv, void* server)
117
117
118 QUrl source(::qmlDirectory()+"Shell.qml");
118 QUrl source(::qmlDirectory()+"Shell.qml");
119 prependImportPaths(view->engine(), ::overrideImportPaths());
119 prependImportPaths(view->engine(), ::overrideImportPaths());
120+ if (!isUbuntuMirServer) {
121+ prependImportPaths(view->engine(), ::nonMirImportPaths());
122+ }
120 appendImportPaths(view->engine(), ::fallbackImportPaths());
123 appendImportPaths(view->engine(), ::fallbackImportPaths());
121
124
122 view->setSource(source);
125 view->setSource(source);
tests/mocks/Unity/Application/CMakeLists.txt+14
@@ -35,3 +35,17 @@ install(TARGETS FakeUnityApplicationQml
35install(FILES qmldir InputFilterArea.qml OSKController.qml
35install(FILES qmldir InputFilterArea.qml OSKController.qml
36 DESTINATION ${SHELL_INSTALL_QML}/mocks/Unity/Application
36 DESTINATION ${SHELL_INSTALL_QML}/mocks/Unity/Application
37 )
37 )
38+
39+# Duplicate the mock to nonmirplugins
40+# In shadow builds we just link it, in real installs we also install it to the other path
41+add_custom_target(OSKControllerQmlFile2 ALL
42+ COMMAND mkdir -p ${CMAKE_BINARY_DIR}/nonmirplugins/Unity && rm -f ${CMAKE_BINARY_DIR}/nonmirplugins/Unity/Application && ln -s ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_BINARY_DIR}/nonmirplugins/Unity
43+ DEPENDS qmldir
44+)
45+install(TARGETS FakeUnityApplicationQml
46+ DESTINATION ${SHELL_INSTALL_QML}/nonmirplugins/Unity/Application
47+ )
48+
49+install(FILES qmldir InputFilterArea.qml OSKController.qml
50+ DESTINATION ${SHELL_INSTALL_QML}/nonmirplugins/Unity/Application
51+ )