summaryrefslogtreecommitdiffstats
path: root/src/core/renderer
Commit message (Collapse)AuthorAgeFilesLines
* Support regex format include rules in user scriptsPaul Clark2018-01-261-2/+26
| | | | | | | | | | | | | | | | | | | | | | | | | For user scripts with `@include` and `@exclude` directives in their headers, if the value starts and ends with `/` then assume it is a regular expression to be matched against a URL. This feature has been in the original greasemonkey module since 2011 and currently in webengine regex include rules are being blindly passed to the glob matcher. An alternative to this approach of leaving the bracketing slashes on the values as a kind of in-band signalling (and making the glob escaping conditional) would be to add new members to the UserScriptData struct for holding regex patterns. This commit also applies cleanly to v5.8 and every release after it. [ChangeLog][][UserScript] User script metadata parsing now supports regular expressions in @include and @exclude rules. Task-number: QTBUG-65484 Change-Id: Ie2e483419f6784f995131ffb7d2d5e91c2c55b1d Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io> Reviewed-by: Szabolcs David <davidsz@inf.u-szeged.hu> Reviewed-by: Florian Bruhin <qt-project.org@the-compiler.org> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Adaptations for Chromium 62Allan Sandfeld Jensen2018-01-254-18/+32
| | | | | Change-Id: I49cd3c419d4dd1180144c3c07bdd9a628ab73caa Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* Merge remote-tracking branch 'origin/5.10' into devAllan Sandfeld Jensen2018-01-171-8/+17
|\ | | | | | | | | | | | | | | | | | | Conflicts: .qmake.conf src/webengine/api/qquickwebengineview_p_p.h src/webenginewidgets/api/qwebenginepage_p.h tests/auto/quick/qmltests/data/TestWebEngineView.qml Change-Id: Id2acc92e8d0364bdaaf5a63ea2d2cb9cd533ade3
| * Merge remote-tracking branch 'origin/5.9' into 5.10Allan Sandfeld Jensen2018-01-081-8/+17
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: .qmake.conf src/core/api/qwebengineurlrequestjob.cpp src/core/browser_context_adapter.cpp src/core/renderer/user_resource_controller.cpp src/core/web_engine_context.cpp src/webenginewidgets/api/qwebenginepage.cpp Change-Id: I5278e5e22e1776d42975fc94d70ff8ca4f81fb9a
| | * Check for null renderViewAllan Sandfeld Jensen2017-12-111-4/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It can according to documentation potentially be null, even if it might not happen in our cases. Task-number: QTBUG-63854 Change-Id: I76029c83fe32c163c2707568fe81b7590a79b4fe Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> Reviewed-by: Michael Brüning <michael.bruning@qt.io> Reviewed-by: Viktor Engelmann <viktor.engelmann@qt.io>
* | | Merge remote-tracking branch 'origin/5.10' into devAllan Sandfeld Jensen2017-11-292-6/+6
|\| | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/core/web_event_factory.cpp src/core/web_event_factory.h src/webengine/render_widget_host_view_qt_delegate_quick.h Change-Id: Ic43787e2689c81b501ed395a990190eb67d83a2b
| * | Merge remote-tracking branch 'origin/5.9' into 5.10Liang Qi2017-11-151-1/+1
| |\| | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/3rdparty tests/auto/quick/qmltests/qmltests.pro tests/auto/widgets/qwebengineview/tst_qwebengineview.cpp Change-Id: I2a1e3a83e29a1d6709f3e98fda3f7b4ab7ab297e
| | * Fix invalid Q_ASSERT in WebChannelIPCTransportJüri Valdmann2017-11-101-1/+1
| | | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-64419 Change-Id: I094cfc654498c74f4d6b656ec5647a90700a4f6a Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| * | Fix widevine with proprietary codecsAllan Sandfeld Jensen2017-11-121-5/+5
| | | | | | | | | | | | | | | | | | | | | Switched from define to buildflag. Change-Id: I01b3e0aad7f54af1a485733e7d4ec25a31d14015 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* | | Merge remote-tracking branch 'origin/5.10' into devAllan Sandfeld Jensen2017-10-271-4/+4
|\| | | | | | | | | | | Change-Id: Ibc1c881a67bf088ba6fb044e2553c74c7e9e24ca
| * | Adaptations to 61-basedAllan Sandfeld Jensen2017-10-251-4/+4
| | | | | | | | | | | | | | | Change-Id: I5cb198445f283c6cea8187a1a2883896df0ee918 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* | | Merge branch '5.10' into devAllan Sandfeld Jensen2017-10-137-27/+33
|\| | | | | | | | | | | Change-Id: I3a411e4019a5ec2f7d1a967b62a00ad7cf92f6f4
| * | Merge remote-tracking branch 'origin/5.9' into 5.10Allan Sandfeld Jensen2017-09-297-27/+33
| |\| | | | | | | | | | Change-Id: I7094e85a7770303a2ae30baccbc484c04f33600e
| | * Add LICENSE.ChromiumKai Koehne2017-09-207-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | The mentioned LICENSE file is not available; add it under the name LICENSE.Chromium. Task-number: QTBUG-60006 Change-Id: Ib2b3cb64467046c7ba1f53b0bbe14c3ec5a5291d Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| | * Fix license headers for libraries and pluginsKai Koehne2017-09-202-20/+26
| | | | | | | | | | | | | | | | | | Task-number: QTBUG-60006 Change-Id: Ibc0507f300f52154e6f131056d826a4dcef009c2 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | | Replace Q_DECL_OVERRIDE with overrideKevin Funk2017-09-211-1/+1
|/ / | | | | | | | | Change-Id: I5fb337a83bfc98c23b2f3cd51839feb40fad010e Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Fix memory leak of UserResourceController::RenderFrameObserverHelperAllan Sandfeld Jensen2017-09-161-8/+15
| | | | | | | | | | | | | | | | Use weak pointers to make sure pending calls don't can run after it has been deleted. Change-Id: I6e808794e1d977dd9e236cf4a3a9ab4213ed7efd Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* | Adaptations for Chromium 60Alexandru Croitor2017-09-119-41/+114
| | | | | | | | | | | | Change-Id: I536258e22c2ec143f2fd3f1cbda229e0611b6af4 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* | Adaptations for Chromium 59Allan Sandfeld Jensen2017-09-115-38/+37
| | | | | | | | | | Change-Id: I472053e316bfa782d0a6fb8903f4901be12247ae Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Do not send empty WebChannelIPCTransportHost_SendMessageStephan Reiter2017-07-191-4/+9
| | | | | | | | | | | | Task-number: QTBUG-61969 Change-Id: I3367889041614a5e7489909dd38c8af638edf17c Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Simple adaptations for Chromium 58Allan Sandfeld Jensen2017-06-141-2/+2
| | | | | | | | | | Change-Id: I7c2c85973b03fdbd2eafb5339f33a3758d53e924 Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* | Adaptations for Chromium 57Allan Sandfeld Jensen2017-06-145-12/+8
|/ | | | | Change-Id: Ia2756c1e9b13839c2330bd98cf953d47cbdac0dd Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* Standardize override declarationAllan Sandfeld Jensen2017-04-215-26/+27
| | | | | | | | Update our overrides to Qt coding standard getting rid of Q_DECL_OVERRIDE and redundant virtual declarations. Change-Id: Id8b0750eb05c51fc8f50cac4000a811eebcbf918 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Fix pepper cdms featureAllan Sandfeld Jensen2017-04-061-4/+4
| | | | | | | Is now also buildflag and not command line define. Change-Id: I3c687981928239f669bd285797b5ceee4e994822 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Fix spellcheck feature checkAllan Sandfeld Jensen2017-04-042-5/+6
| | | | | | | | | Was changed to generated buildflag headers instead of command line defines. Task-number: QTBUG-59687 Change-Id: Iead64f5321d000c07172ee27a0032394527ec501 Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* Adaptations for Chromium 56Allan Sandfeld Jensen2017-03-273-15/+18
| | | | | Change-Id: I78240d7956de4716757761fc6517f031b4adb822 Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* Simple adaptations to Chromium 55Allan Sandfeld Jensen2017-03-012-8/+11
| | | | | | | The simplest adaptations to API and build changes in Chromium 55 Change-Id: I923fa188690a04902492317807f72f006bcab9c6 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Provisional Fix for Navigation-Breakage on right-click in Flash appletViktor Engelmann2017-02-021-1/+9
| | | | | | | | | | | | | | | When one right-clicks into a flash applet, chromium believes that a context menu was open (even though PepperRendererHostFactoryQt::CreateResourceHost returns NULL, which only causes an ASSERT on chromiums side). Because of this, the navigation is disabled, although no context menu is displayed. This fix just sends a message to chromium, telling it that "the context menu" is now "closed", which causes another ASSERT, but re-enables the navigation. Task-number: QTBUG-57924 Change-Id: Id6d8150a7d4944162bab81362153f8621d35bb4c Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Fix compilation, add getApplicationLocale() method implementationMichal Klocek2016-12-201-1/+9
| | | | | | | | This is workaround to not include web_engine_library_info.h for qtwebengine_sources. Change-Id: Idbc86e8e5281a514199ebcd80af045e11f554362 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Rework and fix loadVisuallyCommitted signalPeter Varga2016-11-252-6/+0
| | | | | | | | | | | - Remove RenderViewObserverHostQt_DidFirstVisuallyNonEmptyLayout message and use WebContentsObserver::DidFirstVisuallyNonEmptyPaint instead. - The order of the DidFirstVisuallyNonEmptyPaint and OnSwapCompositorFrame events is not guaranteed. Check for both events to do not miss to send any loadVisuallyCommitted signal. Change-Id: Ic733b3e9a6fae64b1d827e8e07514f180273cf8c Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Fix compilation warning in corePeter Varga2016-11-141-3/+6
| | | | | | | | Replace deprecated v8::Object::ForceSet by v8::Object::DefineOwnProperty as it is suggested by the V8 API. Change-Id: I8c49999d391149676daf42784b796fa01918874f Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Fix crash when trying to execute script on a detached RenderFramePeter Varga2016-11-084-3/+35
| | | | | | Task-number: QTBUG-56661 Change-Id: I546222dde64c54955c62d2c30df79d4773b9973c Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Cleanup directory structureAllan Sandfeld Jensen2016-09-276-638/+0
| | | | | | | | | | | | | The src/core/renderer directory is meant to contain files that would be in the renderer process and the chrome/renderer subdirectory in chromium, but a few classes from the browser process and the renderer_host dir has snuck in. This patch cleans up the structure so that classes in the browser that serves as host classes for renderer classes goes in renderer_host. Change-Id: I9333b1322e2246d4da9b4e8cfe6be604f6d996bf Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* Implement Pepper Flash font and glyph draw APIsAllan Sandfeld Jensen2016-09-182-3/+114
| | | | | | | | | Pulls in the Chromium implementations of FlashFontFile and OnDrawGlyps. To fix asserts and blank space on some flash text rendering. Task-number: QTBUG-53042 Change-Id: Ie186ec3a0d7e0758d9e41c8d85af24c42275cca5 Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* Adaptations to Chromium 53Allan Sandfeld Jensen2016-09-145-4/+8
| | | | | Change-Id: I15053486edfd42ee607250b4f14fb6eaa325c959 Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* Adaptations to Chromium 52Allan Sandfeld Jensen2016-09-146-77/+128
| | | | | Change-Id: Idf8a511ba26d263fd9d014d87d5e1101d706da71 Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* Add support for PPAPI shared memoryAllan Sandfeld Jensen2016-07-181-3/+5
| | | | | | | Install the handler for requests for shared memory from PPAPI plugins. Change-Id: I7c3c191253fea734c318e56ba07912900f1abf64 Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* Switch to using upstream pepper flash clipboard implementationAllan Sandfeld Jensen2016-07-143-511/+2
| | | | | | | | Using the upstream versions means we will automatically get adjustments to changes in Chromium API. Change-Id: I5f4c94b836bee3f2f507189182145e4f667a88f9 Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* Parse metadata block in user scriptsSzabolcs David2016-07-071-0/+41
| | | | | | | | | | This allows WebEngine to build up user script objects from the metadata section of their source code. It also implements @include, @exclude and @match rules for restricting script injection to given URL patterns. Change-Id: Ic7b3023c0143643bfbf71adbfa25a8022b223fcf Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Merge remote-tracking branch 'origin/5.7' into devAllan Sandfeld Jensen2016-06-202-7/+7
|\ | | | | | | | | | | | | | | | | | | Conflicts: src/3rdparty src/core/permission_manager_qt.cpp src/core/renderer/web_channel_ipc_transport.cpp src/core/renderer/web_channel_ipc_transport.h Change-Id: I25fd8ed7c433dadce44d8ac1e39f86e211ec25f0
| * Fix the IPC webChannelTransport not being available on reloadJocelyn Turcotte2016-06-132-0/+16
| | | | | | | | | | | | | | | | | | | | | | | | The gin JavaScript binging gets destroyed on page reload after all references to it disappear from the previous document. Do like other gin wrapper and reinstall the transport binding on DidCreateDocumentElement, following how it's done by the MojoBindingsController. Task-number: QTBUG-53411 Change-Id: Ibcd9ef9dbedc5762d4f2210fd81f68e5b9127680 Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* | Merge branch '5.7' into devAllan Sandfeld Jensen2016-06-143-5/+522
|\| | | | | | | Change-Id: I1ecb615b8df1303c27b6609970502920123b3610
| * Merge remote-tracking branch 'origin/5.6' into 5.7Allan Sandfeld Jensen2016-06-113-9/+524
| |\ | | | | | | | | | Change-Id: Ib010ede9756fb02992a3276ae7ec90ef1ab56a00
| | * Implement flash clipboard interfaceAllan Sandfeld Jensen2016-06-103-7/+523
| | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes clipboard access from flash and fixes an assert when using the copy button on codereview.qt-project.org. Change-Id: Ia66ada8a1195a51a26d2b3fd689ddc867bc8d422 Reviewed-by: Alexandru Croitor <alexandru.croitor@theqtcompany.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | | Fix early JavaScript injectionAllan Sandfeld Jensen2016-06-016-12/+77
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With the latest Chromium snapshot we can no longer install any javascript before a new callback called RunScriptsAtDocumentStart has been called. So we must refactor user-scripts and web-channels to install on this call instead. Change-Id: I440a0aa4b26100c650d5c678b454ea5beb6b59d2 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | | Adaptations to Chromium 51Allan Sandfeld Jensen2016-06-012-18/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A few remaining details need to be changed to port to 51: - AX_STATE_FOCUSED no longer exist and is now queried from the accessibility manager. - OnDuplicateSection no longer exist and is no longer needed on Windows. - Vorbis and AAC codecs are no longer included as supported in chrome_content_client.cc so we match that. - Blink is no longer started lazy and the method WebKitInitialized no longer exists in RenderProcessObserver. We must therefore get rid of the observer, and can mark qrc immediately. - Chromium will now use gpu memory buffers for video by default on both Linux and OS X. It however no longer works for us on either platforms, and since it doesn't give us any performance benefits, we might as well disable it. Change-Id: Ie0ee361f05a1e2207fcc5b88f98f9026ccd45f78 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | Basic porting to Chromium 51Allan Sandfeld Jensen2016-06-016-36/+42
|/ / | | | | | | | | | | | | Trivial changes in methods, arguments and types. Change-Id: Ic707c376249f816268223e696ed5f6251df1f85f Reviewed-by: Michael Brüning <michael.bruning@theqtcompany.com>
* | Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-05-201-2/+0
|\| | | | | | | | | | | | | | | | | | | Conflicts: src/3rdparty src/core/browser_context_adapter.cpp src/core/web_contents_adapter.cpp tests/auto/widgets/qwebenginepage/BLACKLIST Change-Id: I45ee0a33f6316f585555d58fede8072fe514aecf
| * Revert marking qrc: as a local schemeMichael Bruning2016-05-101-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It was causing a regression that broke applications that embedded JavaScript in qrc files and accessed them from other embedded JavaScript files. This is e.g. a typical pattern for applications that used QtWebChannel. This partially reverts 29f9a2fb68568208a70ba9efef0e455b50a4d3e3 Task-number: QTBUG-53108 Change-Id: I8b26395d84258b6d9aca8e0c5f07d4435617f44d Reviewed-by: Kai Koehne <kai.koehne@qt.io> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> Reviewed-by: Michal Klocek <michal.klocek@theqtcompany.com>
* | Copyright cleanup in core/renderer sourcesAllan Sandfeld Jensen2016-04-297-3/+27
| | | | | | | | | | | | | | | | | | Adds original copyright where it was missing and add origin sources, so we can better find and compare with the original. Change-Id: Id74da177325a55d98ac4487ff596f9b383012ea4 Task-number: QTBUG-53048 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>