summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Remove default qwebenginesettings getterMichal Klocek2020-09-023-23/+4
| | | | | | | | | | | Remove defaultSettings() from qwebenginesettings and drop dependency on qwebenigineprofile in qwebenginesettings, let's see if we can also get rid of default profile later. Remove deprecated method globalSettings(). Change-Id: Ibccca50af237ed6a3dd32137d34f8e7e0e7357f3 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Remove usage of QObjectPrivate from pdf apisMichal Klocek2020-09-024-109/+67
| | | | | | | | | QtPdf is still in tech preview, remove QObjectPrivate dependency from api. Change-Id: I83ad2e8ef62d5b701f1e9fa2221b27e76984ca4e Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* Add missing const ref to certificateError in qmlMichal Klocek2020-09-021-1/+1
| | | | | | | This was refactored by mistake when changing the c++ api. Change-Id: If04c59ce7f33e59426ef0ea7e9585008449160c6 Reviewed-by: Kirill Burtsev <kirill.burtsev@qt.io>
* Remove QT_NO_SSL checksMichal Klocek2020-08-287-29/+3
| | | | | | | They are not longer needed. Change-Id: I15967d3b4ffcb5c64ec64aedcf55069ccb7697b1 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Remove duplicated enums for certificate errorsMichal Klocek2020-08-284-97/+55
| | | | | | | Add missing CertificateSymantecLegacy. Change-Id: I395f0c4a8c69fe3e0c303a13a3cbc077c123d26d Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Improve QWebEngineCertificateError apiMichal Klocek2020-08-286-48/+23
| | | | | | | | | | | | | | | | | | | | | | * remove const ref from QWebEngineCertificateError Q_GADGET is a value type, QWebEngineCertificateError is pass as const reference from api. This is not so useful since, in qml this will be anyway copied and for c++ this is not useful since reject, ignore, defer methods are all const. Therefore simply pass it by value. * make consistent naming defer(), acceptCertificate(), rejectCertificate() * remove properties 'differed', 'answered' which are use internally, user knows if he calls functions. * error.errorDescription -> error.description() * error.error() -> error.type() [ChangeLog] In QWebEngineCertificateError use acceptCertificate() instead of ignoreCertificiateError() Change-Id: I9ffa500a0a455d98445b066252dd283872740731 Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* Rename QWebEngineDownloadItem -> QWebEngineDownloadRequestMichal Klocek2020-08-1814-298/+267
| | | | | | | | | | This fits better with other QWebEngine*Requests. [ChangeLog] QWebEngineDownloadItem is now QWebEngineDownloadRequest, also in qml. Change-Id: I506e9fac746b4f23ac0936c2fbe1c7472f4fda36 Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* Remove obsolete, deprecated api from qwebenginedownloaditemMichal Klocek2020-08-1810-204/+8
| | | | | | | | | | This patch removes: * path() * type() * DownloadType enum Change-Id: I3e29f9e8ce9e39b015c57cb7005e0290d1496291 Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* Fix compilation after 4e400369 in baseMichal Klocek2020-08-181-5/+5
| | | | | | | | | This change requires follow up to implement conversion between tablet events in qt and motion events in chromium, since touch events in qt come from 'finger'. Change-Id: Idf8ebd48dfdcd9c1618cbb8d5a621843656b145f Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Update dependencies on 'dev' in qtwebengineAllan Sandfeld Jensen2020-08-181-1/+1
| | | | | | | | | Temporarily disable qttools and qtwebchannel dependencies as qtquickcontrols2 is 3 commits ahead in its qtdeclarative dependency. Change-Id: Ic2a1b472300e1fa1545f5d553e4b909c07c88ba9 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Move QWebEngineDownloadItem to QtWebEngineCoreMichal Klocek2020-08-1716-1242/+531
| | | | | | | | Use QWebEngineDownloadItem class in qml instead of QQuickWebEngineDonloadItem. Change-Id: I0fc9595f8675c9b082be873adead6de3df1e669d Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* Cleanup namespace issues in coreMichal Klocek2020-08-1421-69/+79
| | | | | Change-Id: Ifdffc556278fa5d133da1896600a71248662e9fa Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Move WebEngineCertificateError docs to own fileMichal Klocek2020-08-142-106/+133
| | | | | Change-Id: I097666c7b55d1a49ec3f88662d73063f13ce44a2 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Simplify WebEngineCertificateErrorMichal Klocek2020-08-1413-158/+73
| | | | | | | | Removes certificateErrorControllerPrivate, moves error handling logic to core. Change-Id: I050f73f1e37eb9ae39ad471fe1673d2b6140cf89 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Move QWebEngineCertificateError to core and use it in QMLJüri Valdmann2020-08-1419-546/+245
| | | | | | | | Update qml certificate error test. Task-number: QTBUG-74585 Change-Id: I9383052bd1e37160d03e3d66e8f2e4a749023736 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Unify certificate error handlingMichal Klocek2020-08-143-17/+9
| | | | | | | | | | | | Before we move the certificate error to core, unify error handling between qml and widgets. [ChangeLog] WebPage::certificateError does not return bool it is enough to call defer, ignoreCertificateError() or rejectCertificate(). Change-Id: I14be40f1ab6b4cbded550260d66152f51cf47de2 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Fix almost all deprecation warningsJüri Valdmann2020-08-1315-49/+54
| | | | | | | | | | | | | | | | | | | | | | Replace QString::fromUtf16({const ushort * -> const char16_t}) QMap::{unite -> insert} Q{Hover,DragEnter,DragMove,Drop}Event::{posF() -> position()} Q{Hover,DragEnter,DragMove,Drop}Event::{pos() -> position().toPoint()} Q{DragEnter,Drop}Event::{mouseButtons -> buttons} Q{DragEnter,Drop}Event::{keyboardModifiers -> modifiers} QMouseEvent::{localPos -> position} QMouseEvent::{windowPos -> scenePosition} QMouseEvent::{screenPos -> globalPosition} These should all be just renames without any change in behavior (save for some floating point conversions). The one remaining issue concerns the deprecation of binary JSON in qtbase, which is recommended to be replaced with CBOR. Change-Id: I8f3b533242fe9a58c08c2b09ff5d0bdbbfa6dd17 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Split docs in webengine qmlMichal Klocek2020-08-124-141/+222
| | | | | | | | | Move some qml type docs out of webengineview_lgpl, these are separated types, moreover they do not belong to initial lgpl import of webkit docs. Change-Id: If90f68b8c0c163081a2d535645295e4e4ecf45f8 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Fix api unfilteredLinkUrl -> linkUrlMichal Klocek2020-08-125-10/+10
| | | | | | | | | | | Before previous change unfilteredLink(private) was returned as linkUrl(public), however linkUrl(private) was also used, therefore when merging context menu data classes functions were refactored to unfilteredLink and filteredLink to prevent braking the logic, now fix the public api as it was before. Change-Id: I84e0444b32aa344ed0401b58b5a8144a6fb58441 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Merge all webenginecontextmenudata wrappers into one classMichal Klocek2020-08-1227-1425/+1012
| | | | | | | | | | | | | | | | | | | | | | Introduce new class qwebenginecontextmenurequest in core which merges: * qquickwebenginecontextmenurequest * qwebenginecontextmenudata * implictly shared webenginecontextdata Unfortunately new class has to be QObject, since we want to reuse it qml. Q_GADGET can be used only as a value type, however we need to know if request is accepted or not in qml, therefore it must be passed as pointer. Since we use QObject now, class is no longer implicitly shared, however we only allocate request once and reuse the object for every new request (it is still copied in qml just to keep it aligned with other request handlers) [ChangleLog] QWebEngineContextMenuRequest is replacement for QWebEngineContextMenuData Change-Id: Ib387ec2065361a4bacc20675ca7352ab75a0e436 Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* Move QMenu handling from page to viewMichal Klocek2020-08-127-262/+272
| | | | | | | | [ChangeLog] createStandardContextMenu is moved from QWebEnginePage to QWebEngineView Change-Id: I08a7a1f7e55ca7396547006523cdec250a3ad117 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Unify ozone platform selection in surfacefactoryqtMichal Klocek2020-08-051-7/+15
| | | | | | | Use shared context to select between glx and egl. Change-Id: I6504400b9a2e2d23952c6da22fd42cf547596146 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Minor. Move glImplementation setting related code to one placeMichal Klocek2020-08-051-31/+26
| | | | | Change-Id: Ib795fb8ca26c7adb0bdb28a90069e37f4802c1d7 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Remove setting surface format for qquickwidgetMichal Klocek2020-08-051-32/+0
| | | | | | | | | | | | | | QQuickWidget uses QSGDefaultContext::defaultSurfaceFormat() in initialization, which is based on QSurfaceFormat::defaultFormat() Removed code was overriding format based on shared context format for some cases. However defaultFormat is always a requested format and not actual supported one by hardware. Since we always create share context simplify the logic and try to catch all the surface format related issues in QWebEngineCore::initialize() and abort. Change-Id: I940601b5cd873ab5273baa863aa4e7277be448a6 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Fix not working acceleration on MacMichal Klocek2020-08-053-1/+12
| | | | | | | | | Since 6ff79478a in base we no longer are able to query for 'cqlcontextobj' add helper call for CGLContextObj. Change-Id: Ie1992ab7a0e525c2c6b5f9a67ce354a493e993e8 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io> Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* Rewrite native context handling for QtShareGLContextMichal Klocek2020-08-054-101/+207
| | | | | Change-Id: Ie880978f2122528789d7ec23b24bb8259eee0fb8 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Dump info about webenginecontextMichal Klocek2020-08-051-1/+33
| | | | | Change-Id: I96a64d83f6bb4ee7c6dfcc9be52ecc5f9378219b Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Rewrite glType detection a bitMichal Klocek2020-08-051-93/+71
| | | | | | | | Since 6ff79478 in qtbase there are no more natvie contex classes, so do not use those. Change-Id: I6ef277f4fbd889618a4848374ed76fbafc9451d7 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Move macOS surface format check to initializeMichal Klocek2020-08-043-101/+89
| | | | | | Change-Id: I08171340c8b5de3b38f17c95a70e3a8931394057 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* Remove workaround for incorrect version of surface format macOSMichal Klocek2020-08-041-10/+0
| | | | | | | | This should be already fixed. Task-number: QTBUG-63180 Change-Id: I766cd67f83e3344c5072e0ed3bbf03be3ea35e22 Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* Support OpenGL over EGLMichal Klocek2020-07-302-4/+4
| | | | | | | This enables wayland with opengl contex. Change-Id: I4214cfaebb205c54394ef382cd58fbbcfdc5f1db Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Merge remote-tracking branch 'origin/5.15' into devMichael Brüning2020-07-283-3/+2
|\ | | | | | | Change-Id: Ie9970a657f7693c190405039c9b713e24dbd4041
| * Do not evaluate NINJA_TARGETDEPSMichal Klocek2020-07-272-3/+2
| | | | | | | | | | | | | | It is just a file path. Fixes qmake linking when chromium changes. Change-Id: Ib2f0976a6dc3c90c415b69e1876706bc2397d134 Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
| * Update ChromiumMichael Brüning2020-07-271-0/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Pulls in the changes: 7e405525e92 [Backport] CVE-2020-6530: Out of bounds memory access in developer tools 99fe8bdb44a [Backport] CVE-2020-6531: Side-channel information leakage in scroll to text 52367e8e753 [Backport] Security bug 1065731 d61a4348c47 Fix WebAuth build 9222c8b73ab [Backport] Security bug 1054229 c3d5696193a [Backport] Security bug 1065122 9b27a193c63 [Backport] Dependency for CVE-2020-6534 0b8e0d451a3 [Backport] CVE-2020-6534: Heap buffer overflow in WebRTC 0a4240a9c42 FIXUP: Fix WebAuth build Task-number: QTBUG-85606 Change-Id: I2995f9c3ea4b63fc8af1699a377c2d74359c67a8 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Merge remote-tracking branch 'origin/5.15' into devMichael Brüning2020-07-2446-225/+494
|\| | | | | | | | | | | | | | | | | Conflicts: src/core/compositor/delegated_frame_node.cpp src/core/core_chromium.pri src/core/render_widget_host_view_qt.cpp Change-Id: I9387151e9647c87fc387095e7b6d8d66560cdf71
| * 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>
| * Cleanup linking param order and prl generationMichal Klocek2020-07-231-4/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | When doing builds we use rsp files also for archives. For static builds this would require to install rsp file. Since static builds are possible only for qtpdf with small amount of archives simply do not use rsp files for archives. Cleanup linker parameters so prl files do not point object rsp files (do not use LIBS_PRIVATE in that case). Task-number: QTBUG-85616 Change-Id: I165610e418f162c16fcfa7056af3344b80f60c05 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| * Share linking config between webenginecore and pdfMichal Klocek2020-07-233-81/+58
| | | | | | | | | | Change-Id: Ib06a0a1ec3372d483008cc0ac0ec211ec8316e0e Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| * Move webengine-noexecstack to buildtoolsMichal Klocek2020-07-232-10/+10
| | | | | | | | | | Change-Id: I854034fd63c8847867fd7ec01d5c25781e7de5ef Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| * Fix prl generation in sub modules of webengine repoMichal Klocek2020-07-236-15/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QtPdf and QtWebEngine builds are producing few libraries in one build. This creates some corner cases like prl file generation. Paths in prl files are replaced on installation with sed. Unfortunately this will not work well if we build libraries which depends on not yet installed libs, since prl files reused by build are not processed by sed. Add workaround in this case so all depend libs are aware of their static dependencies and generate correct prl files. Task-number: QTBUG-85616 Change-Id: I0dbeb96bccbc4865dd52dea7c5d619f8cda1a596 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| * Update ChromiumMichael Brüning2020-07-221-0/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Pulls in the changes: d19ddc13c6b Build openh264 with -DX86_32_PICASM on x86 2c7da754bb4 [Backport] CVE-2020-6518: Use after free in developer tools b44a099f737 [Backport] CVE-2020-6523: Out of bounds write in Skia 1c142fada62 [Backport] CVE-2020-6524: Heap buffer overflow in WebAudio 5748e38c2f2 [Backport] CVE-2020-6526: Inappropriate implementation in iframe sandbox d41f723f492 [Backport] CVE-2020-6529: Inappropriate implementation in WebRTC e61ea405c3c [Backport] CVE-2020-6535: Insufficient data validation in WebUI 288befc5a1e [Backport] Security bug 1090543 Task-number: QTBUG-85606 Change-Id: Ib675a80bd78cfb7f2d27cc528fe016775fb8d482 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 incorrect doc for acceptNavigationRequest and add testJüri Valdmann2020-07-221-5/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | The function is called for all navigation requests. The original bug report was most likely due to the use relative links on a page without a base url, which indeed results in no call to acceptNavigationRequest being made. But this has nothing to do with local vs remote URLs, it's rather that relative links, which are relative to nothing, are not valid links and there thus cannot be any navigation request either. Task-number: QTBUG-48435 Change-Id: I08bd0c86d67bf1dd1d7662468321777254a7db0b Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| * Update ChromiumMichael Brüning2020-07-221-0/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Pulls in the changes: 9bea57931fd [Backport] CVE-2020-6510: Heap buffer overflow in background fetch dac11cfa7af [Backport] CVE-2020-6511: Side-channel information leakage in CSP (1/2) ce4b0e7fe74 [Backport] CVE-2020-6511: Side-channel information leakage in CSP (2/2) 4ba6053c609 [Backport] CVE-2020-6512: Type Confusion in V8 (1/2) 2be01d83ffc [Backport] CVE-2020-6512: Type Confusion in V8 (2/2) c3a7b41c75c [Backport] CVE-2020-6513: Heap buffer overflow in PDFium 7d0c0b1385a [Backport] CVE-2020-6514: Inappropriate implementation in WebRTC Task-number: QTBUG-85606 Change-Id: Ifa02d4e4c5f8f771250dbc2e9f519f9db7f2c080 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| * Fix platform support for qtpdf on iosMichal Klocek2020-07-213-13/+9
| | | | | | | | | | | | | | | | Add missing check for ios. Change-Id: I7fce6addb154ea83b8308094d5a6c4275d050d9b Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| * Fix incorrect paths in prl files when doing a static buildMichal Klocek2020-07-211-0/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | During chromium build we get some static libs, these are dependencies to QtPdf static lib. Generated prl files will contain paths to those libs. Unfortunately, these are the internal paths to the libs within the build directory. There are two solutions, merging all dependencies into final lib or simply installing static dependencies. Since doing a merge of static libs would require platform specific code and on mac requires special libtool (we use ar by default) and lipo hassle to get fat archives, we rather simply install those libs. This way seems to be a common pattern for static builds. Fixes: QTBUG-85616 Change-Id: I0cb1a0ae1ad3b8fa8af562951af4de1e9c7a8ba8 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@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-173-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-154-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>