summaryrefslogtreecommitdiffstats
path: root/src/core
Commit message (Collapse)AuthorAgeFilesLines
* Doc: Update Platform NotesKai Köhne2022-05-301-4/+3
| | | | | | | | | | Remove references to Qt 5, qmake (as build tool for Qt), and Visual Studio 2017 only. Change-Id: Ied2de9de91693f167c5fb22f007c203bce18b543 Reviewed-by: Michael Brüning <michael.bruning@qt.io> (cherry picked from commit 3b4ed3123fde1f6e6d47b004cb5a4795b0d64387) Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Fix local->remote user navigationAllan Sandfeld Jensen2022-05-261-3/+16
| | | | | | | | | | Specifically allow user initiated navigation of the mainframe. Fixes: QTBUG-103778 Change-Id: I4e3d6b4fb606bd0c3cf66e090fba3c97c8c535b4 Reviewed-by: Michal Klocek <michal.klocek@qt.io> (cherry picked from commit 2ba1f04b4589e5883a399b022b7795266c4d4646) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix leak if loader error is seen firstAllan Sandfeld Jensen2022-05-251-1/+6
| | | | | | | | | For some reason the proxied_loader_receiver can still be bound in this case. Change-Id: If0bbe181eca5de41e82eebaced412361fe12fb40 Reviewed-by: Michal Klocek <michal.klocek@qt.io> (cherry picked from commit ffb831d9896dcdd3d469fdbeee407d96d631dbda)
* Fix read-after-free on EGL extensionsAllan Sandfeld Jensen2022-05-244-16/+16
| | | | | | | | | Cache the read extensions as an std::string, since the returned C string may be not be permanent. Change-Id: I856b2b784ab4027da25996b2bf741b30cda10e05 Reviewed-by: Michal Klocek <michal.klocek@qt.io> (cherry picked from commit fd2fc0d2a86f39d563720563555ca6319f8ab223)
* Keep page's zoom level on loading new urlsKirill Burtsev2022-05-164-2/+17
| | | | | | | | | | | | | Ammends d236c5a8a3. Zoom level was set as a temporal one, which is invalidated each time when a renderer process or widget are changed (on new navigation, for example), so it needs to be reapplied. Fixes: QTBUG-101030 Change-Id: Iecff9686fbe2b79e99b46f67cab92f66127be085 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Michal Klocek <michal.klocek@qt.io> (cherry picked from commit 1e27d42a8071532b6cc30a9bcc5f700edc56952a) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix touch input for widget's delegate for html popupKirill Burtsev2022-05-121-6/+0
| | | | | | | | | | | | | | | | | | | | | | Earlier fix cf8bc1899a introduced the logic, where all system synthesized mouse events are ignored. But after c56169f7a1 this is undesired since for widget with Qt::Popup flag touch input is ignored by QWidgetWindow, and input is expected to be delivered to popup as synthesized mouse event (either synthesized by Qt or for capabable devices by system). So allow system synthesized mouse events to let through for popup. Synthesis by Qt is suppress automatically for accepted touch event, it's only system event are still delivered unconditionally, so still ignore them for widgets impl. Global ignore in core is not needed, since QQuickWidget ignores system synthesized events unconditionally. Fixes: QTBUG-79254 Change-Id: Ie8f55eb8b9c2677d8a98381effb3cb31d9388ac7 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> Reviewed-by: Martin Negyokru <negyokru@inf.u-szeged.hu> (cherry picked from commit 1f6495af6331f5504de9d3f7e43f5202345c7a8c) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* QtWebEngine: replace qSwap with member-swap where possibleMarc Mutz2022-05-113-3/+3
| | | | | | | | | | | | | | | | qSwap() is a monster that looks for ADL overloads of swap() and also detects the noexcept of the wrapped swap() function, so it should only be used when the argument type is unknown. In the vast majority of cases, the type is known to be efficiently std::swap()able or to have a member-swap. Call either of these. As a drive-by, unify all member-swap()s to be noexcept. Task-number: QTBUG-97601 Change-Id: I9184cab0ed74a1b32d62cf7c83dc1f1b7814c784 Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io> (cherry picked from commit 99b81083ccee7e1bd28749b1066599670713cefe) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Find CUPS for printing on LinuxAllan Sandfeld Jensen2022-05-071-1/+2
| | | | | | | | | | Just verify it is there. Fixes: QTBUG-100300 Change-Id: If7d13afd788086cab13bab471a4dc415fa470ece Reviewed-by: Michal Klocek <michal.klocek@qt.io> (cherry picked from commit 70f9a3b0887dc633ee2efb218bee5625a0c4e7ae) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Support cross-compilation on macOSMichal Klocek2022-05-043-4/+5
| | | | | | | | | | | | | | | | | | | | | | | So far we only supported a cross-compiling with universal builds, however qmake also supports 'regular' cross compilation (by setting '-device-option'). This is semi-supported with qt-cmake as we need to provide additional configure defines like: * CMAKE_OSX_ARCHITECTURES=arm64 * CMAKE_SYSTEM_NAME=Darwin * CMAKE_OSX_DEPLOYMENT_TARGET=10.14 It might seem to be a far fetched issue, however in case of webengine doing the cross compilation for only one architecture allows to save compile times when testing only arm64 builds. Note we do not need to create gn toolchains for that case, however unlike universal builds it requires host qt build for tools. Change-Id: Ica8470fdd4cad4866c1470e0403ffd019eaf39a6 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> (cherry picked from commit ba74eaba11b2df9d6c2b23f7595e7bb1a03e911e) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix navigation to non-local URLsAllan Sandfeld Jensen2022-05-021-1/+8
| | | | | | | | | They are passed in another part of the DropItem object. Task-number: QTBUG-102192 Change-Id: If52a88ce2688c25ea0edcc0d1e8f962f2cdd29dd Reviewed-by: Kirill Burtsev <kirill.burtsev@qt.io> (cherry picked from commit 742e6786aeb500ef9bc850bf84803d5f388e3927)
* Fix granted file access after local/remote access cleanupAllan Sandfeld Jensen2022-04-301-3/+17
| | | | | | | | | | | We forgot to check for files specifically granted access to. This blocked a number of features including dropping local files. Task-number: QTBUG-102192 Change-Id: I5d34d9ba5351ec179df5896e64cc95c5481c7dc2 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Kirill Burtsev <kirill.burtsev@qt.io> (cherry picked from commit 9a44b6ea5c60f83d841881b5ddbbaba79228fdea)
* Fix fatal error in getCurrentKeyboardLayout()Martin Negyokru2022-04-131-19/+6
| | | | | | | | | | | | | | | | FATAL:xkb_keyboard_layout_engine.cc(640)] Keymap file failed to load: dk(polytonic) Remove unnecessary tokenization of XKB layout. Parsing of layout configuration is already handled by XkbKeyboardLayoutEngine::ParseLayoutName(). Fixes: QTBUG-101201 Task-number: QTBUG-92971 Change-Id: Ia4f09ed99eb82064a3b12e14eda69a6e0e12b0dd Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> (cherry picked from commit 69cd28b820ba8f8c578591b98f3ad88b00efcef3) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Do not store CF_HTML header in QMimeDataPeter Varga2022-04-081-1/+10
| | | | | | | | | | | | | | | | | | QMimeData doesn't handle it. Keep "<html>\r\n<body>\r\n<!--StartFragment-->" and "<!--EndFragment-->\r\n</body>\r\n</html>" tags because they are required for proper pasting of an HTML fragment on Windows. Fixes: QTBUG-100806 Task-number: QTBUG-92539 Change-Id: I9e8a2f9592e56b9acc011b7640e589c43b558543 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> (cherry picked from commit 91ef7c19f47a97a82a2f143c99dfd3b885d65729) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Resolve status code for http response with failureKirill Burtsev2022-04-083-13/+29
| | | | | | | | | | | | | | All non-default https status codes are hidden under net::ERR_HTTP_RESPONSE_CODE_FAILURE error of network stack. Handle successful load case and set the real http status code for error. Also set localized load error description only for http codes. Fixes: QTBUG-46860 Fixes: QTBUG-61100 Task-number: QTBUG-94963 Change-Id: I81e083441d1814fb530f39ea3da1c4ef52b7da59 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> (cherry picked from commit a4e32eac5cb858ffa5668b01cef10cc42854713b)
* Fix location of WebEngineProcess on build machines for framework buildsMichal Klocek2022-04-071-0/+8
| | | | | | | | | | | | | | | | | | | | | | For some unknown reason we had built qtwebengine process in 'libexecdir' and installed later into 'libdir' for module frameworks builds. Unfortunately this can not work if you run tests on same build machines as bundle for webenginecore will be loaded form build dir and not form installation dir resulting in load of webengineprocess form incorrect 'libdir'. Set simply correct build paths, so they match install ones: framework build uses 'libdir' and non framework one 'libdirexec'. Remove bogus copy line as it is no longer needed for super builds. Copy resources locally to build tree so local build tree test can use them during execution. Change-Id: Ib61ac5659330386ca43c9e403d5fe4d5e214158f Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> (cherry picked from commit ef685c981d4245b7c704a9d566b05db064756c1f) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix include guardAllan Sandfeld Jensen2022-03-251-2/+2
| | | | | | | Change-Id: Iedb95f6c7128834a701e4c5549dd0fec44b0ee8f Reviewed-by: Kirill Burtsev <kirill.burtsev@qt.io> (cherry picked from commit 038c86c6d8c85e0a101b8d2b7fc35a995c8d1d40) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Avoid crashing on context free web actionsAllan Sandfeld Jensen2022-03-251-15/+15
| | | | | | | | | | | If a web action that depends on a context is called, do nothing instead of crashing. Fixes: QTBUG-101724 Change-Id: I7a0040a58e9dc7fa14f0cae71cf1bcd086b61c54 Reviewed-by: Kirill Burtsev <kirill.burtsev@qt.io> (cherry picked from commit e8e381119ca5b08add50d13ab9d275d9ab55471c) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix wrong assumption about focus in/out event deliveryMichal Klocek2022-03-181-3/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In 2947d79d assumption was made that we never get focus in event for popup reason. Unfortunately this is not true as simply creating window menu and switching between webengineview will trigger the issue. Moreover, focus in and out events with popup reason do not mean change of focus, as in qtbase: if (QWidget *fw = active_window->focusWidget()) { if (fw != QApplication::focusWidget()) { fw->setFocus(Qt::PopupFocusReason) } else { QFocusEvent e(QEvent::FocusIn, Qt::PopupFocusReason); QCoreApplication::sendEvent(fw, &e); } } Therefore it is safe to ignore focus in/out events with popup reason. Note that the fact that ASSERT got not triggered for context menu is due to another race condition issue in qquick event stack delivery. This commit amends 2947d79d8210a7ae4ce2bc02e058628e66011be3. Fixes: QTBUG-101706 Change-Id: I3e761fe5d8054aed72461eba7981c69755877d1b Reviewed-by: Kirill Burtsev <kirill.burtsev@qt.io> (cherry picked from commit 0625a1e16b8698d9c344548e4e929fb385b6a542) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* QWebEngineLoadingInfo: Fix include conventionFriedemann Kleint2022-03-161-1/+1
| | | | | | | | | Amends da019632bfc0227e2d0d0cc676a80a352fc27a62. Change-Id: I22dce54dca802d96aec2f4cca68df0330d10fede Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> (cherry picked from commit d4927a526dfd992ac5ffe053d9e63e8581c2a8eb) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Add test for blocking of remote contentAllan Sandfeld Jensen2022-03-101-2/+1
| | | | | | | | Task-number: QTBUG-50686 Change-Id: Ie176bece1a44a6df608646e91171d02ceeea7e8f Reviewed-by: Michael Brüning <michael.bruning@qt.io> (cherry picked from commit b8603c148c6cd53bdd82d0b712971cfc1b747780) Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Check for loaded opengl library in case-insensitive mannerMichal Klocek2022-02-281-1/+1
| | | | | | | | | | | | | | After a14f2d59141e in qtbase library returned by GetModuleFileName can be "opengl32sw.dll" or as in ci "opengl32sw.DLL" as file extension is filled now by the winapi function. Make comparison case insensitive. Fixes: QTBUG-101084 Change-Id: I0816bbef21be40a786246ae9d43f031c5487a4f9 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> (cherry picked from commit 1a50992c2bb56825ab085b8d8343e1effc8a3e8d) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Minor. Fix context logMichal Klocek2022-02-171-2/+2
| | | | | | | | | | Log context before initialization as it can fail/crash and we do not see what failed. Change-Id: Ib47906c25bf8fb55c6c043ba5fadce9b354a87fc Reviewed-by: Michael Brüning <michael.bruning@qt.io> (cherry picked from commit 3ddc6f951120fcbde903e650245849bde554b455) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix using system libxsltAllan Sandfeld Jensen2022-02-121-0/+4
| | | | | | | | | | | The webengine-libxml settings should set both use_system_libxslt and use_system_libxml Fixes: QTBUG-100500 Change-Id: I1c731530a56e0ca9a49b91e1d6e095d8b416dd8d Reviewed-by: Michal Klocek <michal.klocek@qt.io> (cherry picked from commit 18523483945756e786f5d6e82cb00be2defd302d) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Correct documentationAllan Sandfeld Jensen2022-02-101-2/+2
| | | | | | | | | WebEngine was first in 6.2 Change-Id: Id8e6e438e5f4cfd7b28ed8f821f503125033ae62 Reviewed-by: Michael Brüning <michael.bruning@qt.io> (cherry picked from commit bb3d7e528b27282727aba2de68d8630a24b2856b) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Improve local scheme access rulesAllan Sandfeld Jensen2022-02-116-43/+57
| | | | | | | | Task-number: QTBUG-96849 Change-Id: Ieb24da12a61e5e37b29ccf2d1a11b7bd863b842e Reviewed-by: Michal Klocek <michal.klocek@qt.io> (cherry picked from commit 3071de1e07be28d763164a037d946281146bf31d) Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Fix crash on WebEngine(View|Profile).userScripts.collection getKirill Burtsev2022-02-101-0/+1
| | | | | | | | | | | | | | | | To create a javascript list on 'collection' method qml engine is needed for a qml scope, but it's only available for objects, which are created by the QML Engine itself. The only object in hierarchy of classes is an actual WebEngineView, so get it from there on collection init. Also implement delayed initialization of scripts collection for the usage of default profile through WebEngine singleton, and for the reason that it's not really needed until really asked by user code. Fixes: QTBUG-96597 Change-Id: I61e76652a5d0fd5609070fd541816503908f2dc8 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> (cherry picked from commit f5fbc34fc16fc9c6e7f7e8bbbf60f5b343b9466d) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Introduce gn complete static lib target for qtpdfMichal Klocek2022-02-071-2/+2
| | | | | | | | | | | | | | | | | | | | | | | With 6.x we have gn-cmake integration which allows now in case of static builds to switch gn target output to static_library with 'complete static' option instead of shared_library. This way we can avoid installing dependencies in form of internal static Chromium archives as it was done in 5.15 in case of static builds. Unfortunately 'complete static' option can not be used with QtWebEngineCore build as it will exceed 4Gb static archive limitation on Windows, however it will work fine with QtPdf. Note the qtbase 3rdparty static libs have to be still installed in case of qt static build, this patch only eliminates need for Chromium specific ones. Task-number: QTBUG-88614 Change-Id: I6fc4ce48c79a1631b013d0b29c190c62280f7304 Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu> (cherry picked from commit 8e549e6e0ccd6078b3bd2e38b87337fd367dec55) Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Fix accumulation of compositor-observer bindings for skia-on-glKirill Burtsev2022-02-043-9/+2
| | | | | | | | | | | | | | One of Compositor's derived classes, DisplaySkiaOutputDevice, was missing call to 'unbind' from its observer, leading to not releasing binding from global cache on destroy. Since unbind is done on destroy, remove all explicit calls to unbind from derived classes, and just do them in their base implementations. Ammends b117909825. Change-Id: I75c909eaa22ca1946ad67aa5093a8ee268c3562b Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Michal Klocek <michal.klocek@qt.io> (cherry picked from commit 16b2976e2c983cabe6011cd732e3ec46e3402d22) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Revert "Find GIO like qtbase does"Allan Sandfeld Jensen2022-02-031-2/+2
| | | | | | | | | | This reverts commit cce03b277715210d152d714a7f46ce7947c812d3. Reason for revert: Only working in 6.3 and dev Change-Id: I4fc1fcaabab6b5f21655980d67e77ed3a6b61181 Fixes: QTBUG-100435 Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
* Do not list native spellchecker feature on LinuxAllan Sandfeld Jensen2022-02-021-2/+5
| | | | | | | | | | | And make the condition more general as it is available on both macOS and Windows. Fixes: QTBUG-100293 Change-Id: If430eaa219f910bc686dc0859178b52a0d0c3fb3 Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu> (cherry picked from commit a44849f7298de667dd0254f4a19546ffa40552be) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Use IsSameDocument() rather than IsLoadingToDifferentDocument()Benjamin Terrier2022-01-281-1/+1
| | | | | | | | | | | | | | For certain types of redirect navigations (for example, with a non-default useragent set) 'IsLoadingToDifferentDocument()' can be unexpectedly false. In such cases 'navigation_handle->IsSameDocument()' also returns false. Fixes: QTBUG-94924 Change-Id: Ie2c17127e1a00ffc515829526320ba2f71d45af5 Reviewed-by: Kirill Burtsev <kirill.burtsev@qt.io> (cherry picked from commit 8b5e3a46f253cd82dc48bc20c4233f1bf79fcb87) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Add xkbfile to pkgconfigAllan Sandfeld Jensen2022-01-201-4/+3
| | | | | | | | | | To get the correct includes if they are less standard Fixes: QTBUG-99890 Change-Id: Ibd751d46dce7e00e4ce8433549e778d4814dae30 Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu> (cherry picked from commit 52f0ca90445c633c68694fde84b4630a13c3c14e) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Find GIO like qtbase doesAllan Sandfeld Jensen2022-01-191-2/+2
| | | | | | | | | | | | Otherwise it can conflict and cause issue on reconfigure Change-Id: I3e7756b4720bc5a1e82ef0f327b8c9dbc76667ec Fixes: QTBUG-99669 Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io> Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> (cherry picked from commit 0b6310bf48cfe9772be6ca2b51c685acce3f4ba6) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix printing PDF filesSzabolcs David2022-01-193-18/+45
| | | | | | | | | | | | Delegate printing task down to the guest WebContents if any is present. Also update PrintWebViewHelperDelegateQt to find the plugin element properly for printing. Task-number: QTBUG-98941 Change-Id: I81004a2275e0870a17565af527b1450472afb24b Reviewed-by: Michael Brüning <michael.bruning@qt.io> (cherry picked from commit 455efe7ef204c6cd8de72b9b1f922f1681f58589) Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Do not override signal handlersAllan Sandfeld Jensen2022-01-181-0/+1
| | | | | | | | | | We used to have this, but it got dropped at some point in an adaptions. Fixes: QTBUG-99263 Change-Id: I3bf86a1b42edca0cd792723c85d7dcb7877fea37 Reviewed-by: Michal Klocek <michal.klocek@qt.io> (cherry picked from commit fbaab46becbf5ea063a8b4a01abf8cd1d4a1725d) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix inspector overlayAllan Sandfeld Jensen2022-01-061-0/+2
| | | | | | | | | | Was missing resources that had moved Fixes: QTBUG-99526 Change-Id: I68b05b9de3dbd6c6460e5495a939e2599623a047 Reviewed-by: Michal Klocek <michal.klocek@qt.io> (cherry picked from commit 6617cb8edb51bce85861e44035948d8f634c985b) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Always generate printing buildflagsAllan Sandfeld Jensen2022-01-051-3/+1
| | | | | | | | | | We include them unconditionally Fixes: QTBUG-99511 Change-Id: I4d9ebbf5777099ade38740ceb41532f0088df4c0 Reviewed-by: Michal Klocek <michal.klocek@qt.io> (cherry picked from commit 7720aa45fa8419da4c90ffed9954fbf7502d062e) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Cleanup code and clang build warningsKirill Burtsev2022-01-0416-62/+18
| | | | | | | | | | Fix build noise as reported by clang for issues like api deprecation, unused variables, sign/unsigned mismatch and other non critical issues. Change-Id: I4fba25406eea8170e3283c42e908ae86bd512e3a Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> (cherry picked from commit 02d58a067fb5f0db32c254e783170f9f283aeb9d) Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Fix headers in GN sourcesAllan Sandfeld Jensen2021-12-221-4/+2
| | | | | | | Change-Id: Ib2faa3e0242799e1088d4ec7c610fa89a4d15bbb Reviewed-by: Michal Klocek <michal.klocek@qt.io> (cherry picked from commit 540b1cadb1888a9adde8cf338fcdbd8630423c0b) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix race condition on layout (take2)Michal Klocek2021-12-092-26/+10
| | | | | | | | | | | | | | | | | | | | | Even if layout is 'meaningful' it can still require update before toPlainTextSync call can proceed. Simply wait for frame being loaded in stead of tracking layout update. Depending on DidLoadFinish will brake default toHtml call for empty not loaded page, therefore return expected value if there is no load. This fixes crashes/asserts on certificateError (stacktrace in bug report). Remove blacklist on certificateError as bad certificate is back on line and toPlainTextSync works without issues. Fixes: QTBUG-97414 Change-Id: Ib702bbe813f6061eef446e2d87d7e9e455d715c5 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> (cherry picked from commit 1cf45eed088bd1ef1c89a9812c6f69d16bce56f7)
* Fix crash with disabled geolocation on macOSPeter Varga2021-12-094-2/+60
| | | | | | | | | | | | | | | | | QtWebEngine uses custom LocationProvider for geolocation. If geolocation is disabled, Chromium fallbacks to NetworkLocationProvider. NetworkLocationProvider uses GeolocationSystemPermissionManager and tThere is no nullptr check for the manager instance so QtWebEngine has to provide it. This fix implements a FakeSystemGeolocationPermissionManager what is meant to be used only on macOS if geolocation is disabled. LocationSystemPermissionStatus is always set to denied by the fake manager. Change-Id: I25d51c9ce8911b95ff69cc72bc6aae7023e7edbe Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> (cherry picked from commit ca1074f7d0b91ccb9290acbfe51ecab54ad2efb9)
* Update documentationAllan Sandfeld Jensen2021-12-081-2/+0
| | | | | | | | | | The signal is updated much faster for paused media now. Fixes: QTBUG-98918 Change-Id: Ifa3b54e212436a7c93e101dc244d7edcbf473b63 Reviewed-by: Michal Klocek <michal.klocek@qt.io> (cherry picked from commit b6099cd9d1efab2af4a38476b3f543796f26f065) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix race condition on layoutMichal Klocek2021-12-012-5/+35
| | | | | | | | | | | | | Calling some methods without 'meaningful' layout when render frame is visible tiggers at the best some DCHECKS. Therefore if frame is visible wait for 'meaningful' layout. This fixes some flaky tests on toPlainTextSync call. Change-Id: I746a1c436798b440c59f9b8b4a1d297e3fa7e56d Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> (cherry picked from commit 1b8aa58a618eee23c4fd23b4fb51667fd8a3f2b8) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix build with the latest qtbasePeter Varga2021-12-011-0/+1
| | | | | | | Change-Id: I66a3536ecaa2d5dded5a645c46f05c559b90eda4 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> (cherry picked from commit da019632bfc0227e2d0d0cc676a80a352fc27a62) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Do not access accessibility from qt post routinesMichal Klocek2021-11-234-2/+17
| | | | | | | | | | | | | | | | | | | It seems accessing accessibility from qt post routines ends badly since caches are gone already. Add closingDown() function to web context, which is similar to QCoreApplication::closingDown(), however return true on post routine. Guard delete accessibility calls. Note the widget part is not necessary, but added for completeness, since only qml can release profiles due to garbage collection. Fixes: QTBUG-90904 Change-Id: Ic0e7115cd17eb58f3d58f70fefbc197dfb7a6493 Reviewed-by: Michael Brüning <michael.bruning@qt.io> (cherry picked from commit 89bb3c97eee9cd4bf9fb536f024715e606e49ae0)
* Add CF_HTML clipboard format handlingPeter Varga2021-11-193-0/+189
| | | | | | | | Fixes: QTBUG-92539 Change-Id: Iece974e7b045bd793ceb8870f370803bf2524c33 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> (cherry picked from commit 74021bfcb8f3937e960e76c39d06f5a2a6304673) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Use new x11 native interface to query xdisplayMichal Klocek2021-11-181-3/+5
| | | | | | | | | | | | | | | | | | | | | | The call to nativeResourceForScreen can return egl native display handle if called with "display", since it gets mapped to XLibDisplay but egl device intergration can return EGLDisplay. This is not the case for nativeResourceForIntegration. Use new native QX11Application interface to query for display, note there is not need to use nativeResourceForScreen for "display" anyway since qt does not support multiple x connections to different displays. This fixes places where code queries "display" and bails out if it is null. Fixes: QTBUG-97472 Change-Id: Ibc5f8f96e612389bfa24a81268202c9e47a7580b Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> (cherry picked from commit 23cc5bb2588100c6053d9d11b20778724cdbd6e7) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix crash in Quick file system access dialogsSzabolcs David2021-11-171-1/+1
| | | | | | | | | | | | | In Quick examples, providing any answer to ui::SelectFileDialog::Listener results immediate destruction of FilePickerController and its m_isHandled flag remains false before the controller is destroyed. An "unhandled" controller calls reject() in destructor, so the controller will be answered twice. Change-Id: Iaff5b0f4f54b0b11a447ac624f5652e592a88e6e Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> (cherry picked from commit dfa69ea39fd524ef54b4a822d5a3163749d40ea5) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix proprietary codes feature referring to qmakeMichal Klocek2021-11-161-3/+4
| | | | | | | | Fixes: QTBUG-97926 Change-Id: I2abba9044d64765fca48d987c70494792529f6ca Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> (cherry picked from commit 3a0f20bfc896008e825a51208bb978d4e192a180) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Add qmake profile naming changes to docsMichal Klocek2021-11-161-0/+7
| | | | | | | | Task-number: QTBUG-97836 Change-Id: If32e78144695cefd5ff6092bfd3b845c04891dd7 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> (cherry picked from commit 5747735b4958983cdf589a0b6a2ffb1d26f55b1b) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>