summaryrefslogtreecommitdiffstats
path: root/src/core
Commit message (Collapse)AuthorAgeFilesLines
* Adaptations for Chromium 80Allan Sandfeld Jensen2020-04-0751-304/+367
| | | | | Change-Id: Icaf68648cbc2c13a61fc3b208ff1e64ca36c90b6 Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* Fix crash in ProxyingURLLoaderFactoryQtAllan Sandfeld Jensen2020-04-073-21/+32
| | | | | | | | | We need to be on the UI thread to walk the frame-node tree. Task-number: QTBUG-82999 Change-Id: I8011a29e91d6af92da341cbdd01fc9403c587e23 Reviewed-by: Tamas Zakor <ztamas@inf.u-szeged.hu> Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* Fix CSS backdrop-filterPeter Varga2020-04-031-1/+1
| | | | | | Task-number: QTBUG-82842 Change-Id: I79394cf726d9c5d16881fa8c07b43d28fa43e026 Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* Speculative fix for titleUpdate test caseMichal Klocek2020-04-022-0/+12
| | | | | | | | | | | | | | | | | | | | | | After tedious investigation the issue boils down to error prone synchronization of web engine settings. WebEngineSettings are synchronized between the browser process and the render process. Moreover in the browser process the sync message is send to the render with QTimer::singleShot, which can cause race conditions if for example QWebPage::setUrl was used meanwhile. This makes current settings not being picked up by the render process and results in 'titleUpdate' test case flaky. This happens due to the fact that ShouldDisplayErrorPageForFailedLoad in the render process frame view could have invalid value. Try to sync web engine settings on every adapter load, setContent or reload. Mark some flaky settings in tests. Fixes: QTBUG-83078 Change-Id: I5289472f146e104d5cb6c3b9b20b26d3dc42f4b1 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Fixup build_allAllan Sandfeld Jensen2020-04-022-2/+4
| | | | | | | Don't build both release and debug, when build_all is not requested. Change-Id: I4e0458ba460a9c62b32161ea588955b2f539a37e Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Merge "Merge branch '5.14' into 5.15"v5.15.0-beta3Allan Sandfeld Jensen2020-03-313-15/+13
|\
| * Merge branch '5.14' into 5.15Allan Sandfeld Jensen2020-03-263-15/+13
| |\ | | | | | | | | | | | | | | | | | | | | | Conflicts: src/3rdparty tests/auto/widgets/qwebenginepage/tst_qwebenginepage.cpp Change-Id: Idbc9d3b06c0052a721c974fbcbfa3164faaead14
| | * Fix for macOS packaging problemAllan Sandfeld Jensen2020-03-191-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Running build in parallel for debug and release on mac os was resulting in corrupted resource, due to possible simultaneous QMAKE_BUNDLE_DATA resources write from release and debug builds. Add missing qtConfig checks. Fixes: QTBUG-76549 Change-Id: Icc0dee7b06d442e9c15d7afa53c0372e8d82b4a2 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
| | * Merge 5.14 into 5.14.2Kari Oikarinen2020-03-102-2/+6
| | |\ | | | | | | | | | | | | Change-Id: I50afabc6022fea5b3db2a7dcb8659b654573661f
| | * | Fix applying background color on RenderViewPeter Varga2020-03-102-13/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The RenderViewObserverQt_SetBackgroundColor message was sent with wrong Routing ID. This fix also cleans up RenderWidgetHostViewQt::UpdateBackgroundColor() method. Fixes: QTBUG-81781 Change-Id: Ida198fb061715d389859ace17e1f773db491c51d Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* | | | Fix rare crash on exit in isCreateContextRobustnessSupportedMichal Klocek2020-03-273-9/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | During shutdown we might need to flush the gpu buffer if root frame sink is being deleted, which needs current context, which calls isCreateContextRobustnessSupported and ends up in calling platformName() from gpu thread, which might be already destructed on ui thread. Keep context helper till gpu thread is gone. Task-number: QTBUG-79864 Change-Id: Idadc064694fe0584fb894a9405a0af80d9848626 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | | | Replace NULL in gl_surface_qt.cppPeter Varga2020-03-261-5/+5
|/ / / | | | | | | | | | | | | | | | | | | | | | Fixes build error with MSVC: error C2440: 'return': cannot convert from 'int' to 'scoped_refptr<gl::GLSurface>' Change-Id: Ie24528cc98951de6863c12e1d25e3722bd20b046 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | | Disable picture-in-picture mode for videosSzabolcs David2020-03-261-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | Remove non-working PIP option of the video player until we figure out how to support it. Task-number: QTBUG-82390 Change-Id: Id8aee294f50137e98c00c76d94e8227a61fb89f8 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | | Fix default file dialogs in QMLSzabolcs David2020-03-241-2/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QVariant::toStringList() never worked in that case where the variant stores QList<QUrl>. Bring back the old logic from 5.12 and unwrap URLs "manually". Task-number: QTWB-46 Change-Id: I8d690c092e1a9bd459ab55cd4d5934d633e907e1 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> Reviewed-by: Tamas Zakor <ztamas@inf.u-szeged.hu>
* | | Protect against null adapter client OnRenderFrameMetadataChangedAfterActivationKirill Burtsev2020-03-231-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Notification for metadata change is asynchronous and may come after assigned adapter client was destroyed (that is at least what happens in linked test comboBoxPopupPositionAfterChildMove for popup). Fix is similar to 01ee897dc5. Fixes: QTBUG-82987 Change-Id: Ia22ee3c054ed5d5c26982cff579be9d48145f93b Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* | | ProfileIODataQt: remove remains of non network service codeKirill Burtsev2020-03-142-48/+11
| | | | | | | | | | | | | | | Change-Id: Ia11429880d6a40561bccd2feaddcae584cd34dac Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | | Add support for qrc proxy pac fileMichal Klocek2020-03-131-2/+7
| | | | | | | | | | | | | | | Change-Id: Ic4b70d31c85a31a434644c311eb173cda6a82fbd Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | | Update chromium + simplify snapshotAllan Sandfeld Jensen2020-03-116-154/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Simplifies our snapshoting and includes among other files the chrome command-line preference store, which we can use with minor adaptations. Submodule src/3rdparty 07787da4..4ea22135: > Fix build for expanded sources > Merge "Merge remote-tracking branch 'origin/upstream-master' into 79-based" into 79-based > Don't trigger quad blending for opacity > FIXUP: Fix build with gcc 5 > [Backport] Allow restricted clock_nanosleep in Linux sandbox Change-Id: Ibdf7b24c0fbe920edd61f550913dca02ed67cd20 Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* | | Update accessibility roles and test after 79-basedPeter Varga2020-03-081-18/+23
| | | | | | | | | | | | | | | Change-Id: I23bd548db07c6332170e9d304977e5974c7f049f Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | | Handle new Skia formats toQImageAllan Sandfeld Jensen2020-03-071-0/+20
| | | | | | | | | | | | | | | | | | | | | | | | Only one is supported, but we do not expect to receive any of these formats currently. Change-Id: Ide782088bcf7ccd31e6af8eedf8b7bec2845c8d7 Reviewed-by: Kirill Burtsev <kirill.burtsev@qt.io>
* | | Do not force in-process network-serviceAllan Sandfeld Jensen2020-03-061-1/+0
| | | | | | | | | | | | | | | | | | | | | Works just fine in separate process. Change-Id: Ib6f272d95ca57e08c330f871a22b1b5bd89b4ff6 Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* | | Merge "Merge remote-tracking branch 'origin/5.14.2' into 5.15"Allan Sandfeld Jensen2020-03-063-31/+43
|\ \ \
| * | | Merge remote-tracking branch 'origin/5.14.2' into 5.15Allan Sandfeld Jensen2020-03-053-31/+43
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/3rdparty src/core/web_engine_context.cpp Change-Id: Ib02d0e50124917b1b09e528e5ec8570c25a94051
| | * | Fix deadlocks on WebEngineContext destructionMichal Klocek2020-03-023-30/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch aims to handle 3 deadlocks on exit: (1) Do not attempt to restart Viz thread on shutdown, this will make deadlock with no separate gpu thread, since force shut down of FrameSinkManager requires interaction with gpu process. (2) QCoreApplication, QGuiApplication, QApplication behave differently when doing qt post routine, ~QGuiApplication calls the post routine handler after closing event dispatcher, which will on windows stop processing timer events, which we need to pump message loop when shuting down viz. Do not use QEventLoop and switch to active pulling. The proper solution is to fix QGuiApplication destructor to call post routine first, but this change might have side effects on already existing user code. (3) Since 7f1649b438329e we delete root frame sink asynchronously, which will in gpu thread running in separate thread create a deadlock. Viz requires gpu to destruct root frame sink, however if main process tries to close gpu process this will in turn try close viz, but viz calls back gpu now since the root frame sink is not destroyed. Use the same solution as in (1). Change-Id: Ic6bc904bdac90ee01a5c5b9398a2e2746be3bbd8 Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* | | | Add plugin placeholder when ppapi can't be loadedTamas Zakor2020-03-058-0/+394
|/ / / | | | | | | | | | | | | | | | Task-number: QTBUG-82012 Change-Id: I66f70f879203e8fba585caa472256dde06984a04 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | | Implement deprecated request interceptors for network-serviceAllan Sandfeld Jensen2020-03-053-75/+87
| | | | | | | | | | | | | | | | | | | | | Add an intercept path on the IO thread. Change-Id: I91a5d65b0328275a792d3e4ac4e3957d76445093 Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* | | Improve custom scheme http content-range supportAllan Sandfeld Jensen2020-03-052-15/+49
| | | | | | | | | | | | | | | | | | | | | | | | Also parse length, and report back part expected HTTP headers. Change-Id: I414ef6fb6ade601f59a23c01bb547d58f0f7ffd1 Reviewed-by: Szabolcs David <davidsz@inf.u-szeged.hu> Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* | | Merge remote-tracking branch 'origin/5.14' into 5.15Allan Sandfeld Jensen2020-03-032-2/+6
|\ \ \ | | |/ | |/| | | | | | | | | | | | | Conflicts: tests/auto/quick/qquickwebengineview/BLACKLIST Change-Id: I365daa73d2eb422ac916c32b86c5ad0d3c32086d
| * | Invalidate accessible interfaces on destruction of view or pagePeter Varga2020-02-271-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The RenderWidgetHostViewQtDelegate(Widget|Quick)Accessible interfaces are forwarding their queries to the WebEngineView. In case of widget, the view also forwards the query to the page. The accessible interfaces may outlive the view and page. The interfaces are not supposed to be used after the destruction of the underlying objects. Thus, set the RenderWidgetHostViewQtDelegate and WebEngineView accessible interfaces invalid if the corresponding pointers are null. Also fix querying the root accessible interface of the web page when the render frame host is not available. This fixes crash when QT_LOGGING_RULES="qt.accessibility.cache.debug=true" is set and logger tries to pretty-print QAccessibleInterfaces during destruction. Task-number: QTBUG-78284 Change-Id: If18af0605061fcd82d019d0042dbf1c9d3a910be Reviewed-by: Kirill Burtsev <kirill.burtsev@qt.io>
| * | Suppress error message on ACCESSIBILITY_EVENTS permission typePeter Varga2020-02-271-1/+2
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | The ACCESSIBILITY_EVENTS permission is used to enable AOM (Accessibility Object Model) event listeners in blink. The current implementation of the AOM is deprecated and it doesn't seem to be supported in the foreseeable future by QtWebEngine. Avoid the "Not implemented" error message in case of this permission type because it is kept unsupported on purpose but blink still registers permission status listener when AXObjectCache is created. Change-Id: I4e9babb06015635e6c4c94c8fe433c714329692b Reviewed-by: Kirill Burtsev <kirill.burtsev@qt.io>
* | Fix cookie persistency settingsAllan Sandfeld Jensen2020-03-031-2/+2
| | | | | | | | | | | | | | Changed to match our settings from non-networkservice. Change-Id: Ib4813b2513dcae4b77d393ea1cd6d8db61852edd Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* | Update user-agent without replacing entire network contextAllan Sandfeld Jensen2020-03-031-4/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Use added API to treat user-agent changes like accept-language changes. 3rdparty changes: > Allow changing user-agent without replace the entire network context > Destroy old network context before creating the replacement > Enable plugin.mojom for plugin placeholder > Suppress racy DCHECK > Restore -fno-delete-null-pointer-checks Change-Id: Ie94f74332704313d63e064c61118afc53a95c0d8 Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* | Improvements to dynamic update of profilesAllan Sandfeld Jensen2020-03-022-9/+20
| | | | | | | | | | | | | | | | | | Avoid reseting network-context on accept-language change, and trigger update of url-loaders when customer schemes change, but not when a set of none are cleared. Change-Id: Iad268b7066cfd3854348f9a103120c4a104be7af Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* | Adaptations for Chromium 79Allan Sandfeld Jensen2020-02-2850-240/+329
| | | | | | | | | | | | | | | | Fixes: QTBUG-80737 Fixes: QTBUG-81556 Fixes: QTBUG-81614 Change-Id: Ie6a69cdbf46d0508bff226f1b8fed28a618e1949 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Adaptations for Chromium 78Allan Sandfeld Jensen2020-02-2859-903/+509
| | | | | | | | | | | | | | | | | | | | Including removal of renderer service. [ChangeLog][QWebEngineSetting] XSS Auditing has been removed, and XSSAuditingEnabled no longer has any effect. Change-Id: I0835e2a76551057f3eea30a343e0373b642192f0 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Merge remote-tracking branch 'origin/5.14' into 5.15Allan Sandfeld Jensen2020-02-273-15/+39
|\| | | | | | | | | | | | | | | Conflicts: src/core/renderer_host/web_channel_ipc_transport_host.cpp tests/auto/widgets/qwebengineprofile/tst_qwebengineprofile.cpp Change-Id: I47f2b893bc9f27cd9df641f76badc9e53b482ad4
| * Clear previous page text selection on new navigation unconditionallyKirill Burtsev2020-02-262-14/+33
| | | | | | | | | | | | | | | | | | | | Remove code duplication on triggering new url load, and use direct code to clear SelectedText instead of CollapseSelection as it assumes focused frame and might be ignored. Fixes: QTBUG-81574 Change-Id: I01cf02967e118f407c8a3997e176d5b258478a5a Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
| * Fix event.key for Ctrl key combinations on WindowsPeter Varga2020-02-251-1/+6
| | | | | | | | | | | | Fixes: QTBUG-81783 Change-Id: I107a4009630dc261013498a05987c0e8e29651eb Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| * Fix build: remove dependency on Qt private headerThiago Macieira2020-02-241-3/+6
| | | | | | | | | | | | | | | | | | | | | | | | The size of QJsonDocument's binary format is well known and we don't need the header to know what it is. This fixes the build with 5.15, where the contents of the previous QJsonPrivate namespace are now in QBinaryJsonPrivate. web_channel_ipc_transport_host.cpp:148:51: error: 'Header' is not a member of 'QJsonPrivate' Change-Id: Id7decde0c426479bbf61fffd15dcc5c20a9eca2c Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Fix use-after-free in CustomURLLoaderJüri Valdmann2020-02-261-13/+14
| | | | | | | | | | Change-Id: I06e6622cc0e59674be975f43b82fafa2e7a05edd Reviewed-by: Kirill Burtsev <kirill.burtsev@qt.io>
* | Fix changing profile settings with network serviceJüri Valdmann2020-02-264-20/+37
| | | | | | | | | | | | | | Fixes: QTBUG-81558 Change-Id: I6f6d1b927d0f20d99477dce21697d4a03f61c059 Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Fix not working proxy_pac test with network serviceMichal Klocek2020-02-211-1/+17
| | | | | | | | | | | | | | | | | | | | | | | | Due to sandboxing we can no longer pass pac file. Pass it as data url instead by reading the pac file and encoding into base64. Fix failing proxypac url on windows. Fixes: QTBUG-81557 Change-Id: I3dc3da4fbd3cce4e903c75022b8e9fe5faf71604 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Fix CustomURLLoader not supporting responses over 64k bytesJüri Valdmann2020-02-211-33/+65
| | | | | | | | | | | | | | | | | | | | | | | | | | Mojo data pipes are non-blocking, meaning we have to wait until there's room in a buffer before we can transfer data from the QIODevice to the pipe. Use mojo::SimpleWatcher to monitor the pipe for readiness and use the two-phase BeginWriteData/EndWriteData API to let the QIODevice write directly into the pipe's internal buffer, avoiding a copy. Fixes: QTBUG-82244 Change-Id: I65e69ce72d0e99bc047c57b5a22531c0891c553a Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* | Merge remote-tracking branch 'origin/5.14' into 5.15Allan Sandfeld Jensen2020-02-192-1/+7
|\| | | | | | | | | | | | | | | | | Blacklisted one test requiring an update of qt5.git. Conflicts: .qmake.conf Change-Id: I75e55a1c5f8840cde55ddb60d632287b2affadeb
| * Fix name filters of GTK file pickerSzabolcs David2020-02-161-0/+3
| | | | | | | | | | | | | | | | | | | | Setting an empty string instead of "()" fixes that case where the file input doesn't have "accept" attribute. Task-number: QTBUG-82109 Change-Id: I8a72f819fa6d8bbab4e5f1067b38ad75ff11e118 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> Reviewed-by: Michal Klocek <michal.klocek@qt.io>
| * Emit title change event asynchronouslyKirill Burtsev2020-02-141-1/+4
| | | | | | | | | | | | | | | | | | | | | | Ammends 445235bc01. Preserve some previous assumptions on order of change events for url and title. Fixes flaky failures in previously written tests like WebEngineViewSource::test_viewSource. Fixes: QTBUG-81855 Change-Id: I487d27d594d5a0d74d39b7b58e815e5c75a73fb3 Reviewed-by: Michal Klocek <michal.klocek@qt.io> Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* | Move disabling of features we used to not support to non-viz onlyAllan Sandfeld Jensen2020-02-171-14/+15
| | | | | | | | | | | | | | | | | | These features all failed to work with our old compositing implementation, but works with viz compositor, and due to being default in Chrome, might work more reliable being on, than off. Change-Id: Ifab1913fd4bc20f295dc7c2ccffa510610b23796 Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* | Solve FIXME in CustomURLLoaderAllan Sandfeld Jensen2020-02-051-1/+3
| | | | | | | | | | | | | | Update the headers as asked for in FollowRedirect. Change-Id: I86d241d52abe8bd9d082b7ad49e921a955dc1403 Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* | Merge "Merge remote-tracking branch 'origin/5.14' into 5.15"Jüri Valdmann2020-02-045-9/+42
|\ \
| * | Merge remote-tracking branch 'origin/5.14' into 5.15Jüri Valdmann2020-02-035-9/+42
| |\| | | | | | | | | | Change-Id: I349a4ecbbd9d3d121ca6564db77e417872246554