summaryrefslogtreecommitdiff
path: root/src/webengine/api/qquickwebengineview.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Add a backgroundColor propertyJocelyn Turcotte2015-07-141-0/+34
| | | | | | | | | | | | | | | | | This also allows setting a transparent color to see through the web view's body if its background color isn't specified. The color is initially held by the top API view and is pulled by the WebContentsAdapter in order to set it on the RenderView. Since both blink and our local compositors (in the QOpenGLWidget case) need to know about this color, RWHVQt takes care of pushing it to both. The former through an IPC message and the latter directly on the RWHVQtDelegate. Task-number: QTBUG-41960 Change-Id: Ie13317b2d087f5612ad9c5fb0e05ca3e91aec9af Reviewed-by: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com> Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
* make copy web action available for canvasesJoerg Bornemann2015-07-141-2/+7
| | | | | | | | We need to take into account that canvases don't have a valid media URL. Task-number: QTBUG-47187 Change-Id: I01e1097c74df623a7d28189b6ab25fdc27c5e766 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com>
* Implement missing WebActions in QML APIAllan Sandfeld Jensen2015-07-101-6/+152
| | | | | | | | Implements the remaining WebActions from the widgets API in the QML API, so the available actions matches. Change-Id: I60dfd4a574b80cdd82b8891abfb27a8bfb1b88ec Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* Add WebAction to QML apiAllan Sandfeld Jensen2015-07-061-1/+47
| | | | | | | | | | Adds WebActions matching QWebEnginePage to QQuickWebEngineView, this makes it possible to support copy/paste on OS X, and makes it possible to do rich text copy to clipboard on all platforms. Change-Id: If43c1b2e8ae0496423f830cfe6b86e0fa1b8126e Task-number: QTBUG-44289 Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
* Merge remote-tracking branch 'origin/5.5' into devLiang Qi2015-06-291-0/+9
|\ | | | | | | | | | | | | | | Conflicts: .qmake.conf src/webenginewidgets/api/qwebenginepage.cpp Change-Id: Idb33c92bd53fab76eee8fedb542dbf5e4a10f9e6
| * WebEngineView: add a doc entry for settings.Pierre Rossi2015-06-121-0/+9
| | | | | | | | | | | | | | Appears to be an oversight. The settings class itself is documented. Change-Id: Id768a61957c6cd77a5dd15698ce77754399d9199 Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
* | QQuickWebEngineView: add activeFocusOnPress propertyPierre Rossi2015-06-031-0/+26
| | | | | | | | | | | | | | | | | | | | This allows to use a WebEngineView to make a UI element that should not get focus, which can be useful inthe case of hybrid UIs. [ChangeLog][QtWebEngineQML][QQuickWebEngineView] Add activeFocusOnPress Change-Id: I0666f81badd135db0049e0dd7b0fc30d0765b1c9 Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
* | Make QQuick contextmenu actions behave like widget counterpartsAllan Sandfeld Jensen2015-05-271-3/+6
| | | | | | | | | | | | | | | | | | Updates a two of the context menu actions so they behave like the updated actions in qtwebenginewidgets. Also improves the default label of OpenInThisWindow, since by default there are no other windows. Change-Id: Iac0dc23e8f31598296cba87f93503cefd926983f Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
* | Honor the AcceptsInputMethod flag on the WebViewPierre Rossi2015-05-151-1/+1
| | | | | | | | | | | | | | This can come in handy to make an HTML based input method keyboard Change-Id: Ieaf49a676262f40b0f250dc67e2f1cd0eeb08d82 Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
* | Merge remote-tracking branch 'origin/5.5' into devAndras Becsi2015-05-111-0/+3
|\ \ | |/ | | | | Change-Id: I122ca8d3438333c6b41f751c47b1ce1f9a7066b9
| * Quick: Share profiles between application windowsSzabolcs David2015-05-071-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The applications should not create new WebEngineProfiles for each window, because the WebEngineView can not adopt content from a different profile when the target of the NewViewRequest is a new window (SHIFT+click) or a dialog. This also adds a notifier signal to the profile property in order to avoid "non-NOTIFYable" warnings. Change-Id: I235789f9bfa1a216f99592204e50266242d0ef1c Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com>
* | Merge remote-tracking branch 'origin/5.5' into devLiang Qi2015-04-081-1/+8
|\ \ | |/ | | | | Change-Id: I7b0dae978357c6f48826ad8e09a8cb8477d1901d
| * Revive ReloadAndBypassCachePierre Rossi2015-04-071-0/+8
| | | | | | | | | | | | | | | | | | Appears to be an oversight for widgets, as the API was there, but just wasn't wired. Also add it for QQuickWebEngineView while we're at it. Change-Id: I07d6e356cbaf22b79f3fc5a82df78c6821993e8d Reviewed-by: Zeno Albisser <zeno.albisser@digia.com>
| * Quick: Document javaScriptConsoleMessageSzabolcs David2015-03-241-1/+0
| | | | | | | | | | Change-Id: Iaf5a9c7915cdce36fe3219dd686059973d1a6251 Reviewed-by: Michael Brüning <michael.bruning@theqtcompany.com>
* | Merge remote-tracking branch 'origin/5.5' into devPierre Rossi2015-03-221-6/+0
|\ \ | |/ | | | | Change-Id: Icc27b58763c9aeac9f940fa17d3381fe1f4659ac
| * Introduce mock UIDelegates for testing.Pierre Rossi2015-03-201-6/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | Switch JS dialogs test to using this over the testsupport plugin. This is a less intrusive approach that lives as self contained qml modules within the test infrastructure. As an added benefit, it covers the UI delegation logic from end to end, including what happens in ui_delegates_manager.cpp. Change-Id: I1cc0afaf5514d53e1f3b4b0682379dd2d8d8a913 Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
* | Merge remote-tracking branch 'origin/5.5' into devLiang Qi2015-03-171-13/+15
|\ \ | |/ | | | | Change-Id: If633943dec55dd13b3912f61ce5dbc2402ae97c9
| * Support middle click navigationSzabolcs David2015-03-161-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | When the user does a middle click on a link which originally opens a new tab (target="_blank"), the newly created RenderView is hidden, so the new tab has no visible content. We need to unhide it explicitly. This also adds background tab support for the Quick example browsers and fixes the profile mismatching warning in the case when we adopt a new tab without WebContents. Change-Id: Ia3c2e752a4784d32133cee0ff278c2849b151582 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com>
| * Move featurePermissionRequested to the public APISzabolcs David2015-03-161-12/+14
| | | | | | | | | | | | Change-Id: Ifc0baac73daad9146eb8f2878e49257d25310555 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com> Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
* | Merge remote-tracking branch 'origin/5.5' into devAllan Sandfeld Jensen2015-03-161-0/+14
|\ \ | |/ | | | | | | | | | | Conflicts: src/webengine/ui_delegates_manager.h Change-Id: I989280b6008fbc4844ed86d6d16f7e7aa6ba8db9
| * Support HTML5 form validation featurePeter Varga2015-03-131-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | HTML5 provides built-in form validation that is supported by chromium. The form validation messages should be shown by the browser therefore new MessageBubble UI element has been added to Quick and Widget implementations. This patch implements chromium's form validation events and shows the messages in a MessageBubble. Change-Id: I0c8f4f102823117e2bfb16ff8a4c503635491939 Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
* | Merge remote-tracking branch 'origin/5.5' into devAllan Sandfeld Jensen2015-03-131-14/+89
|\ \ | |/ | | | | | | | | | | | | | | | | Conflicts: src/webengine/api/qquickwebengineview_p_p.h src/webengine/ui_delegates_manager.cpp src/webengine/ui_delegates_manager.h src/webenginewidgets/api/qwebenginepage_p.h Change-Id: I8052de4d3b2e68a950832226f6f99e2aafca5505
| * Add tst_javaScriptDialogs QML testv5.5.0-alpha1Szabolcs David2015-03-111-0/+6
| | | | | | | | | | | | | | | | Test alert, confirm and prompt dialogs via test support API. Change-Id: I9057a887491ac68e86ccd87181d4091323f6ee6f Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu> Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
| * Promote fullscreen API to 5.5 publicSzabolcs David2015-03-091-9/+36
| | | | | | | | | | | | | | | | | | Introduce a new FullScreenRequest object as the parameter of the fullScreenRequested signal and expose the isFullScreen property as read-only. This makes the API harder to misuse. Change-Id: Ibb072ec93843e6df265bd930e8721d244bc2f4bc Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
| * Add testsupport QML API and error page signalsPeter Varga2015-03-061-2/+41
| | | | | | | | | | | | | | | | | | | | | | The testsupport API is used for test those features that are not planned to be accessible via the public API. For example, signals of the chromium's error page should not be visible for the develepor but it is important to test whether the error page is loaded properly. Change-Id: Ie5b3265a207d05649cabd624a001a6ffe2e45971 Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
| * Move findText to the public APISzabolcs David2015-03-041-1/+1
| | | | | | | | | | | | | | | | | | - Add a default 0 value for the FindFlags parameter - Update tests and examples - Import documentation from the Widgets side Change-Id: Ifb627a81247028416bc7a31068676ea871f6dcf4 Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
| * Quick: Fix handling of multiple certificate errors per requestPaulo Pinheiro2015-03-041-2/+4
| | | | | | | | | | | | | | | | | | | | | | This patch enables Quick API to handle multiple certificate errors per requests and update the example projects. Chromium 40 branch raise an certificate error for every resource loaded in a request (.js, .css, .html) instead of only one (previous behavior), so requests with more than one certificate error were automatically rejected. Change-Id: Ibaa3027cd6e7f22b5dc51dcd52f76ccf5ea162d3 Reviewed-by: Pierre Rossi <pierre.rossi@theqtcompany.com>
| * Add namespace to internal QtWebEngine APIAllan Sandfeld Jensen2015-03-021-0/+1
| | | | | | | | | | | | | | | | 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>
* | Refactor FilePickerControllerAdam Kallai2015-03-051-2/+3
|/ | | | | | | | | Move FilePickerController classes to the QtWebEngine core to providing common functionality of files selecetion for WebEngine and WebEngineWidgtes. Change-Id: I6ab407095460ef5b63b454f7d62b98215383fc21 Reviewed-by: Pierre Rossi <pierre.rossi@theqtcompany.com>
* QtQuick API for userScriptsPierre Rossi2015-02-221-0/+50
| | | | | | | | QObject-based, allowing the same things as the Widgets API in a declarative fashion. Change-Id: I9c9819b691b2098ec47e0536d47ccd2a950126c2 Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
* WebChannel: don't mess with the navigator objectPierre Rossi2015-02-191-1/+1
| | | | | | | | | | | | | The navigator object is actually exposed later on from WebCore using a different mechanism, so the V8 extension approach won't work with it. Better take the chrome extensions approach and expose our own. This should "un-break" the part of the web that was broken by eee482929a. Change-Id: I991be2e12bb9ebcf60ace02721497c3fcd923c7f Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com> Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
* Move navigationHistory out of experimentalPierre Rossi2015-02-181-16/+10
| | | | | | | | | | | | | | | Add an offset role to the models. Implement goBackAndForward that uses this offset. Also add a complete model, items, that includes current navigation entry (at offset 0) to allow for the Firefox-style single menu, and add that one to the nano browser example. The models are now instantiated lazily as it's unlikely the three models will be used by the same app. Change-Id: Ib551738611497c7eb9c501f045cda315968a2ada 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>
* Move webChannel property out of experimentalPierre Rossi2015-02-131-8/+26
| | | | | | | | | Add a notify signal to go with the setter. Parent the default-provided channel to the view. Comes with basic documentation. Change-Id: I2bde8153df5928fc92ac36b7fa4d4b3b1da22f53 Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
* Integrate with WebChannelPierre Rossi2015-02-121-0/+18
| | | | | | | | | | Provide a transport mechanism for WebChannel over chromium IPC and expose WebChannel in our experimental QML API. Co-authored by Milian Wolff. Change-Id: Ia24b1d4ebc8515de677d4849ec33cb55c963918e Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
* Move settings out of experimental.Michael Brüning2015-02-061-5/+6
| | | | | Change-Id: Ida74680a4180f4366746874a656041364563d548 Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
* Add settings to WebEngineProfilesAllan Sandfeld Jensen2015-02-051-3/+6
| | | | | | | | | 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>
* Propagate unhandled key events to the QtWebEngine view's parentJocelyn Turcotte2015-02-051-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | This allows applications to receive unhandled key events from the page by setting an event handler on the view's parent widget/item, like it was possible with QtWebKit. This is different in that events first have to asynchronously go through the QtWebEngineProcess. If the WebEngine view has the keyboard focus, the events will be consumed inconditionally by the RenderWidgetHostViewQtDelegates, and a copy will be resent to the view's parent if it wasn't consumed. This sends it to the parent instead of the QWebEngineView directly since those are only unhandled events, unlike with other widgets where you can first intercept events. It is done that way also in cases where the QWebEngineView would be be the focus widget directly in the future, instead of the RWHV. If applications want to intercept key events before they reach the page, they need to use an event filter on the QWebEngineView's children or globally on the application. Change-Id: I3b48f5212d3f238a1c0497cec1db6ae3badbad26 Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
* Forbid mismatching profiles when adopting web contentAllan Sandfeld Jensen2015-02-021-0/+5
| | | | | | | | | | | To avoid crashing due to a mismatch of browser-contexts used by webcontent and webcontent adapters and clients, we refuse to open content in a new window witha different profile and prints a warning so the developers may fix their software. Change-Id: I704266a96de2d7a5f8e1fa3ccf49a50f1d2307c9 Task-number: QTBUG-43898 Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
* Add Qt WebEngine Quick API for allowing certificate errorsPaulo Pinheiro2015-02-021-3/+10
| | | | | | | | | This adds API for overriding some certificate errors. Once overridden any identical error for the same hostname and certificate will use the same override. Change-Id: Idf9e968edca18751cbdab744880480750d0c1bd4 Reviewed-by: Zeno Albisser <zeno.albisser@digia.com>
* Move newViewRequested to the public APISzabolcs David2015-01-231-1/+2
| | | | | | | | | | | | | This moves the API to public, with proper versioning, adds documentation and adjust the warning to also report an null parameter to openIn that would cause the load to fail. The experimental example code is copied from quicktestbrowser to quicknanobrowser. Change-Id: I23b06c7a5add0323d0540a783873584438d85ea8 Reviewed-by: Szabolcs David <davidsz@inf.u-szeged.hu> Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
* Enable building Qt WebEngine without accessiblity enabled.Michael Brüning2015-01-231-0/+12
| | | | | | | | | | | | | This adds guards that for QT_NO_ACCESSIBILITY being not defined around the code that uses accessibility types. It disables the quicknanobrowser and quicktestbrowser examples which need Qt QuickControls, which has a hard dependency to accessibility being enabled. Task-number: QTBUG-43305 Change-Id: Ifa39e3ce447ebc2124f52e00b29b1d7d2231035e Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
* Replace the inspectable property with an environment variableJocelyn Turcotte2015-01-221-17/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The current implementation would enable or disable the inspector globally when the inspectable property was set on a WebEngineView, overwriting the value previously set by other pages. Instead of havind default port for the debugging server and having to enable debugging on individual pages, use an environment variable, QTWEBENGINE_REMOTE_DEBUGGING, to enable the debugging server for the whole application at the same time as specifying the port. The format is the same as for QTWEBKIT_INSPECTOR_SERVER in QtWebKit. QTWEBENGINE_REMOTE_DEBUGGING is set by default in quicktestbrowser to ease development. This also keeps the input reading from the --remote-debugging-port command line switch for convenience, but its usage should be considered internal. This patch also take the opportunity to remove the unused DevToolsHttpHandlerDelegateQt::m_browserContext and to move the ownership from ContentBrowserClientQt to WebEngineContext since the list of inspectable pages isn't bound to the BrowserContext anyway. Change-Id: I772687f88f4feee0cc14dd182b0129cc0ea384dd Reviewed-by: Pierre Rossi <pierre.rossi@theqtcompany.com>
* Merge remote-tracking branch 'origin/5.4' into devPierre Rossi2015-01-161-1/+1
|\ | | | | | | | | | | | | Conflicts: src/3rdparty Change-Id: Ied43de29444d4803218e250b096b9c72bc017af7
| * UIDelegatesManager: Remove creationContextForComponent.Robin Burchell2015-01-061-1/+1
| | | | | | | | | | | | | | | | | | This doesn't seem to be too much sense, and according to the QQmlContext documentation, may not work as expected: "This is only valid for components created directly from QML." Change-Id: I49db5dad49288d196e8519b1a60dcf2192147672 Reviewed-by: Pierre Rossi <pierre.rossi@theqtcompany.com>
* | Widgets: Implement mouse lock permission APISzabolcs David2015-01-161-0/+9
| | | | | | | | | | | | | | | | | | If the user grants the permission with mouse click on the feature permission bar, the RenderWidgetHostView loses the focus but the focus is necessary for the pointer lock. Change-Id: Ifafd86b472e400c5690194dce2ea8a829a51c313 Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
* | QML API for WebEngineProfilesAllan Sandfeld Jensen2014-12-121-10/+95
| | | | | | | | | | | | | | | | | | | | | | Introduces the QML API for the WebEngineProfiles already implemented for QtWebEngineWidgets. [ChangeLog][QtWebEngineQML][QQuickWebEngineProfile] New API for profiles applying to groups of QQuickWebEnginePages. Change-Id: Ideccddb9f1fb19628297592fe0cec504c9890e46 Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
* | QtQuick: rename the media feature permission enum valuesPierre Rossi2014-11-241-7/+7
| | | | | | | | | | | | | | In the same way it was done for widgets. Change-Id: I03ff6ed587346b00c76cf7314483263fd4f90a2d Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* | QtQuick: add geolocation permission APIPierre Rossi2014-11-241-2/+11
| | | | | | | | | | | | Change-Id: I1a5fedc4167dd780655b004811211e49631663c5 Reviewed-by: Andras Becsi <andras.becsi@digia.com> Reviewed-by: Zeno Albisser <zeno.albisser@digia.com>
* | Merge remote-tracking branch 'origin/5.4' into devAllan Sandfeld Jensen2014-11-111-1/+4
|\ \ | |/ | | | | | | | | | | | | Conflicts: src/core/browser_context_qt.cpp src/webengine/api/qquickwebengineview_p.h Change-Id: I73bdec03b627b282851d7dda12006d4ab631072c