summaryrefslogtreecommitdiffstats
path: root/src/webenginewidgets
Commit message (Collapse)AuthorAgeFilesLines
* Doc: Add \since tag for QWebEngineProfile::setDownloadPathv5.13.0-beta3Kai Koehne2019-04-131-0/+2
| | | | | Change-Id: I3638fd51bbb871b7dc920a7c3e1435c26db02f7c Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
* Merge branch '5.12' into 5.13Allan Sandfeld Jensen2019-04-097-45/+45
|\ | | | | | | | | | | | | | | | | | | Conflicts: src/3rdparty src/core/renderer/user_resource_controller.cpp src/core/web_contents_adapter.cpp src/webengine/doc/src/qtwebengine-overview.qdoc Change-Id: I46be9d33b3b65d61dfa099ee72a3509afb9bd6a4
| * Doc: Avoid auto-linking the string 'WebEngine' to the QML typeLeena Miettinen2019-04-017-45/+45
| | | | | | | | | | | | | | | | | | | | Remove the previous workaround (internal \externalpage command) that was used for this purpose, and replace it with a \QWE macro that expands to the string 'Qt \WebEngine'. The backslash in the expanded string instructs QDoc not to attempt auto-linking the word. Change-Id: If4e1c95423fa07479b1af055e4760a890c0ac667 Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* | Notification API cleanupKirill Burtsev2019-04-055-26/+37
| | | | | | | | | | | | Task-number: QTBUG-74543 Change-Id: Ice5a0dbfc3485c8b7e6fa900ef427a9aed871d42 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Remove our last uses of Q_DECL_OVERRIDE and Q_NULLPTRAllan Sandfeld Jensen2019-04-032-3/+3
| | | | | | | | | | Change-Id: I8806a3fb466006f14cf92f17510cdea8b50e8345 Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* | Merge remote-tracking branch 'origin/5.12' into 5.13Allan Sandfeld Jensen2019-03-282-6/+9
|\| | | | | | | | | | | | | | | | | | | | | Conflicts: .qmake.conf src/3rdparty src/core/render_widget_host_view_qt.cpp src/core/web_contents_view_qt.h src/core/web_engine_context.cpp Change-Id: I17f3a4814e88a5680dc61a6d734c171ccba00e8c
| * Fix escaped characters in tooltipAllan Sandfeld Jensen2019-03-261-3/+5
| | | | | | | | | | | | | | | | | | Go back to making the tooltip richtext, but set a white-space:pre to keep the tooltip mostly unwrapped. Fixes: QTBUG-74659 Change-Id: I5e30ee0098a608eda969b090355915a75f55405f Reviewed-by: Kai Koehne <kai.koehne@qt.io>
| * Fixup focus implementationAllan Sandfeld Jensen2019-03-212-3/+4
| | | | | | | | | | | | | | | | | | Follow the other implementation and pass TakeFocus to WebContents Delegate, and hook to our UI from there. Also fixes use of Blur instead of LostFocus, which means we now render unfocused more correctly. Change-Id: I34a1882489bc68b9ff36ed5139af0ee8a3a95b79 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* | Fix capitalisation of letters for PDF viewer settingMichael Brüning2019-03-193-4/+4
| | | | | | | | | | | | | | | | PDFViewerEnabled is renamed to PdfViewerEnabled. Task-number: QTBUG-74543 Change-Id: I48a242a52ab0689b06815ac3cbd98c44902cc358 Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* | Notification API cleanup: direction type, parameter and method namesKirill Burtsev2019-03-191-3/+7
| | | | | | | | | | Change-Id: I0349f3eea0028a4df917af8599c073227e0d0ec1 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Fix -no-ssl buildv5.13.0-beta1Peter Varga2019-03-071-0/+4
| | | | | | | | | | Change-Id: I978f70545484060218f5243c74978c85bc603c16 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Merge remote-tracking branch 'origin/5.12' into 5.13Allan Sandfeld Jensen2019-03-0410-45/+100
|\| | | | | | | Change-Id: I1dd136df7004b11e2f38a2ec4e82a6fa81627479
| * Force destruction of webcontent client before profile adapterMichal Klocek2019-03-014-5/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently users might forget to delete webcontent client before profile adapter. This might be nasty if users are not aware of default profile. Instead of asserting badly in chromium, clean up and release chromium resources. This avoids the crash, but might leak memory if users never deletes page. Task-number: QTBUG-74021 Change-Id: I66f466f169d12f7ee08866d505260dca47800bb0 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| * Doc: Always treat \brief as full sentenceKai Koehne2019-02-225-21/+21
| | | | | | | | | | | | | | | | | | Make sure all \brief descriptions start with an upper-case letter and end with a . Also start descriptions of \class with the name of the class or struct. Change-Id: Ifd2656201f9c1dff092085508a5423ce516e2d3f Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
| * Clarify documentation of QWebEnginePage::title()Jüri Valdmann2019-02-222-2/+8
| | | | | | | | | | | | | | | | | | | | Explain what happens when the HTML has no proper <title> defined and clarify the meaning of 'by default': it refers to the state before load()/setUrl()/etc. Fixes: QTBUG-71799 Change-Id: Ib2669007573b3ea53e205d9228237bae392f6f78 Reviewed-by: Michael Brüning <michael.bruning@qt.io> Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
| * Remove download properly on profile destruction to avoid use after freeKirill Burtsev2019-02-193-13/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | In the Widgets API, download items are children of the profile and are destroyed when the parent profile destroys its children. The download item's destructor can therefore not access the profile, as it would cause a heap-use-after-free crashes. On quick side turn ongoing downloads cleanup to match widgets one. Fixes: QTBUG-73839 Change-Id: Iabb379e91187e3e68ebcd4693fec35883b72b1f2 Reviewed-by: Michael Brüning <michael.bruning@qt.io> Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
| * Set download state to finished when cancelling or destroying the download itemKirill Burtsev2019-02-192-6/+17
| | | | | | | | | | | | | | Task-number: QTBUG-73839 Change-Id: Ieebaa802bdfe0c410618e4213a9bedbbae9d0f61 Reviewed-by: Michael Brüning <michael.bruning@qt.io> Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* | Tie client certificate stores to profilesAllan Sandfeld Jensen2019-03-012-0/+14
| | | | | | | | | | | | | | | | Move the client certificate store from being global to being tied to individual profiles. Change-Id: Ib21ae14c501b7d0612b84ae7535120291aeeada2 Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* | API cleanupAllan Sandfeld Jensen2019-02-272-18/+9
| | | | | | | | | | | | | | Based on review feedback Change-Id: Ide40d4fd563ea682eaa2cc457d857445adea85cd Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* | Fix crash on unsetting request interceptorAllan Sandfeld Jensen2019-02-261-2/+4
| | | | | | | | | | | | | | | | | | Don't access nullpointer. Also don't print developer warnings to end-users. Change-Id: I273101dd581a335464ff2dbae5095bc99e455649 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* | Add a setting to control if the PDF viewer is enabledMichael Brüning2019-02-223-2/+6
| | | | | | | | | | | | | | | | | | | | [ChangeLog] Introduces a setting to control if the internal PDF viewer is enabled. By default, PDF documents will now be opened in the viewer instead of being downloaded. Change-Id: I78b3b3702ae3be3da58c9635720ba861db3de661 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* | Emit QWebEnginePage::selectionChanged asynchronouslyJüri Valdmann2019-02-211-1/+1
| | | | | | | | | | | | | | | | | | | | Currently selectionChanged is emitted from a Chromium task, meaning our MessagePump is blocked and, even with a nested QEventLoop, it's not possible to for Chromium code to make any progress during the handling of this signal. Fixes: QTBUG-73876 Change-Id: I45135238cffa81fb0db74ddfd53037c7f1b94348 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* | Merge remote-tracking branch 'origin/5.12' into 5.13Allan Sandfeld Jensen2019-02-154-0/+30
|\| | | | | | | Change-Id: I0822fb8a10945a252cfd1aacaf0b6d9902cc8831
| * Doc: Extend documentation of callbacksTamas Zakor2019-02-083-0/+29
| | | | | | | | | | | | | | | | Warn about callbacks on QWebEnginePage destruction. Task-number: QTBUG-72816 Change-Id: I8dbc297a8f364bc237b0672a63325af8da197e01 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| * Merge remote-tracking branch 'origin/5.12.1' into 5.12Qt Forward Merge Bot2019-02-011-0/+1
| |\ | | | | | | | | | Change-Id: I4315127d8a329bcb65e6853d4f3625b6dbc55560
| | * Fix hide/show of delegate widgetMichal Klocek2019-01-091-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For QQuickWidget::show does not work correctly if widget was not hidden. Fixes: QTBUG-72299 Change-Id: I12fba8c18cbf3f847d30de8b057a50e6d9917fde Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* | | Simplify visual properties handling in RenderWidgetHostViewQtJüri Valdmann2019-02-132-22/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | Replace separate notifications from delegate with one combined notification and change detection. Store view rect, window rect and screen info in RWHVQ to ensure the properties are in a consistent state. Change-Id: Icef8a17e72882f56db249f5553b6cf554e1f91dc Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | | Web Notifications APIKirill Burtsev2019-02-0610-2/+241
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Implements API for end-user notifications. Co-authored by Allan Sandfeld Jensen [ChangeLog][Profile] Support for Web Notifications API for end-user notifications through QWebEngineNotification Task-number: QTBUG-50995 Fixes: QTBUG-51191 Change-Id: Icebaaa05275a713e801f1f8ecdaaec725fa264c8 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | | Merge remote-tracking branch 'origin/dev' into 5.13Michael Brüning2019-02-052-6/+0
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/core/content_browser_client_qt.cpp src/core/content_browser_client_qt.h Change-Id: I3da791a82dab56fd7535ba1e4c0ab1d9ca74f547
| * | | Delete WebContentsAdapterClient::dpiScale()Jüri Valdmann2019-02-012-6/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | It's always 1. Change-Id: I1c3d5bc3080da90379f03b6d0819c5656334751e Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | | | Move QWebEngineUrlRequestInterceptor::intercept to ui threadMichal Klocek2019-02-044-4/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently interceptor sufferers thread safety issues, when custom profiles are deleted, interceptor is set to be nullptr, however it can be still referenced in IO thread. Since profile was split to ui and io part, where io part can outlive the ui part, this can boost thread safety issues. Since QWebEngineUrlRequestInterceptor is living on ui thread simplify the logic move intercept call to ui thread. This fixes the issue of referencing interceptor in io thread. Add new method to install interceptor setUrlRequestInterceptor, and deprecate old one. Update interceptor install method name on page to match the profile one. Task-number: QTBUG-69844 Change-Id: I5dd2b6b734fd91906cccc6c1408ffbe7b1b4250c Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | | | Merge remote-tracking branch 'origin/5.12' into 5.13Allan Sandfeld Jensen2019-02-011-2/+0
|\ \ \ \ | |/ / / |/| / / | |/ / Change-Id: I2889e49fe9f71bfc996689feb0f350e09569f611
| * | Remove QWebFrame commentsKai Koehne2019-01-301-2/+0
| | | | | | | | | | | | | | | Change-Id: I82855788542dc7b659eb8d83565b6f32d89d0ea5 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* | | Implement touch text selection for QQuickWebEngineViewPeter Varga2019-01-311-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | Touch handle and touch selection menu are not implemented for widget. Task-number: QTBUG-59999 Change-Id: Ia492e58b83d3ad38cdf6877d468724c399f34367 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | | Add API to set default download pathTamas Zakor2019-01-302-0/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add functions and property to set the default download location in QWebEngineProfile and QQuickWebEngineProfile. Also add new test for check uniquifying download filename. Update plugins.qmltypes to 1.9 [ChangeLog][Profile][QtWebEngine][QtWebEngineWidgets] Add functions and property to set the default download location in QWebEngineProfile and QQuickWebEngineProfile. Task-number: QTBUG-66262 Task-number: QTBUG-72176 Change-Id: I7fa93b66c326766b176aec24d453dd75602b91de Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | | Merge remote-tracking branch 'origin/5.12' into devQt Forward Merge Bot2019-01-221-2/+4
|\| | | | | | | | | | | Change-Id: Ib374079ded76e43d4b72f725bbf16fe353ef827e
| * | Remove download items internally when API objects are deletedAllan Sandfeld Jensen2019-01-211-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We were never removing internal download item. [ChangeLog][Behavioral Changes] Deleting a download item will now also cancel it if it is still in progress. Change-Id: I2fab497d7acf7ca6ca17f4a61e106b1c18bfb333 Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* | | Merge remote-tracking branch 'origin/5.12' into devMichael Brüning2019-01-181-3/+3
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: .qmake.conf src/core/net/network_delegate_qt.cpp src/core/profile_io_data_qt.cpp src/core/web_engine_context.h tests/auto/core/qwebengineurlrequestinterceptor/tst_qwebengineurlrequestinterceptor.cpp Change-Id: Id98e3f52f548ceb5b68abd80aedd6ae59db72cc0
| * | Do not force wrapping of tooltipsKai Koehne2019-01-081-3/+3
| |/ | | | | | | | | | | | | | | | | | | | | QToolTip does wrap aggressively if HTML text is shown, which <p>...</p> enforces. Anyhow, this is not the default behavior for most browsers. This reverts part of b43774a9b89ed9. Fixes: QTBUG-72021 Change-Id: Iea0480c51f7c35c466bf3064423b2a81ee5b926c Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* | Docs: Correct documentation of QWebEnginePage::print()Szabolcs David2019-01-071-4/+1
| | | | | | | | | | | | | | | | Task-number: QTBUG-68561 Change-Id: I4284725bc64f78dc4df39d88885d6a463c8efa62 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* | Merge remote-tracking branch 'origin/5.12' into devMichael Brüning2018-12-184-20/+25
|\| | | | | | | | | | | | | | | | | | | | | Conflicts: src/core/compositor/delegated_frame_node.cpp src/core/profile_adapter.cpp src/core/profile_io_data_qt.cpp src/webengine/api/qquickwebengineprofile.cpp src/webenginewidgets/api/qwebengineprofile.cpp Change-Id: I35ec8480e758bbcb6c5942a5401cb1b6dbdcc428
| * Document and safeguard usage of custom schemesAlexandru Croitor2018-12-121-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The change improves the documentation of QWebEngineUrlSchemeHandler to notify the requirement of registering a custom scheme before installing a custom scheme handler. Also start showing warnings when QWebEngineProfile::installUrlSchemeHandler() is called before a scheme is registered. Also show warnings when installing the handler using QML. Task-number: QTBUG-72079 Change-Id: If249592ea43fe2f9ad587a6ff4e8c9dedcc5d3d3 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Kai Koehne <kai.koehne@qt.io>
| * Fix input method updatePeter Varga2018-11-292-8/+2
| | | | | | | | | | | | | | | | | | | | | | | | Do the update after the input properties are changed in RenderWidgetHostViewQt. Moreover, always update on input state changes, like cursor position, surrounding text and text selection (see QInputMethod::update() docs). Task-number: QTBUG-70158 Task-number: QTBUG-71995 Change-Id: I9d5c6e299826fbe66f5285b648013ef79aabed9b Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| * Docs: Extend documentation of WebActionsSzabolcs David2018-11-281-11/+21
| | | | | | | | | | | | | | | | Add some useful information. Change-Id: I39290c8dfc6c4a1d87c6b24fe6c48cab93f805db Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Move printing operation to a new threadSzabolcs David2018-12-105-90/+262
| | | | | | | | | | | | | | | | | | | | | | Printing operations were blocking the UI thread, so applications were irresponsive when printing in large size or high resolution. Introduce a new worker for the painting logic and use shared pointers to carry the data around and avoid copying PDF data between threads. Task-number: QTBUG-68561 Change-Id: I30633380b75acd14f1a1df87985c99540168a9f1 Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* | Merge branch '5.12' into devAllan Sandfeld Jensen2018-11-162-14/+20
|\| | | | | | | | | | | | | | | Conflicts: src/core/compositor/compositor.cpp src/core/compositor/compositor.h Change-Id: I8a4d73d728d93d95e499849f8778cc88dda2105e
| * Merge remote-tracking branch 'origin/5.12.0' into 5.12Allan Sandfeld Jensen2018-11-132-14/+10
| |\ | | | | | | | | | Change-Id: I05a9474efe6b00cc18ad6e33e19a1eb1cbbe8afe
| | * Fix opened webviews closing when opener closesAllan Sandfeld Jensen2018-11-082-14/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | We apparently can't not rely on getting a QEvent::ParentAboutToChange event before every QEvent::ParentChange event. Change-Id: Ie55b51f8c75623bc4f1a943367fb0070078df55b Fixes: QTBUG-71565 Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
| * | Implement CopyFromSurfaceAllan Sandfeld Jensen2018-11-082-0/+10
| |/ | | | | | | | | | | | | Means we can get screenshots in devtools. Change-Id: I7b50d6ac5a54d236573bcf5f58ae872bd50dccad Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* | Fix GPU compositing (and WebGL) to work with ANGLE on WindowsAlexandru Croitor2018-11-121-16/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Given the changes that implement GPU compositing on the UI thread (and thus only a single thread accesses all OpenGL contexts) it is now possible to enable GPU compositing to work together with ANGLE, which did not work before due to ANGLE being thread-unsafe. This requires a couple of things: - Enable GPU compositing via kInProcessGPU switch when using ANGLE - A small fix in GLContextHelper::getEGLDisplay() to return a correct "egldisplay "handle - Improved logic when to pass the kDisableES3GLContext switch depending on which OpenGL ES version is requested (2 or 3) - Adjustments in RenderWidgetHostViewQtDelegateWidget() to set up a correct surface format which matches the shared context OpenGL ES major version - A recent enough version of ANGLE (due to bugs calling glTexImage2D with an unsupported internal texture format for GL_DEPTH_COMPONENT, from inside gpu::gles2::IsWebGLDrawBuffersSupported) By default if no special QSurfaceFormat is set as the default surface format, using ANGLE will create an OpenGL ES 2 context, and will thus provide support only for WebGL 1. To enable OpenGL ES 3 / WebGL 2 support, make sure to set a default QSurfaceFormat with major version set to 3, and enable ANGLE either via QT_OPENGL=angle or QGuiApplication::setAttribute(Qt::AA_UseOpenGLES). The default surface format must be set before the Q*App instance is created. Manual test "webgl" added. Task-number: QTBUG-53908 Task-number: QTBUG-55604 Task-number: QTBUG-69236 Change-Id: Ic31dfdff1ca22d4689db5cf64126d7d12790aa76 Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>