aboutsummaryrefslogtreecommitdiffstats
path: root/src/virtualkeyboard
diff options
context:
space:
mode:
authorSamuli Piippo <samuli.piippo@digia.com>2014-11-05 13:46:40 +0200
committerSamuli Piippo <samuli.piippo@theqtcompany.com>2014-12-04 08:32:40 +0200
commitf617b82712b21c38a80feb8020bdeaf8bf409a3c (patch)
tree7ffcb1ef9f949628ff7787ac4335b85f35f2748a /src/virtualkeyboard
parent706971597b5d13bfcc5f999aaca4f8f54d7d20f7 (diff)
Register QML files using runtime path
QT_INSTALL_QML prefix points to sysroot when cross compiling, so those paths cannot be used for the QML registration. Instead use the path available from QLibraryInfo at runtime. Change-Id: I6556478558a3dda61e432aeef5f13667b9da626d Task-number: QTRD-3400 Reviewed-by: Mitch Curtis <mitch.curtis@theqtcompany.com> Reviewed-by: Gatis Paeglis <gatis.paeglis@theqtcompany.com>
Diffstat (limited to 'src/virtualkeyboard')
-rw-r--r--src/virtualkeyboard/plugin.cpp4
-rw-r--r--src/virtualkeyboard/styles/styles.pro3
-rw-r--r--src/virtualkeyboard/styles/styles_plugin.cpp5
-rw-r--r--src/virtualkeyboard/virtualkeyboard.pro3
-rw-r--r--src/virtualkeyboard/xcbinputpanel.cpp7
5 files changed, 13 insertions, 9 deletions
diff --git a/src/virtualkeyboard/plugin.cpp b/src/virtualkeyboard/plugin.cpp
index eca1f5a2..f4e00a0e 100644
--- a/src/virtualkeyboard/plugin.cpp
+++ b/src/virtualkeyboard/plugin.cpp
@@ -52,10 +52,12 @@ QPlatformInputContext *PlatformInputContextPlugin::create(const QString &system,
Q_UNUSED(paramList);
#ifdef COMPILING_QML
Q_INIT_RESOURCE(content);
+ const QString path("qrc:///content/");
+#else
+ const QString path = "file://" + QLibraryInfo::location(QLibraryInfo::Qml2ImportsPath) + "/QtQuick/Enterprise/VirtualKeyboard/";
#endif
Q_INIT_RESOURCE(default_style);
Q_INIT_RESOURCE(retro_style);
- const QString path(QT_VIRTUALKEYBOARD_IMPORT_PATH);
qmlRegisterSingletonType<DeclarativeInputContext>("QtQuick.Enterprise.VirtualKeyboard", 1, 0, "InputContext", createInputContextModule);
qmlRegisterUncreatableType<DeclarativeInputEngine>("QtQuick.Enterprise.VirtualKeyboard", 1, 0, "InputEngine", "Cannot create input method engine");
qmlRegisterUncreatableType<DeclarativeShiftHandler>("QtQuick.Enterprise.VirtualKeyboard", 1, 0, "ShiftHandler", "Cannot create shift handler");
diff --git a/src/virtualkeyboard/styles/styles.pro b/src/virtualkeyboard/styles/styles.pro
index 76972e87..48e45d07 100644
--- a/src/virtualkeyboard/styles/styles.pro
+++ b/src/virtualkeyboard/styles/styles.pro
@@ -10,9 +10,6 @@ INSTALLS += target
qtquickcompiler {
TARGETPATH = QtQuick/Enterprise/VirtualKeyboard/Styles
DEFINES += COMPILING_QML
- DEFINES += STYLES_IMPORT_PATH=\\\"qrc:/\\\"
-} else {
- DEFINES += STYLES_IMPORT_PATH=\\\"file://$$INSTALL_PATH/\\\"
}
SOURCES += \
diff --git a/src/virtualkeyboard/styles/styles_plugin.cpp b/src/virtualkeyboard/styles/styles_plugin.cpp
index 0dc2d629..d0888121 100644
--- a/src/virtualkeyboard/styles/styles_plugin.cpp
+++ b/src/virtualkeyboard/styles/styles_plugin.cpp
@@ -19,6 +19,7 @@
#include "styles_plugin.h"
#include <qqml.h>
+#include <QtCore/QLibraryInfo>
/*!
\qmlmodule QtQuick.Enterprise.VirtualKeyboard.Styles 1.2
@@ -30,8 +31,10 @@ void StylesPlugin::registerTypes(const char *uri)
{
#ifdef COMPILING_QML
Q_INIT_RESOURCE(styles);
+ const QString path("qrc:///");
+#else
+ const QString path = "file://" + QLibraryInfo::location(QLibraryInfo::Qml2ImportsPath) + "/QtQuick/Enterprise/VirtualKeyboard/Styles/";
#endif
- const QString path(STYLES_IMPORT_PATH);
qmlRegisterType(QUrl(path + "KeyboardStyle.qml"), uri, 1, 0, "KeyboardStyle");
qmlRegisterType(QUrl(path + "KeyboardStyle.qml"), uri, 1, 1, "KeyboardStyle");
qmlRegisterType(QUrl(path + "KeyboardStyle.qml"), uri, 1, 2, "KeyboardStyle");
diff --git a/src/virtualkeyboard/virtualkeyboard.pro b/src/virtualkeyboard/virtualkeyboard.pro
index f990052a..eeb271da 100644
--- a/src/virtualkeyboard/virtualkeyboard.pro
+++ b/src/virtualkeyboard/virtualkeyboard.pro
@@ -77,9 +77,6 @@ OTHER += qtvirtualkeyboard.json
qtquickcompiler {
TARGETPATH = QtQuick/Enterprise/VirtualKeyboard
DEFINES += COMPILING_QML
- DEFINES += QT_VIRTUALKEYBOARD_IMPORT_PATH=\\\"qrc:/content/\\\"
-} else {
- DEFINES += QT_VIRTUALKEYBOARD_IMPORT_PATH=\\\"file://$$QMLPATH/\\\"
}
qml.files = \
diff --git a/src/virtualkeyboard/xcbinputpanel.cpp b/src/virtualkeyboard/xcbinputpanel.cpp
index 6658c6b0..6db6f761 100644
--- a/src/virtualkeyboard/xcbinputpanel.cpp
+++ b/src/virtualkeyboard/xcbinputpanel.cpp
@@ -28,6 +28,7 @@
#include <xcb/xfixes.h>
#include <qpa/qplatformnativeinterface.h>
#include <QtCore/private/qobject_p.h>
+#include <QtCore/QLibraryInfo>
class XcbInputPanelPrivate : public QObjectPrivate
{
@@ -107,7 +108,11 @@ void XcbInputPanel::createView()
d->view.reset(new InputView());
d->view->setFlags(Qt::Window | Qt::FramelessWindowHint | Qt::WindowStaysOnTopHint | Qt::WindowDoesNotAcceptFocus | Qt::BypassWindowManagerHint);
d->view->setColor(QColor(Qt::transparent));
- const QString virtualKeyboardImportPath(QT_VIRTUALKEYBOARD_IMPORT_PATH);
+#ifdef COMPILING_QML
+ const QString virtualKeyboardImportPath("qrc:///content/");
+#else
+ const QString virtualKeyboardImportPath = "file://" + QLibraryInfo::location(QLibraryInfo::Qml2ImportsPath) + "/QtQuick/Enterprise/VirtualKeyboard/";
+#endif
d->view->setSource(QUrl(virtualKeyboardImportPath + "InputPanel.qml"));
/* Destroy the view along with the last window in application. */
connect(qGuiApp, SIGNAL(lastWindowClosed()), SLOT(destroyView()));