summaryrefslogtreecommitdiffstats
path: root/src/webenginewidgets
Commit message (Collapse)AuthorAgeFilesLines
* Add class and enum documentation to QWebEngineCertificateErrorAllan Sandfeld Jensen2014-12-031-0/+33
| | | | | | | | | Without the class description the methods documentation was never generated. Change-Id: I0d7232e8f5cc6765908cb28b77d0fe0f514d359d Task-number: QTBUG-42996 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Doc: Fix issues related to example docsTopi Reinio2014-11-171-0/+6
| | | | | | | | | | | | - Add documentation for Quick Nano Browser - Add all examples to the correct group - Add instructions to run the examples - Qt WebEngine Widgets index page: Add examples section Task-number: QTBUG-42668 Change-Id: Ie60f8708336b9c147d0c22afb555fe87287deddc Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com> Reviewed-by: Venugopal Shivashankar <venugopal.shivashankar@digia.com>
* Fix enum names of audio/video featuresAllan Sandfeld Jensen2014-11-073-19/+21
| | | | | | | | | | | | The feature enum names and documentation gave the impression it could control audio and video output, while they only control input. Also removed documentation of non connected feature permissions for Notifications and GeoLocation. Change-Id: Ia35142ca691ebd6059b7472e9803fda8cbd84813 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com> Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com>
* Make url handling consistent in widget and quick APIPeter Varga2014-10-282-5/+5
| | | | | | | | Use explicit url in quick API too and use GetLastCommittedURL instead of GetVisibleURL for getting the expected urls in tests. Change-Id: If3251323645979643f3dc0e16491fe35b584f51c Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Add setting ErrorPageEnabledAndras Becsi2014-10-143-1/+5
| | | | | | | | | This is required so that embedders can implement custom error pages, and is also needed for tests, where error-page loading has side-effects on subsequent page loads. Change-Id: I5ae276a58864a2fa9d7b608bea3340b482a92f4e Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* Doc: Correct snippets for QWebEngineView API doc.Michael BrĂ¼ning2014-10-091-4/+4
| | | | | | | | Those were using wrong action names and also the wrong trigger methods in the wrong context. Change-Id: If124bf7836a553dc4a632db208cee41fb998c622 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Replace QStringLiteral with QLatin1String where appropriateKai Koehne2014-10-071-1/+1
| | | | | | | | | It's faster to use QLatin1String in places where we don't actually need a QString object (like for comparison, or when creating a string with QStringBuilder). Change-Id: I9b8e28040dc2b79a767e15015b85822d06141bbe Reviewed-by: Zeno Albisser <zeno.albisser@digia.com>
* Doc: Fix issues in .qdocconf filesTopi Reinio2014-10-031-1/+1
| | | | | | | | | - Remove url variable (it's included from global doc config) - Fix qhp selector for QML types - Sort the examples in qhp Change-Id: I7f72aebe4f5482ac922a294ad156f8a73e4ccc6e Reviewed-by: Martin Smith <martin.smith@digia.com>
* Doc: Use proper module name for Qt WebEngine WidgetsTopi Reinio2014-10-035-6/+12
| | | | | | | | | | Fix the name used for the \module command to include the module name to properly generate the C++ class reference page for Qt WebEngine Widgets, and link to the new page from the module landing page. Change-Id: If0814650fa16ecf1b5c66e8e46e598d576a8c21d Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* Import the Qt WebKit porting guide from the wikiJocelyn Turcotte2014-09-293-1/+295
| | | | | | | | Also added a link to it in a new section briefly explaining the difference between Qt WebKit and Qt WebEngine. Change-Id: I89529c701e7f9faae1e4b7d15d5e5d6aec0c8f9f Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Various doc tweaksJocelyn Turcotte2014-09-293-20/+9
| | | | | | | | | | | | - Fix the example pages titles to match the qdocconf files - Remove information not as relevant for QtWebEngine as it was for QtWebKit - Fix the QtWebEngineWidgets snippet not to refer to webengine - Remove the dead link and the reference to Arora from QtWebEngine Change-Id: Ib3c57c8dd534330b3323c94fb2217374b3e52cf9 Reviewed-by: Andras Becsi <andras.becsi@digia.com> Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* Fix issues on HiDPI displaysAndras Becsi2014-09-241-2/+3
| | | | | | | | | | | This patch fixes widgets rendering on HiDPI displays and notifies about the a potential device pixel ratio change when the window is moved. This addresses the blurriness when a web view is moved between an attached LoDPI screen and HiDPI screen resulting from the device pixel ratio not being updated. Change-Id: I97af0199c07deac8bbe4688c665aaa6df1608ae9 Reviewed-by: Michael Bruning <michael.bruning@digia.com>
* Hide QWebEngineCallback from the docsPierre Rossi2014-09-185-7/+91
| | | | | | | | | In the same fashion as what is done in QObject::connect's documentation, we can keep it simple here and simply document what is expected. Change-Id: I98a09280870cf0aab935fd0cb69401bb98134145 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Add widgets settings doc plus revive QWeb(Engine)View::settingsPierre Rossi2014-09-178-2/+246
| | | | | | | Also silence some warnings by tagging functions as reimplemented. Change-Id: I0572e466709d433a44c7a154ff37e43178a6013f Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Remove unnecessary private header includesJocelyn Turcotte2014-09-111-1/+1
| | | | | | | | Most importantly, get rid of QOpenGLContextPrivate::globalShareContext which will be removed before the final. Change-Id: I5796fa822d2962c21fd8b6d8d3c196686d536e3d Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Fix url stored in LoadRequestPeter Varga2014-09-052-4/+5
| | | | | | | | | | The test_urlProperty() qml test has failed because the active url was stored in LoadRequest in case of LoadFailedStatus. With this fix the loadRequest stores the url of that page which implies the request. Change-Id: I6aab814a4a7d3b47043b03fccde3d9995b40d8fa Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com>
* Don't forward loading of error pages to the API layerPierre Rossi2014-09-022-2/+6
| | | | | | | | | | | | | | | | | | The fact that the error pages are HTML and get loaded through the same mechanism should be kept an implementation detail and not be considered as a new load in the API sense. Also implement HasErrorPage for good measure and remove an anoying warning from the demo browser. The issue of the url not being changed remains in the QML test (but it doesn't affect a typical browser-like UI since the user input is still there untouched in the address bar), just make sure that failure does not affect the later checks. It also seems like we have a focus problem somehow, but the test should probably use a click for that matter. Change-Id: Ib5e363981a11287fdf4bfe84b93c999d96ed8087 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Add Qt WebEngine Widgets API for allowing certificate errorsAllan Sandfeld Jensen2014-08-296-0/+219
| | | | | | | | | | | This adds API for overriding some certificate errors. Once overridden any identical error for the same hostname and certificate will use the same override. Similar API for QtWebEngine QML should be added in a later patch. Change-Id: I144147b86d9b592e3f87346a1e48890acee0c670 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Update license headers.Pierre Rossi2014-08-282-28/+18
| | | | | | | | Because the files were recent additions or for other unclear reasons, not all the files were updated to reflect the license change. Change-Id: I6898f6f4f993f1efa9489382f0b94af285f8c4f5 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* [OSX] Buildfix: Classes used with templates must be fully qualified.Zeno Albisser2014-08-212-7/+5
| | | | | Change-Id: Idf1cd3990e2cfd9e2ed3b017370e689c1126bb48 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Update License Headers for Qt WebEngine to LGPLv3.Zeno Albisser2014-08-2112-194/+196
| | | | | | | Change-Id: Idbe0eafb51d77cc00e3a93179b81770724d5bfaa Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com> Reviewed-by: Tuukka Turunen <tuukka.turunen@digia.com> Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com>
* Propagate the page's screen coordinates when the top-level window movedJocelyn Turcotte2014-08-204-10/+30
| | | | | | | | | | | | | | | | This fixes a regression after the 37 upgrade where the select popups would have the wrong position. Adjust to the new behavior and also avoid doing a mapToGlobal of the position received in InitAsPopup. RWHV::SetBounds has been giving us screen coordinates since the Chromium 33 update, but popup locations somehow managed to work properly through some side-effect sorcery. This also fixes the value of window.screen[XY] in JavaScript which wasn't updated when the window was moved. Change-Id: I544499bafedccfb7d389b4abc48f1386c398473f Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com>
* Add iconUrl() to QWebEngineHistoryItemAllan Sandfeld Jensen2014-08-192-0/+7
| | | | | Change-Id: I61bda1aafc7513acdaeda99ef493ce50363d352e Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Remove unsupport DeveloperExtrasEnabled settingAllan Sandfeld Jensen2014-08-191-1/+0
| | | | | Change-Id: I2e21c19c193d94d2ebbaed0bc3b9b0aaa28e6e85 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Add missing include to qwebenginesettings.hAllan Sandfeld Jensen2014-08-181-0/+1
| | | | | Change-Id: I9c0dd4e2da5452e6d90f177f4c5d5edd735294e5 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Use Q_DECLARE_PRIVATE to wrap the p-impl in QWebEngineSettingsJocelyn Turcotte2014-08-153-10/+20
| | | | | | | This follows the same pattern now used in other public classes. Change-Id: I999c6ba7fc594cdb77da47482e1060542fe86861 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Fix a crash in WebEngineSettings when opening a new windowJocelyn Turcotte2014-08-154-17/+7
| | | | | | | | | | | | | | | | | | A new window means that the QWebEnginePage gets its WebContentsAdapter swapped and that the pointer in WebEngineSettings must be updated. Do the WebContentsAdapter-to-WebEngineSettings binding in WebContentsAdapter::initialize to cover both cases. This also refactors the way that QWebEngineSettings is created by removing the need to pass a QWebEngineSettingsPrivate instance to be adopted, and also move the global settings construction logic in the singleton accessor instead of relying on the fact that it uses a different contructor. Change-Id: I6f8a2ed1407a4b25f9898526db9432721c354ddf Reviewed-by: Andras Becsi <andras.becsi@digia.com> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@digia.com>
* Fix unused parameter warnings in qwebenginepage_p.hJocelyn Turcotte2014-08-151-1/+1
| | | | | Change-Id: I17bcd79ee2dcb539f369a8f4a8d59949e09930be Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Widgets settings implementationPierre Rossi2014-08-127-24/+408
| | | | | | | | | Implementing what is already available, namely the WebAttributes, font preferences and default text encoding, as well as a slightly different take on privateBrowsing. Change-Id: I128f060a4661d19aa1c9c4d6daae1f80fb33204b Reviewed-by: Allan Sandfeld Jensen <allan.jensen@digia.com>
* Ground work for Settings/PreferencesPierre Rossi2014-08-092-0/+26
| | | | | | | | | | | | Core interface to expose toggling some of the WebPreferences for now and most probably some of the WebRuntimeFeatures soon. The whole dummy settings business is meant to keep things from breaking too much when bisecting, because it is assumed that there are always valid settings for a given adapterClient. Change-Id: Ic0a62bcb5af8c0254436dc770b43cde5016c3bbd Reviewed-by: Allan Sandfeld Jensen <allan.jensen@digia.com>
* Use QSGEngine instead of the private QSGRenderContextJocelyn Turcotte2014-08-062-29/+25
| | | | | | | | | QSGEngine was added in Qt 5.4 to allow using the scene graph without QQuickWindow. Use it for our FBO as well as for the QOpenGLWidget rendering. Change-Id: If4665d4f33c9dad69d2d4269309163bb5ffbd8e3 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Add QQuick API for intercepting navigation requestsAndras Becsi2014-08-061-0/+1
| | | | | | | | | | | | Add missing navigationRequested API to be able to intercept navigation requests. This is useful for ignoring requests for example in kiosk-like applications that want to restrinct navigation to a specific url or domain, or want to disable specific types of navigation requests (e.g. reloading, clicking links, form submissions). Change-Id: Ie375e635a3c3566527972d05f5d99b39489c5ca8 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* s/QWebEngine/QtWebEngine/gPierre Rossi2014-08-041-1/+4
| | | | | | | and make it a namespace Change-Id: I15c1af8c7d0d8ab213cdf7945109263fe461d2ac Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Do away without QWebEngineWidgets::initializePierre Rossi2014-08-044-15/+4
| | | | | | | | | If we consider the plugin scenario is unlikely and decide it's unsupported for widgets, we can simplify our tests and examples a bit on this front. Change-Id: Idc96032c127b4ee74fb5c7b3d2cdfdf99c3a722e Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Don't inherit from Qt private typesJocelyn Turcotte2014-08-046-11/+19
| | | | | | | | | | | | | Do the d_ptr magic ourselves to avoid having to include private headers from qtcore, qtgui and qtdeclarative. It is hackish to hide QObject's d_ptr member to have the macros working in a public class, but if anything goes wrong we just need to replace the private macro convenience while maintaining the binary compatibility of the stored extra opaque pointer. Change-Id: Idb92f4f902826bef9068a5c2ef6ea31fc3fa15b2 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Switch to the public QOpenGLWidget APILaszlo Agocs2014-08-022-1/+17
| | | | | Change-Id: I5554e43b8703864111f37f8b684a47669107512e Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Don't use QAuthenticator private APIJocelyn Turcotte2014-08-011-4/+2
| | | | | | | QAuthenticator::setRealm has been added to QtNetwork 5.4. Change-Id: I7eb503956d72a96e1f5030896cdf9adb7d4030cb Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Fix tab focus in the widgets and QML webviewsJocelyn Turcotte2014-08-013-2/+9
| | | | | | | | | | | | | | | | | | | | Fixes: - Make sure that we call SetInitialFocus when giving focus through Tab This does the same as would WebContents::FocusThroughTabTraversal - Implement QWebEnginePagePrivate::passOnFocus - Set each new RWHVQtDelegate as the focus proxy of the QWebEngineView - Make sure that the widgets delegate accepts the tab focus policy Cleaups: - RenderWidgetHostViewQtDelegateQuick doesn't need to be a focus scope, it doesn't have any children - We don't need to reimplement QQuickWebEngineView::forceActiveFocus since the view is now a focus scope - Do not explicitly setFocus(true) on the QQuickWebEngineView, the application should decide this through the API Change-Id: I817dc2c895d4fff4aa3536c71ecc5d306bb3bee0 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Add loadVisuallyCommitted signal to the experimental Quick APISzabolcs David2014-08-011-0/+1
| | | | | | | | | This fixes the flaky QQuickWebEngineViewGraphics test and extends it with a new test case. Change-Id: I2d8a0762716cb9232fdea6473760e67ac2e7146d Reviewed-by: Andras Becsi <andras.becsi@digia.com> Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Add api to get the favicon URLAllan Sandfeld Jensen2014-07-306-1/+53
| | | | | | | | | | | Adds one of the missing pieces of the QWebFrame and QWebView APIs. Unlike the QtWebKit version this only fetches the favicon URL, and not the icon. This is because we do not want to implement an icon database, and that the icon would be loaded asynchronous anyway, bringing no guarantee to be a valid icon/image yet. Change-Id: I227311ae3676044da850e687b82bee752b5079c8 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Fix RenderWidgetHostViewQt::GetViewBoundsFrederik Gladhorn2014-07-142-0/+7
| | | | | | | | | | GetViewBounds should return the bounds of the view, not the screen rect. The view bounds are for example used to calculate the screen position of accessible objects (which gets fixed with this patch). Change-Id: I5b342113af737847c1756a13183cd2b8b8db648a Reviewed-by: Andras Becsi <andras.becsi@digia.com> Reviewed-by: Michael Bruning <michael.bruning@digia.com>
* Fix the indexOfChild function for the web documentFrederik Gladhorn2014-07-112-0/+8
| | | | | Change-Id: I37a32bd5dd8760bc91173968a620a1932ae67b4e Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Fix duplicate document roleFrederik Gladhorn2014-07-111-1/+1
| | | | | | | | The blink root element already has document as role. By setting it in the webview we'd get two documents in the hierarchy. Change-Id: Ie14e57b4e2050dbd9495c4fa94de4e2faebc02c1 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Widget based accessibility glue codeFrederik Gladhorn2014-07-103-0/+40
| | | | | | | | | With this patch the accessibility hierarchy inside webengine becomes available when navigating from QWidget based web views. Change-Id: Ib3625a6ec93b4d3f298fb845ab85209b348349ba Reviewed-by: Zeno Albisser <zeno.albisser@digia.com> Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Add core accessibilityFrederik Gladhorn2014-07-092-0/+6
| | | | | | | | | | | | | | | | This commit adds the basics to bridge the blink accessibility classes to QAccessibleInterfaces. Note that it needs two follow up commits to implement the bridging from the QWidget/Qt Quick worlds. [ChangeLog][Accessibility] QtWebEngine now has accessibility support, enabling assistive technology such as screen readers to work with it. Change-Id: Ied1d97e61a024115ac7a9245331211f6d9fac1b4 Reviewed-by: Zeno Albisser <zeno.albisser@digia.com> Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Fix the build with recent qtbaseAndras Becsi2014-07-071-0/+2
| | | | | | | | | | | | Since 3cd70c11bc7bbe3c5e9e4972d2273cf51bbdc30e in qtbase Qt modules require cmake tests to be present which makes QtWebEngine fail with "Missing CMake tests." We do not support building with cmake at this point, so disable these tests by setting CMAKE_MODULE_TESTS to '-' for module pro files. Change-Id: I777e6b2c7ce975ad021281800987f9d3ce173399 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Remove stray semicolonsFrederik Gladhorn2014-07-071-3/+3
| | | | | Change-Id: I87d6532babc9475e46e28f6be7d1593622958764 Reviewed-by: Michael Bruning <michael.bruning@digia.com>
* Add missing header file to .proFrederik Gladhorn2014-07-071-0/+1
| | | | | Change-Id: I4543cc9a42f803fd763b889cf7c36d8cfd54fc42 Reviewed-by: Michael Bruning <michael.bruning@digia.com>
* OS X: Fix the build with the Qt SDKAndras Becsi2014-06-271-1/+1
| | | | | Change-Id: Icc4219ace4121a4b30302e0348e48dc75cae54cb Reviewed-by: Zeno Albisser <zeno.albisser@digia.com>
* Avoid black flashes when showing a new QWebEngineViewJocelyn Turcotte2014-05-281-1/+1
| | | | | | | | | | | | | | QPlatformBackingStore still doesn't enable blending when compositing a QOpenGLWidget with the rest of the widget tree. This means that a tranparent pixel will show as black. Until we get to properly go through the work of making it possible to render a transparent webview, set the glClear color to white in order to avoid seeing any black background before we get our first frame from Chromium. Change-Id: Idf7bb831a3b0d62b02f2527e2a15d830bf1e8ad4 Reviewed-by: Michael Bruning <michael.bruning@digia.com>