summaryrefslogtreecommitdiffstats
path: root/src/core
Commit message (Collapse)AuthorAgeFilesLines
* Fix opengl headers inclusion issuesv5.15.2Michal Klocek2020-11-091-12/+2
| | | | | | | | | | | Chromium gl bindings headers get mixed with qt opengl headers. This results in GLDEBUGPROC missing definition errors. Fixes compilation for apalis-imx6 on zeus. Task-number: QTBUG-88219 Change-Id: I0a18ceff3336ab457c2d9f35ef17c28c01bbe035 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Do not set audio device for desktop capture if audio loopback is unsupportedPeter Varga2020-11-032-3/+12
| | | | | | | | | | | | | | Desktop audio capture requires loopback device. If creation of the loopback device fails, it aborts the screen capture too. Chromium does not support audio loopback on Linux and macOS: https://crbug.com/223639 This is still the case in Chrome 88. The fix is based on: https://codereview.chromium.org/24153018 Change-Id: Ifb13bce3b79193203c0bf52e1f2a1b3936e017c7 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Handle non-ascii names for pulseaudioAllan Sandfeld Jensen2020-10-202-2/+3
| | | | | | | | Uses percentage encoded utf8. Task-number: QTBUG-85363 Change-Id: Idabe6ff9a66897792732b9ebb648f54a84e86bb8 Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* Warn about QtWebengineProcess launching from network shareTamas Zakor2020-10-092-1/+37
| | | | | | | | | Add error message when trying to launch QtWebEngineProcess from network share if sandbox is enabled. Task-number: QTBUG-84632 Change-Id: Ia7d5df38accf60eafe8fb4d43dab3db4d2d51287 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Optimize WebEngineSettings::testAttributeAllan Sandfeld Jensen2020-10-061-8/+11
| | | | | | | Do not look up fallback values before they are needed. Change-Id: I8bb21e261e8d218c658ac2a08e3cdc30b2cea47d Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Do not pass a native keycode matching the menu key when it is remappedAllan Sandfeld Jensen2020-09-231-0/+3
| | | | | | | | | Chromium will recreate the original mapping based on the native keycode, breaking any remapping. Fixes: QTBUG-86672 Change-Id: I4b7e6f7434049cdf7250bee1ef759a9df4d4987c Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* Fix favicon engine under device pixel scalingAllan Sandfeld Jensen2020-09-221-2/+21
| | | | | | | | The QIcon::pixmap function does internal scaling messing up our intermediate structures. Change-Id: I727efd58a4cc948fa3e4b23539d97e8ca755d060 Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* FIXUP: Fix swap condition in DisplayGLOutputSurface::updatePaintNodeKirill Burtsev2020-09-183-1/+4
| | | | | | | | | | | | | Amends commit 99a668c324. Task 'swapBuffersOnVizThread' is supposed to be scheduled only when m_middleBuffer is ready after swap on gpu thread. Checking for m_taskRunner is not enough to verify this. Call to updatePaintNode may come from SG backend on expose event, thus breaking expected sequence of buffers swaps. Task-number: QTBUG-85817 Fixes: QTBUG-86599 Change-Id: Ia97a7a24b5672a2979b514d3cb4879e7630941eb Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* Fix PDF viewer pluginSzabolcs David2020-09-172-0/+6
| | | | | | | | Add the missing implementation of ContentRendererClient::IsOriginIsolatedPepperPlugin(). Change-Id: Ic4157da6b373450e620ff46faedad213a69adfec Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Fix assert in WebContentsAdapter::devToolsFrontendDestroyedJüri Valdmann2020-09-162-5/+9
| | | | | | | | | | | | | | | | | | | | | Can be reproduced with quicknanobrowser by 1. Open devtools 2. Switch to OTR mode During the switch to OTR mode, the inspected WebContentsAdapter is destroyed and recreated. DevToolsFrontendQt is supposed to call devToolsFrontendDestroyed on the old WebContentsAdapter, but it accesses this adapter through QQuickWebEngineViewPrivate's webContentsAdapter() which has already been changed to the new value, so devToolsFrontendDestroyed is actually called on the wrong object. Fix by remembering the WebContentsAdapter pointer in the DevToolsFrontendQt constructor. Change-Id: I17004ebb1a392399ef3e189c433d3f4b3f05bfd3 Reviewed-by: Tamas Zakor <ztamas@inf.u-szeged.hu> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Add certificate error message for ERR_SSL_OBSOLETE_VERSIONAllan Sandfeld Jensen2020-09-151-1/+3
| | | | | | | And update another error that is now better in its other description. Change-Id: I1b35db2196d05bb35d4c2e1e702fadb430e784c1 Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* Remove duplicate includesAllan Sandfeld Jensen2020-09-121-10/+5
| | | | | | | Most of the includes were included twice Change-Id: Ie2967e9d8ef4799c28a856ade7318d24bac391c6 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Adaptations for Chromium 83Allan Sandfeld Jensen2020-09-0939-215/+249
| | | | | Change-Id: I63ed851426b18623d549ceaf87f1b6eeec527966 Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* Chromium 81-based adaptationsAllan Sandfeld Jensen2020-09-0960-285/+430
| | | | | Change-Id: Ie422b327025da084bc8038c7a0aadee2db801f29 Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* Delete old compositor and remove --disable-viz-display-compositorJüri Valdmann2020-09-0921-3444/+75
| | | | | | | Change-Id: I1b056a61e2b56b19441f559e97f785c87df61a0c Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> (cherry picked from commit b00af13974b2c72ae4d397fbdf5925181e7cc1bf) Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* Merge remote-tracking branch 'origin/5.15.1' into 5.15Allan Sandfeld Jensen2020-09-071-1/+1
|\ | | | | | | Change-Id: Ieb546ccd35db06e8ad6358b11e3139a839c9b4cf
| * Do not call deprecated profile interceptor on ui threadKirill Burtsev2020-09-011-1/+1
| | | | | | | | | | | | | | | | | | | | Otherwise unchanged intercepted request leads to second call in the same interceptor but on ui thread after io thread. Ammends a05bb73747. Fixes: QTBUG-86267 Change-Id: I4e7c662d24a58be5445f5c8b6d0bf3751f40cc05 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Don't send duplicate load progress valuesKirill Burtsev2020-08-311-4/+8
| | | | | | | | | | | | | | | | | | Suppress duplicated progress values coming from chromium. Verify this behavior reliably (and not only 0 and 100 value) by loading html with subresources with minor delay through test http server. Change-Id: Id034dda9012212d54d12fc95d5939ba301577c1c Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* | Fix ScopedGLContextChecker with QTWEBENGINE_DISABLE_GPU_THREAD=1Jüri Valdmann2020-08-264-15/+18
|/ | | | | | | | | | | | The ScopedGLContextChecker, which deactivates the current QOpenGLContext when executing Chromium tasks, is currently enabled only if QOpenGLContext::supportsThreadedOpenGL() is false. But the gpu thread can nowadays be disabled also with an environment variable and ScopedGLContextChecker needs to take this into account. Change-Id: I012524538b49b033ed053dbc41ed4350db916542 Reviewed-by: Michal Klocek <michal.klocek@qt.io> (cherry picked from commit 5988cec1a1b59aa163042a419c4c2e978bb814bb)
* Do not let Blink advertise web speech apiAllan Sandfeld Jensen2020-08-191-0/+3
| | | | | | | At least turns our support off on html5test.com Change-Id: Ic82800b0efb70bb5589f7544b851ebcd64000105 Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* Enable H264 for WebRTC when using proprietary codecsAllan Sandfeld Jensen2020-08-181-0/+3
| | | | | | | | | Was enabled for all platforms except windows using MSVC, but compiles just fine for us. Fixes: QTBUG-86092 Change-Id: Ib15d94c36b8a411dd5eab01843db1a3666ac370f Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Fix swap condition in DisplayGLOutputSurface::updatePaintNodeJüri Valdmann2020-08-141-1/+1
| | | | | | | | | | | | | | | | | | | The buffer pointers m_middleBuffer and m_frontBuffer are swapped in updatePaintNode on the condition that m_middleBuffer is non-null and it's serviceId non-zero. But neither m_middleBuffer nor it's serviceId is immediately cleared, leaving the possibility that a subsequent call to updatePaintNode could swap the buffer pointers again if this call occurs before m_middleBuffer is cleared in swapBuffersOnVizThread. The m_taskRunner pointer is however cleared immediately and therefore the subsequent call to updatePaintNode will trigger a segmentation fault. Since m_taskRunner precisely tracks the condition when we should or should not swap, change the swap condition to simply require that m_taskRunner is non-null. Fixes: QTBUG-85817 Change-Id: Iad89bb0f4de7c0c151d5c5bd63ac74ab6cdd9087 Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* Disable WebComponentsV0Allan Sandfeld Jensen2020-08-101-3/+1
| | | | | | | | It appears we are no longer presented with pages using these, so match Chrome and Chromium 80 defaults. Change-Id: Ie270c2bee9b81f898c7dab9e6d4dad02636c17cc Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Detect the combination of audio and video from getDisplayMedia APIAllan Sandfeld Jensen2020-08-071-0/+4
| | | | | | | | | We were missing the combined test after Chromium introduced the new enums. Fixes: QTBUG-85890 Change-Id: Id7bb7f05635c64c271e12a12f2409eedc22a9605 Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* Re-enable client certificate handling when Qt is build without SSLAllan Sandfeld Jensen2020-08-041-1/+1
| | | | | | | | We only need the QSslCertificate which is always available. Task-number: QTBUG-85117 Change-Id: I32e2034060e610ac049d8e3b2a03660e9bf7e7a4 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Do not turn web auth offAllan Sandfeld Jensen2020-07-301-2/+0
| | | | | | | | | | | | Submodule src/3rdparty 0a4240a9..4a996760: > Fix building FIDO with gcc5 > [Backport] CVE-2020-6512: Type Confusion in V8 (3/3) Fixes: QTBUG-85117 Task-number: QTBUG-54720 Change-Id: I074831454b469c17a71f2ca75a075ee48157970d Reviewed-by: Tamas Zakor <ztamas@inf.u-szeged.hu> Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Convert native scancode on Windows to what Chromium expectsAllan Sandfeld Jensen2020-07-231-1/+8
| | | | | | Fixes: QTBUG-85661 Change-Id: I7cd8ed534d94d6be06f77b9b2d1779905655e772 Reviewed-by: Kirill Burtsev <kirill.burtsev@qt.io>
* Share linking config between webenginecore and pdfMichal Klocek2020-07-231-53/+4
| | | | | Change-Id: Ib06a0a1ec3372d483008cc0ac0ec211ec8316e0e Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Move webengine-noexecstack to buildtoolsMichal Klocek2020-07-231-10/+0
| | | | | Change-Id: I854034fd63c8847867fd7ec01d5c25781e7de5ef Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Replace Qt::MidButton with Qt::MiddleButtonEdward Welbourne2020-07-221-3/+3
| | | | | | | | | | | The latter has been the preferred name since Qt 4.7.0. (Pick back to 5.15 shall need to drop the test change, as the test was added to dev after it diverged from 5.15.) Change-Id: I3154ea1203e741cb337782d3374e02e15c5f209e Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> (cherry picked from commit 005a338f169b485077c248358e1cde96d22ae506) Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* Fix mistake from 78-based adaptationsAllan Sandfeld Jensen2020-07-211-2/+5
| | | | | | | | The options only need to allow httponly, it doesn't set it, and we shouldn't even forward canonical cookies that were excluded on creation. Change-Id: Ieec45734938c07a50ac03aa113a02a907bce689f Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Disable navigation on back/forward mouse buttons in Qt 5Allan Sandfeld Jensen2020-07-172-0/+10
| | | | | | | | Submodule src/3rdparty 809e16e4..840c8e5f: > Make navigation on back/forward mouse buttons optional Change-Id: I191f7781cf9b824b743b80a05a3e819a414ee546 Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* Add the cookie filter to URL requestsAllan Sandfeld Jensen2020-07-153-0/+52
| | | | | | | | | | Submodule src/3rdparty c91f4d20..809e16e4: > Add cookie filter to URL requests cookie headers > Use audio-manager app-name for MPRIS Fixes: QTBUG-85526 Change-Id: Icab26cad3cea8e2ee021a3e589f41bf0543d64fa Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* Remove ProxyingRestrictedCookieManagerListenerQtMichal Klocek2020-07-151-39/+1
| | | | | | | | Cleanup after a34b3a4e Task-number: QTBUG-85526 Change-Id: I23fd5f504937efa44964546a1f4b095efd9ad65f Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Make loading PDF view less racyAllan Sandfeld Jensen2020-07-141-0/+2
| | | | | | | | | There was some kind of race between loading as a plugin and this redirect. Task-number: QTBUG-84340 Change-Id: I57ac8fcae0c1de98b1fd3013d2b5299c85547cc0 Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* Parse forward and back mouse buttonsAllan Sandfeld Jensen2020-07-132-1/+17
| | | | | | | | It appears we have support for it on all levels. Fixes: QTBUG-85360 Change-Id: I68d03931197a3b883a1909e96096000fb84925bf Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* Remove the lieAllan Sandfeld Jensen2020-07-131-2/+1
| | | | | | | | | This line of code just hided illegal cookie store changes from being observed by our API. Task-number: QTBUG-85526 Change-Id: I044221f70b7628bd727879f11f46bfefe75ca2ca Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* Fix not working egl sync in compositor resource fenceMichal Klocek2020-07-092-6/+8
| | | | | | | | It seems this does not work already for a while. Add missing headers. Change-Id: I158519f69e2ce87fe6c84c03a6ac2ce178c20206 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Add pipewire detection and supportAllan Sandfeld Jensen2020-07-082-0/+17
| | | | | | | | Used for screensharing on wayland Fixes: QTBUG-85309 Change-Id: I7ec61611bb9e3f318a6a5bd3a43212f391766628 Reviewed-by: Kirill Burtsev <kirill.burtsev@qt.io>
* Remove some dead codeAllan Sandfeld Jensen2020-07-062-34/+0
| | | | | | | Was not used Change-Id: Ic87e35c12c8d6454ed10ca83dfba9ea732919be4 Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* Create an OpenGL 4.1 CoreProfile on macOS unless requested otherwiseMichael Brüning2020-07-064-0/+143
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Chromium has blacklisted OpenGL version prior to 4.1 on macOS. To re-enable hardware acceleration in WebEngine on macOS, set the default surface format to a 4.1 CoreProfile before creating the shared OpenGL context, unless the surface format has been set to a specific other version. According to https://support.apple.com/en-us/HT202823 , the newest Mac that only had support for OpenGL 3.3 was released in Mid 2011, so this should be okay on the majority of machines. If the user requests an OpenGL 3.2 profile, it will also work as the Cocoa QPA plugin enables sharing between 3.2 and 4.x contexts. If the surface format has been requested to be a version lower than OpenGL 3.2 or not a core profile, warn the user about the lack of hardware acceleration. To ensure that we have actually created native contexts for the requested profile and not a context backed by the Apple Software Renderer, we query the context native renderer ID using Cocoa methods. Task-number: QTBUG-81693 Task-number: QTBUG-75262 Change-Id: I94e2e9913c8481fa8db37eb8381a89769026c919 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* Reject permission request with invalid originKirill Burtsev2020-07-031-0/+10
| | | | | | | | | At least Push API is supposed to be disabled in incognito mode, which results in permission request with empty origin. Fixes: QTBUG-85116 Change-Id: Ie587013d135bf92a84779e6da87e12374f99bfdd Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* [macOS] Add utf-8 character set meta tag for HTML clipboard contentMichael Brüning2020-07-031-1/+8
| | | | | | | | | | | | This prevents unicode characters from becoming garbled when pasting the clipboard content into an application that uses the HTML content instead of the text data. This mirrors the behavior of Chromium's clipboard adaptation for macOS Fixes: QTBUG-75391 Change-Id: I033819a2caf3410509e90c9bc38c9830d184149d Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* Set application name based on source application nameAllan Sandfeld Jensen2020-07-022-0/+11
| | | | | | | | | | | | | | This makes it possible to tell the difference between multiple applications using QtWebEngine. Submodule src/3rdparty 15a42873..87e5a52b: > Pass through a new application name argument to utility processes > Fix libjpeg_turbo for ARM32 > Add missing include in certificate net log Fixes: QTBUG-85363 Change-Id: Ib5426d2e431eb3032f76270885c9cf2d83a75ac8 Reviewed-by: Kirill Burtsev <kirill.burtsev@qt.io>
* Avoid empty context menu in PDF viewerSzabolcs David2020-07-021-0/+2
| | | | | | | Simply add some page navigation items. Change-Id: I6da3ff1c1e56f0c3fbbd6eb5cd3b77f32e850862 Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* Replace qgetenv with qEnvironmentVariableAllan Sandfeld Jensen2020-06-304-9/+9
| | | | | | | | | This preserves unicode characters in the environment variable on Windows. Fixes: QTBUG-85054 Change-Id: I3352cc3db4ce8d7b9b352c1634e3239954780618 Reviewed-by: Kirill Burtsev <kirill.burtsev@qt.io>
* Fix double click event on flash contentTamas Zakor2020-06-301-0/+3
| | | | | | | | | | | The blink::WebInputEvent::kMouseUp event sets the WebMouseEvent::click_count to zero before the blink::WebInputEvent::kMouseDown event handling is completed. We need to keep the click_count value during mouse-up event. Fixes: QTBUG-84660 Change-Id: I2494f56b51674413d7c8b324c138abcb7c0f9186 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Allow force enabling QUICAllan Sandfeld Jensen2020-06-291-1/+4
| | | | | | | | Still disabled by default though Fixes: QTBUG-72497 Change-Id: I81f270f08f9e4941a0afd34a4cb7ac7cb5320a33 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Return valid path in Profile::GetPath() for incognito profilesAllan Sandfeld Jensen2020-06-296-20/+27
| | | | | | | | | | | | | Parts of Chromium depends on it for temporary directories it creates. This also changes the logic of depending on it being empty as indicating an in memory profile, so it required a bit of cleaning up. Note this does subtly change the return value of off-the-record profiles. Task-number: QTBUG-62957 Change-Id: Iec6e24556128c515fce27803171a766b8a9d92e3 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Initialize the extension bindings in g_driver_eglRomain Pokrzywka2020-06-251-0/+7
| | | | | | | | | | | This step is done in GLSurfaceEGL but missing in GLSurfaceEGLQt. The extension bindings in g_driver_egl are checked, among other things, when initializing DXVAVideoDecodeAccelerator, so we need them to enable hardware-accelerated video decoding on Windows with ANGLE. Change-Id: I6a650a0aafe3d4f870101d33d2117427c22304e7 Reviewed-by: Romain Pokrzywka <romain.pokrzywka@gmail.com> Reviewed-by: Michal Klocek <michal.klocek@qt.io>