summaryrefslogtreecommitdiffstats
path: root/src/webengine/api/qquickwebenginesettings_p.h
Commit message (Collapse)AuthorAgeFilesLines
* Fix issues with qml bindings accessing non-existing adapterMichal Klocek2018-09-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | We have currently two levels of initialization for WebEngineView: the profile initialization and the adapter initialization. The adapter initialization is delayed to first navigation request to pick the right initial site instance and avoid creating dummy/blank WebContents, which in turn would start unnecessary render process. Profile initialization is delayed to make sure we avoid unnecessary default profile creations. Created profiles use filestorage. Unfortunately qml will call QQuickItem::componentComplete() only when the root element is completed and the bindings can be already in use by that time. Profile initialization has to take place before adapter initialization. Construct adapter together with WebEngineView, but create and initialize profile before adapter initialization. Go through WebEngineView and fix emitting signals based on adapter initialization. Most of the signals are emitted on initializationFinished(). Task-number: QTBUG-70248 Change-Id: I2acd8bff761c692a360733cbf537de53e1295695 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Add DNS prefetchingAllan Sandfeld Jensen2018-08-011-0/+4
| | | | | | | | | | | Turns out we did no have DNS prefetching. It requires an extra component. The same component can also do pre-connect, but we do not enable that, as it requires a predictive browsing backend. [ChangeLog][Settings] DnsPrefetchEnabled added, but disabled by default. Change-Id: Ieb036435b9f1a72a7be302e38e89e0c347c7176b Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* Fine tune configure and clean up header includesMichal Klocek2018-06-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | Previously configure was generating two config headers qtwebengine-config.h and qtwebengine-config_p.h, however those headers were never installed or included as dependency in Makefiles. Moreover, due to the name clash all features were included into qt_lib_webengine_*.pri which is QtWebEngine QML module. Move configure to core so all features belong now to qt_lib_webenginecore*.pri. Fix global includes to include qtwebenginecore-config*.h. Drop all DEFINES and use QT_CONFIG instead. Cleanup all evil looking includes in headers for webengine and webenginewidgets. Change-Id: Iddbc8bf4487d9a5f0c19a71a9569535083507756 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Fix javascriptCanPaste NOTIFY signalJüri Valdmann2018-02-131-1/+1
| | | | | Change-Id: Ic3f1e11f42f26e7800524dd88f707200ef3b7705 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Expose JavascriptCanPaste attributeKai Koehne2018-02-021-0/+4
| | | | | | | | | | | | Expose an attribute to enable the execCommand("paste") functionality, which is by default disabled due to security concerns. [ChangeLog][General] Added JavaScriptCanPaste attribute that enables JavaScript 'execCommand("paste")'. Task-number: QTBUG-64056 Change-Id: I1a414021e020473dd15946fff91fb103d871e961 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Expose an option to hide internal IP addresses from WebRTCAllan Sandfeld Jensen2017-11-291-0/+4
| | | | | | Task-number: QTBUG-57505 Change-Id: I8d8f906311ce94b2d9df67cb4479b70c8961c3a6 Reviewed-by: Viktor Engelmann <viktor.engelmann@qt.io>
* Add setting to inhibit autoplay until user interactionAllan Sandfeld Jensen2017-11-021-0/+4
| | | | | | | | | | | | Pass through the PlaybackRequiresUserGesture Chromium setting which Chrome enables by default on Android. Task-number: QTBUG-60799 Change-Id: I105fc7d558f9b67417a0047ecb1efe7677817ea4 Reviewed-by: Florian Bruhin <qt-project.org@the-compiler.org> Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu> Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Fix version numbers for UnknownUrlSchemePolicyViktor Engelmann2017-09-261-2/+2
| | | | | | | | | | | | As 49c0ce8403e5caeb864f66553f122c68a7c975fb missed feature freeze for Qt 5.10, the version numbers must be corrected to Qt 5.11, REVISION 6 etc. Also the auto test was moved into its own source file, so we can blacklist it on Boot2Qt. Task-number: QTBUG-58627 Change-Id: I2381e2433ba1b903a62f59a6db58e5f25af77336 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Merge remote-tracking branch 'origin/5.10' into devLiang Qi2017-09-221-4/+4
|\ | | | | | | | | | | | | | | Conflicts: src/webengine/api/qquickwebenginesettings_p.h src/webenginewidgets/doc/src/qwebenginesettings_lgpl.qdoc Change-Id: I9cac7059557084a575af02782af886f55a8d404f
| * Replace Setting HideScrollbars by ShowScrollBarsViktor Engelmann2017-09-201-4/+4
| | | | | | | | | | | | | | | | | | Positive options are more intuitive and make for a better API. Task-number: QTBUG-63179 Change-Id: I632ee768dba52554e7d37d9da84661a1d01f1f37 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
* | Add Setting to allow passing unknown URL schemes to QDesktopServicesViktor Engelmann2017-09-181-0/+12
|/ | | | | | | | | | | | | | | | | | A new enum UnknownUrlSchemePolicy was added to WebEngineSettings, QWebEngineSettings and QQuickWebEngineSettings. WebContentsDelegate now has a new attribute of that type, which can be read and written through the public APIs Q(Quick)WebEngineSettings::unknownUrlSchemeNavigationPolicy and Q(Quick)WebEngineSettings::setUnknownUrlSchemeNavigationPolicy. This way, one can control, whether URLs with unknown schemes are passed to QDesktopServices. WebContentsAdapterClient::navigationRequested is called on these requests, so this allows more fine-grained control over the schemes and origins, that are allowed. Task-number: QTBUG-58627 Change-Id: Ie81d9503456d63ea1ed5606483254acf437cd8f7 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Add HideScrollbars settingPeter Varga2017-08-021-0/+4
| | | | | | | [ChangeLog][Settings] Added setting to hide scrollbars. Change-Id: I17695bb54a460621358345d303302b93eb342696 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Handle ViewHostMsg_Focus message from chromiumViktor Engelmann2017-05-241-0/+4
| | | | | | | | | | | | | | | | | | | | | | Calling the method window.focus() in javascript causes chromium to send a ViewHostMsg_Focus message, which is received by RenderViewHost, which then calls RenderViewHost::OnFocus. This calls WebContentsDelegate::ActivateContents, which does nothing in the default implementation. We now override this method in WebContentsDelegateQt::ActivateContents and call Focus() on the WebContents object IF the new WebEngineSettings value AllowWindowActivationFromJavaScript is true (by default, it is false). This in turn calls QWebEnginePagePrivate::focusContainer. The WebEnginePage now calls QWidget::activateWindow() in addition to QWidget::setFocus, to make sure the window is also activated (which it might not be, if multiple windows are open). For the QML side, a new boolean Property allowWindowActivationFromJavaScript was added. Task-number: QTBUG-58800 Change-Id: Iabf5d4d15236c77838a3886de81e9dafcaf49f5d Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* QML: Add FINAL, CONST to Q_PROPERTY declarationsViktor Engelmann2016-12-191-22/+22
| | | | | | | | | Add FINAL and CONST declarations for every Q_PROPERTY where it is appropriate. This speeds up the execution in QML. Task-number: QTBUG-55912 Change-Id: I67d2223d87aee6bdc639fe6087e3364201f2b1c6 Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* Add AllowGeolocationOnInsecureOrigins settingAllan Sandfeld Jensen2016-12-011-0/+4
| | | | | | | | | | | This provides a way to restore earlier QtWebEngine behavior where geolocation was possible from all origins. [ChangeLog][Settings] Added setting to again allow insecure origins to request geolocation. Change-Id: I043fb7a36a56fa5acc1740d52a50b9d7ff49a2c5 Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* Expose allow-running-insecure-contents as a settingAllan Sandfeld Jensen2016-09-221-0/+4
| | | | | | | | | | | | | AllowRunningInsecureContent was added as a setting in core to enable parsing a chromium command-line argument. This patch forwards the setting to our API layers. [ChangeLog][Settings] Added setting to allow secure content to run insecure content. Task-number: QTBUG-54902 Change-Id: I4e005be1a29905ccf931fabe9ccb308b7d947c62 Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* Add setting to enable printing of CSS backgroundsMichael Bruning2016-08-281-0/+4
| | | | | | | | | | | [ChangeLog][Printing] Printing will now include the CSS background of the printed elements by default. This restores the default behavior from Qt WebKit. It can be controlled via the PrintElementBackgrounds web setting. Task-number: QTBUG-54918 Change-Id: I37c37456dfec6368f22c36c515ac3cad1bbf8006 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Add focusOnNavigationEnabled settingAlexandru Croitor2016-08-091-0/+4
| | | | | | | | | | | | | | | | 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>
* Fix revision of defaultTextEncoding[Changed]Kai Koehne2016-05-131-2/+2
| | | | | | | Both property and signal actually where already part of QtWebEngine 1.0 Change-Id: I9534f35199a3c70d78f9f42e3ea6b9f3b462d6b6 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Remove WebAudio settingsAllan Sandfeld Jensen2016-05-021-4/+0
| | | | | | | | | In Chromium 51 WebAudio will be always on, and can not be runtime enabled or disabled. We should avoid introducing a setting we can not even support in the next version. Change-Id: I42f7d4f3f7f952f38361ef73dfe7b318ea1a4cf5 Reviewed-by: Michael Brüning <michael.bruning@theqtcompany.com>
* Add settings for FaviconManager's icon download modesPeter Varga2016-03-251-2/+10
| | | | | | Change-Id: I8e4b11089de29623ed39ec6b13fe30be734baa3e Task-number: QTBUG-51179 Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
* Add back revisions for QQuickWebEngineSettingsPeter Varga2016-03-031-17/+12
| | | | | | Change-Id: I5f53a8563c47c4a37c77932c5d6f7d084b324c4f Task-number: QTBUG-40043 Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
* Doc: change comment notation to suppress QDoc warningsLeena Miettinen2016-02-051-4/+5
| | | | | | | | QDoc fails to parse the token /* REVISION 2 */ in property declarations, but ignores // FIXME: Change-Id: I0811579a4e33db5f3c90ccc421b6bb7f63605304 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com>
* Unify license header usage.Jani Heikkinen2016-02-011-11/+14
| | | | | | | | | Update files using old header.LGPL3 to use header.LGPL Update files using old header.FLD to use new header.FDL Update files using old header.BSD to use new header.BSD Change-Id: I36a67aaa8c3ca6c7946308defc9c03c3571a7d23 Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
* Add WebGL, WebAudio and Accelerated2dCanvas settingsAllan Sandfeld Jensen2015-12-021-0/+12
| | | | | | | | | | | These settings were in QtWebKit and are easily added in QtWebEngine. Without the preferences the same could be achieved using command line flags. The defaults are calculated to match what is set in RenderViewHostImpl. Change-Id: I0c80507574ebc3898fc409e47194246fb00abc75 Reviewed-by: Michael Brüning <michael.bruning@theqtcompany.com>
* Merge branch '5.6' into devAllan Sandfeld Jensen2015-11-201-2/+4
|\ | | | | | | Change-Id: I05fe27b8321944cf68cc96dfa9dfcaeb54c8c8cd
| * Remove revisioning from WebEngineSettingsSzabolcs David2015-10-231-2/+4
| | | | | | | | | | | | | | | | | | | | We can't use revisions in uncreatable types because QTBUG-40043 is affecting our API. Change-Id: Id9bf18fe8cfda590079ed72d7ca8b1c298aff90e Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu> Reviewed-by: Michael Brüning <michael.bruning@theqtcompany.com> Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
* | Add MediaCaptureEnabled setting to the web engine settings.Michael Bruning2015-11-161-0/+6
|/ | | | | | | | | Defaults to off. Change-Id: I416116ce07c8b7f5b24ad6e329390358406eadca Task-number: QTBUG-48801 Reviewed-by: Szabolcs David <davidsz@inf.u-szeged.hu> Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* Widgets: Add fullscreen supportSzabolcs David2015-08-261-4/+4
| | | | | | Change-Id: Ibf1697d2bb3b3af5e7d71149305c5acffba43f0f Reviewed-by: Szabolcs David <davidsz@inf.u-szeged.hu> Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* Merge branch '5.5' into 5.6Allan Sandfeld Jensen2015-08-181-0/+11
|\ | | | | | | Change-Id: I9977663123560a22f493b8c02d02de8897b38666
| * Add private header warningKai Koehne2015-07-241-0/+11
| | | | | | | | | | Change-Id: I95ae03b34631f166d2eed68e20282eb624ff408a Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | Export fullscreen support setting to QML APIAllan Sandfeld Jensen2015-07-171-0/+4
| | | | | | | | | | | | | | | | Let applications tell QtWebEngine whether they support the fullscreen API or not. Change-Id: I97681cf1c68a9d7a3b8bb7dcca861ec0b0a79ed6 Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
* | Add support for Shockwave Flash plugin.Zeno Albisser2015-03-301-0/+4
|/ | | | | | | | | | We will try to load the pepper flash plugin from the places where it is most commonly located. Alternatively the location and flash version can be passed on the command line. Change-Id: I41367586462157e722661aab3630357d6caf6a81 Reviewed-by: Michael Brüning <michael.bruning@theqtcompany.com>
* Add namespace to internal QtWebEngine APIAllan Sandfeld Jensen2015-03-021-1/+3
| | | | | | | | Adds the QtWebEngineCore namespace to all internal core API. This ensures we don't export any internal symbols in the global namespace. Change-Id: I26af888ea7c6c4c4d0f04c24a377c1a9d3c92751 Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
* Update copyright headersJani Heikkinen2015-02-161-7/+7
| | | | | | | | | Qt copyrights are now in The Qt Company, so we could update the source code headers accordingly. In the same go we should also fix the links to point to qt.io. Change-Id: Ieb6bac7a1be5c25eb7cb917495b58b6a870ca6d4 Reviewed-by: Pierre Rossi <pierre.rossi@theqtcompany.com>
* Add settings to WebEngineProfilesAllan Sandfeld Jensen2015-02-051-9/+7
| | | | | | | | | This patch adds settings to profiles so common settings might be shared among all pages in a profile. The former global settings are now replaced by the settings of the default profile. Change-Id: I544420e07beeb52ef29b2360bc7929402650cd07 Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
* Use Q_GLOBAL_STATIC instead of local statics for singletonsAndras Becsi2014-11-201-0/+2
| | | | | | | This patch prevents leaking these objects on shutdown. Change-Id: Ic4a628e0d4dc0b31716f885c1e904b6062cf3ef0 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Remove arguments from QQuickWebEngineSettings signalsJocelyn Turcotte2014-11-181-12/+12
| | | | | | | | | The convention in the rest of the QtQuick API is to not pass the new value of a changed signal as an argument since the signal handler can easily access the property itself. Change-Id: I0dbf70379f631135c5ad973b46a9f3936d4be115 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Add setting ErrorPageEnabledAndras Becsi2014-10-141-0/+4
| | | | | | | | | This is required so that embedders can implement custom error pages, and is also needed for tests, where error-page loading has side-effects on subsequent page loads. Change-Id: I5ae276a58864a2fa9d7b608bea3340b482a92f4e Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* Settings for Qt quickPierre Rossi2014-09-021-0/+115
Expose settings in experimental for now. Simply use the global/per-view mechanism as a group level in between seems like overkill. Change-Id: I7610e9c7765ccb41674702acdd24a52b87716da8 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>