Changeset View
Changeset View
Standalone View
Standalone View
plugins/dockers/touchdocker/TouchDockerDock.cpp
Show First 20 Lines • Show All 46 Lines • ▼ Show 20 Line(s) | |||||
47 | #include <kis_action.h> | 47 | #include <kis_action.h> | ||
48 | #include <kis_config.h> | 48 | #include <kis_config.h> | ||
49 | 49 | | |||
50 | #include <Theme.h> | 50 | #include <Theme.h> | ||
51 | #include <Settings.h> | 51 | #include <Settings.h> | ||
52 | #include <DocumentManager.h> | 52 | #include <DocumentManager.h> | ||
53 | #include <KisSketchView.h> | 53 | #include <KisSketchView.h> | ||
54 | 54 | | |||
55 | #include <QVersionNumber> | ||||
56 | | ||||
57 | namespace | ||||
58 | { | ||||
59 | | ||||
60 | bool shouldSetAcceptTouchEvents() | ||||
61 | { | ||||
62 | // See https://bugreports.qt.io/browse/QTBUG-66718 | ||||
63 | static QVersionNumber qtVersion = QVersionNumber::fromString(qVersion()); | ||||
64 | static bool retval = qtVersion > QVersionNumber(5, 9, 3) && qtVersion.normalized() != QVersionNumber(5, 10); | ||||
65 | return retval; | ||||
66 | } | ||||
67 | | ||||
68 | } // namespace | ||||
69 | | ||||
55 | class TouchDockerDock::Private | 70 | class TouchDockerDock::Private | ||
56 | { | 71 | { | ||
57 | public: | 72 | public: | ||
58 | Private() | 73 | Private() | ||
59 | { | 74 | { | ||
60 | } | 75 | } | ||
61 | 76 | | |||
62 | TouchDockerDock *q; | 77 | TouchDockerDock *q; | ||
Show All 31 Lines | 108 | if (i < mapping.size()) { | |||
94 | d->buttonMapping[QString("button%1").arg(i + 1)] = mapping[i]; | 109 | d->buttonMapping[QString("button%1").arg(i + 1)] = mapping[i]; | ||
95 | } | 110 | } | ||
96 | else if (i < defaultMapping.size()) { | 111 | else if (i < defaultMapping.size()) { | ||
97 | d->buttonMapping[QString("button%1").arg(i + 1)] = defaultMapping[i]; | 112 | d->buttonMapping[QString("button%1").arg(i + 1)] = defaultMapping[i]; | ||
98 | } | 113 | } | ||
99 | } | 114 | } | ||
100 | 115 | | |||
101 | m_quickWidget = new QQuickWidget(this); | 116 | m_quickWidget = new QQuickWidget(this); | ||
117 | if (shouldSetAcceptTouchEvents()) { | ||||
118 | m_quickWidget->setAttribute(Qt::WA_AcceptTouchEvents); | ||||
119 | } | ||||
102 | setWidget(m_quickWidget); | 120 | setWidget(m_quickWidget); | ||
103 | setEnabled(true); | 121 | setEnabled(true); | ||
104 | m_quickWidget->engine()->rootContext()->setContextProperty("mainWindow", this); | 122 | m_quickWidget->engine()->rootContext()->setContextProperty("mainWindow", this); | ||
105 | 123 | | |||
106 | m_quickWidget->engine()->addImportPath(KoResourcePaths::getApplicationRoot() + "/lib/qml/"); | 124 | m_quickWidget->engine()->addImportPath(KoResourcePaths::getApplicationRoot() + "/lib/qml/"); | ||
107 | m_quickWidget->engine()->addImportPath(KoResourcePaths::getApplicationRoot() + "/lib64/qml/"); | 125 | m_quickWidget->engine()->addImportPath(KoResourcePaths::getApplicationRoot() + "/lib64/qml/"); | ||
108 | 126 | | |||
109 | m_quickWidget->engine()->addPluginPath(KoResourcePaths::getApplicationRoot() + "/lib/qml/"); | 127 | m_quickWidget->engine()->addPluginPath(KoResourcePaths::getApplicationRoot() + "/lib/qml/"); | ||
▲ Show 20 Lines • Show All 194 Lines • ▼ Show 20 Line(s) | |||||
304 | } | 322 | } | ||
305 | 323 | | |||
306 | KoDialog *TouchDockerDock::createDialog(const QString qml) | 324 | KoDialog *TouchDockerDock::createDialog(const QString qml) | ||
307 | { | 325 | { | ||
308 | KoDialog *dlg = new KoDialog(this); | 326 | KoDialog *dlg = new KoDialog(this); | ||
309 | dlg->setButtons(KoDialog::None); | 327 | dlg->setButtons(KoDialog::None); | ||
310 | 328 | | |||
311 | QQuickWidget *quickWidget = new QQuickWidget(this); | 329 | QQuickWidget *quickWidget = new QQuickWidget(this); | ||
330 | if (shouldSetAcceptTouchEvents()) { | ||||
331 | quickWidget->setAttribute(Qt::WA_AcceptTouchEvents); | ||||
332 | } | ||||
312 | dlg->setMainWidget(quickWidget); | 333 | dlg->setMainWidget(quickWidget); | ||
313 | 334 | | |||
314 | setEnabled(true); | 335 | setEnabled(true); | ||
315 | quickWidget->engine()->rootContext()->setContextProperty("mainWindow", this); | 336 | quickWidget->engine()->rootContext()->setContextProperty("mainWindow", this); | ||
316 | 337 | | |||
317 | quickWidget->engine()->addImportPath(KoResourcePaths::getApplicationRoot() + "/lib/qml/"); | 338 | quickWidget->engine()->addImportPath(KoResourcePaths::getApplicationRoot() + "/lib/qml/"); | ||
318 | quickWidget->engine()->addImportPath(KoResourcePaths::getApplicationRoot() + "/lib64/qml/"); | 339 | quickWidget->engine()->addImportPath(KoResourcePaths::getApplicationRoot() + "/lib64/qml/"); | ||
319 | 340 | | |||
▲ Show 20 Lines • Show All 63 Lines • Show Last 20 Lines |