summaryrefslogtreecommitdiffstats
path: root/src/webengine/api/qquickwebenginesettings.cpp
diff options
context:
space:
mode:
authorAlexandru Croitor <alexandru.croitor@qt.io>2016-06-01 17:54:49 +0200
committerAlexandru Croitor <alexandru.croitor@qt.io>2016-08-09 06:29:08 +0000
commit6534b09073791398bad99863821740e986915bff (patch)
tree1d2476d387e75d691d112f71f74f9094b25cbd8a /src/webengine/api/qquickwebenginesettings.cpp
parent521c3f6c47e3e7e284eaaca40c1820fbcb1b56e0 (diff)
Add focusOnNavigationEnabled setting
The focusOnNavigationEnabled setting allows changing the behavior of whether a WebEngine view (widget or quick) will automatically get focus, whenever a navigation action happens (load, reload, previous history entry, etc). The default behavior before this patch was to always grab the focus. [ChangeLog][QtWebEngine][General] Add focusOnNavigationEnabled setting which allows controlling whether a web view will receive focus on a navigation request. Previously the view always received the focus. Task-number: QTBUG-52999 Change-Id: I6d30d973a41b53011131f21dcecbf6ec4d652759 Reviewed-by: Kai Koehne <kai.koehne@qt.io>
Diffstat (limited to 'src/webengine/api/qquickwebenginesettings.cpp')
-rw-r--r--src/webengine/api/qquickwebenginesettings.cpp22
1 files changed, 22 insertions, 0 deletions
diff --git a/src/webengine/api/qquickwebenginesettings.cpp b/src/webengine/api/qquickwebenginesettings.cpp
index 3fea83166..a69db0554 100644
--- a/src/webengine/api/qquickwebenginesettings.cpp
+++ b/src/webengine/api/qquickwebenginesettings.cpp
@@ -304,6 +304,20 @@ bool QQuickWebEngineSettings::touchIconsEnabled() const
}
/*!
+ \qmlproperty bool WebEngineSettings::focusOnNavigationEnabled
+ \since QtWebEngine 1.4
+
+ Focus is given to the view whenever a navigation operation occurs
+ (load, stop, reload, reload and bypass cache, forward, backward, set content, and so on).
+
+ Enabled by default.
+*/
+bool QQuickWebEngineSettings::focusOnNavigationEnabled() const
+{
+ return d_ptr->testAttribute(WebEngineSettings::FocusOnNavigationEnabled);
+}
+
+/*!
\qmlproperty QString WebEngineSettings::defaultTextEncoding
\since QtWebEngine 1.2
@@ -472,6 +486,14 @@ void QQuickWebEngineSettings::setDefaultTextEncoding(QString encoding)
Q_EMIT defaultTextEncodingChanged();
}
+void QQuickWebEngineSettings::setFocusOnNavigationEnabled(bool on)
+{
+ bool wasOn = d_ptr->testAttribute(WebEngineSettings::FocusOnNavigationEnabled);
+ d_ptr->setAttribute(WebEngineSettings::FocusOnNavigationEnabled, on);
+ if (wasOn != on)
+ Q_EMIT focusOnNavigationEnabledChanged();
+}
+
void QQuickWebEngineSettings::setParentSettings(QQuickWebEngineSettings *parentSettings)
{
d_ptr->setParentSettings(parentSettings->d_ptr.data());