summaryrefslogtreecommitdiffstats
path: root/src/webengine/api/qquickwebenginescript.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Reuse qwebenginescript in qmlMichal Klocek2020-09-241-387/+0
| | | | | | | | | | | | | | | | | Reuse core class and adopt api: * add missing setUrlSource to c++ class * fix typing for setRunsOnSubFrames * remove all invokable from setters in qml, we use properties for that anyway. * remove invokable toString , since we have debug stream operator in c++ [ChangeLog] In qml websetttings.runOnSubframes is now websettings.runsOnSubFrames Change-Id: Iba822a7aa6a59940484c972726d710a1b66cb20d Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Introduce qml script collection and make webscript as basic typeMichal Klocek2020-09-221-94/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In widget apis webenginescripts are value types and are managed by webenginescriptcollection. Introduce same concept in qml and make qquickwebenginescript a value type and reuse core userscript as private implementation. Rewrite webenginscript list handling. This patch is half baked since it does not include docs and tests for new api, however aim is to move script classes to core and reuse those in qml land. Therefore, new class introduced here is going to be removed in follow up patches, so all the missing parts will be added later. A new way of managing scripts in qml is as follows: * using collection with javascript dictionaries var script = { name: "FOO" sourceUrl: Qt.resolvedUrl("foo.js"), injectionPoint: WebEngineScript.DocumentReady } webEngineView.userScripts.collection = [ script1, script2 ]; * using collection with webscript basic type var script = WebEngine.script() script.name = "FOO" webEngineView.userScripts.collection = [ script ]; * using fine grain user script collection api with basic type var script = WebEngine.script() script.name = "FOO" webEngineView.userScripts.insert(script) Of course new api can be extended and we can provide more convince overloads. Note the main motivation here is to enable reuse webenginescript object created in c++ land, which is now passed as value in follow up patches. This changes reuses private apis of qml and will most likely require further changes when QTBUG-82443 is completed. [ChangeLog] WebEngineScript is a basic value type in qml, it is no longer declarative way of creating it, instead use WebEngine.script() Change-Id: I6a0ac3607e4522ccaefcec0a7d2986577d7e7024 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Document world ID limitAllan Sandfeld Jensen2018-08-271-1/+2
| | | | | | | | | The max was bumbed from 11 to 256, now document it. Task-number: QTBUG-69904 Change-Id: I6cbf64afe3409c4722d7a903d833124880b32bc0 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* Doc: Mark QQuickWebEngineScript::timerEvent() internalLeena Miettinen2017-03-301-0/+3
| | | | | | | ...to suppress a QDoc error. Change-Id: I11cb449137af06e11ba4e14a14da97d0088f8416 Reviewed-by: Michael BrĂ¼ning <michael.bruning@qt.io>
* Make QQuickWebEngineScript a publicly exported classSzabolcs David2017-01-261-29/+142
| | | | | | | | | Now the users can create user scripts when they are working with QQuickWebEngineProfiles in C++. Change-Id: I6ada78b1fc44c3f93589eb468578c330a1be9c6f Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
* Doc: Do not call Greasemonkey attributes 'extensions'Kai Koehne2016-10-041-2/+2
| | | | | | | | | The term stems from Chromium extensions, which are however overloaded. Sadly there's no good page we can link to inside Chrome/Chromium for the attributes we support ... Change-Id: Ife7fcdba7bdfdbd4b7248b247c4baa188a44867a Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
* Cleanup directory structureAllan Sandfeld Jensen2016-09-271-1/+1
| | | | | | | | | | | | | 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>
* Merge remote-tracking branch 'origin/5.7' into 5.8Liang Qi2016-09-211-1/+1
|\ | | | | | | | | | | | | | | | | Conflicts: src/3rdparty src/core/delegated_frame_node.h src/webengine/api/qquickwebenginecontextmenudata.cpp Change-Id: I163488d0d32cd981351608b2886f12e547e24672
| * Doc: Fix types of \qmlpropertyKai Koehne2016-09-201-1/+1
| | | | | | | | | | Change-Id: Ibb470580404f2b09dc8c7c2de275ade97251d612 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
* | Doc: Additional Chromium extensions are supported since Qt 5.8Leena Miettinen2016-08-251-1/+2
|/ | | | | | Task-number: QTBUG-55242 Change-Id: Ia02ffaff1c0c39dc61b4aa73b11f8f9a6f7bc174 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-08-161-6/+6
|\ | | | | | | | | | | | | | | | | | | Conflicts: src/3rdparty src/webengine/api/qquickwebenginecertificateerror.cpp src/webengine/doc/src/webengineview.qdoc tools/qmake/config.tests/libcap/libcap.cpp Change-Id: I2a2cfc904a8d6b561fb71ef7a0cc4bfb860124db
| * Doc: Add type name to enumeration values to follow the doc conventionLeena Miettinen2016-08-091-6/+6
| | | | | | | | | | Change-Id: I86eea3a64a38f6ec9984f663499abffa03cd9eb2 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Merge branch '5.6' into 5.7Allan Sandfeld Jensen2016-04-111-0/+2
|\| | | | | | | Change-Id: I53645ee5405b1c43807123fd3c196e314cfd1ce9
| * Doc: WebEngine does not support Chromium extensionsLeena Miettinen2016-04-051-0/+2
| | | | | | | | | | | | | | For example, @include, @match, and @exclude. Change-Id: I16d29b4e72452980e43c8e7c5702e21cccf159d5 Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
* | Rename UserScriptController/Host to UserResourceController/HostSzabolcs David2016-02-101-3/+3
| | | | | | | | | | | | | | These classes can operate user stylesheets too. Change-Id: Ia283af92e52a822b26003ff65e0e7dc391b0904d Reviewed-by: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com>
* | Merge remote-tracking branch 'origin/5.6' into devLiang Qi2016-02-101-2/+66
|\| | | | | | | | | | | | | | | Conflicts: tests/auto/widgets/qwebengineprofile/tst_qwebengineprofile.cpp tests/auto/widgets/widgets.pro Change-Id: Id9444359ed2e35d469331db96a355c9ea2d095d5
| * Merge remote-tracking branch 'origin/5.5' into 5.6.0Liang Qi2016-02-011-2/+66
| |\ | | | | | | | | | Change-Id: Ic2e3312f316dbe042e2103d3f19fde639faa2707
| | * Doc: add documentation for the WebEngineScript itemLeena Miettinen2016-01-201-2/+66
| | | | | | | | | | | | | | | Change-Id: Ice1b0a403686b4a280b2709a79fe2ed18ace3ab6 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | | Unify license header usage.Jani Heikkinen2016-02-011-11/+14
|/ / | | | | | | | | | | | | | | | | Update files using old header.LGPL3 to use header.LGPL Update files using old header.FLD to use new header.FDL Update files using old header.BSD to use new header.BSD Change-Id: I36a67aaa8c3ca6c7946308defc9c03c3571a7d23 Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
* / Implicitly use QStringBuilder in all modulesJoerg Bornemann2016-01-091-1/+0
|/ | | | | | | | | | | Every Qt module is built with QT_USE_QSTRINGBUILDER by default. Also define QT_USE_QSTRINGBUILDER in the core API library. Remove superfluous qstringbuilder.h includes. Keep the use of operator% to make sure that QT_USE_QSTRINGBUILDER won't vanish in future build system changes. Change-Id: I41fd036fc4e6063951cd758aaafdf9aefed7dd5a Reviewed-by: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com>
* Fix loading user scripts from qrc filesJocelyn Turcotte2015-11-191-1/+2
| | | | | | | | | | | | QUrl::toLocalFile doesn't handle qrc:// URLs, do like QQuickImageBase instead and use a public utility function to does that conversion. This allows loading qtwebchannel.js and use it in subsequent user scripts. Change-Id: I4791abdc96a7cd1e65ff76b1adeab9f9b250b582 Reviewed-by: Michael BrĂ¼ning <michael.bruning@theqtcompany.com>
* QQuickWebEngineScript: First stab at documenting sourceUrl and sourceCode.Robin Burchell2015-03-291-0/+21
| | | | | Change-Id: I9674488a95e3d0293c52b854201bb840392a641f Reviewed-by: Pierre Rossi <pierre.rossi@theqtcompany.com>
* QQuickWebEngineScript: Add a sourceUrl property to complement sourceCode.Robin Burchell2015-03-181-0/+35
| | | | | | | | | | | | | | | QtQuick doesn't have a convenient interface to interact with files, and even if that were the case, it would either be more awkward (and with increased overhead -- the price of an extra QObject, property, signal, etc) just to fetch the contents. So, we provide a convenience to allow fetching a user script from a file. Setting the sourceCode directly will reset sourceUrl (if it is set), and setting sourceUrl will ultimately result in a sourceCode change signal, too. Change-Id: Iee5abc0d719e2aeeacf1265f695b5a7efee9e0e8 Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
* UserScript: Rename source property to sourceCode.Robin Burchell2015-03-121-8/+7
| | | | | | | | | The name 'source' is unclear, and doesn't match current conventions in QtQuick (e.g. Image::source). Furthermore, such a property inhibits adding convenience API to fetch a user script from an external URI. Change-Id: I518b3963f64f0986f9e2d08fe7c5f69122372e0c Reviewed-by: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com>
* Add namespace to internal QtWebEngine APIAllan Sandfeld Jensen2015-03-021-1/+3
| | | | | | | | Adds the QtWebEngineCore namespace to all internal core API. This ensures we don't export any internal symbols in the global namespace. Change-Id: I26af888ea7c6c4c4d0f04c24a377c1a9d3c92751 Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
* QtQuick API for userScriptsPierre Rossi2015-02-221-0/+202
QObject-based, allowing the same things as the Widgets API in a declarative fashion. Change-Id: I9c9819b691b2098ec47e0536d47ccd2a950126c2 Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>