diff options
Diffstat (limited to 'src/core/web_engine_settings.cpp')
-rw-r--r-- | src/core/web_engine_settings.cpp | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/core/web_engine_settings.cpp b/src/core/web_engine_settings.cpp index 76eb7f25e..6af3210bf 100644 --- a/src/core/web_engine_settings.cpp +++ b/src/core/web_engine_settings.cpp @@ -42,6 +42,7 @@ #include <QFont> #include <QTimer> +#include <QTouchDevice> static const int batchTimerTimeout = 100; @@ -68,6 +69,21 @@ private: #include "web_engine_settings.moc" +static inline bool isTouchScreenAvailable() { + static bool initialized = false; + static bool touchScreenAvailable = false; + if (!initialized) { + Q_FOREACH (const QTouchDevice *d, QTouchDevice::devices()) { + if (d->type() == QTouchDevice::TouchScreen) { + touchScreenAvailable = true; + break; + } + } + initialized = true; + } + return touchScreenAvailable; +} + WebEngineSettings::WebEngineSettings(WebEngineSettingsDelegate *delegate) : m_adapter(0) @@ -245,6 +261,7 @@ void WebEngineSettings::applySettingsToWebPreferences(WebPreferences *prefs) { // Override for now prefs->java_enabled = false; + prefs->touch_enabled = isTouchScreenAvailable(); // Attributes mapping. prefs->loads_images_automatically = testAttribute(AutoLoadImages); |