summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Fix QQuickWebEngineForwardHistoryListModelPeter Varga2014-03-281-1/+1
| | | | | | | | | | The index calculation was wrong for the history items in the forward list model: model contained the current item too. Test has been added for check the previous and next element in the back and forward lists. Change-Id: I0e05881f05b67752e47b01236ffb9636d31a7dc2 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Fix typo: remove unused function prototype from headerPeter Varga2014-03-281-1/+0
| | | | | Change-Id: Icd56b33c9bd3fe0f906f5ea6257713ab509ba33d Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Override OPENSSLDIR for embedded linux.Zeno Albisser2014-03-281-14/+16
| | | | | | | | | | | Boot2Qt will ship openssl configuration and ca certificates in /usr/lib/ssl. At runtime the environment variable SSL_CERT_DIR can be used to override the location for certificates. Change-Id: Ib5a55f0ff6874e497b3ca9163e4a11f3a1805de0 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Add overrides to RenderWidgetHostViewQt on WindowsZoltan Arvai2014-03-281-0/+5
| | | | | | | | More overrides for not yet implemented methods after snapshot update. Change-Id: I2fb7c7a4c7ae2094ccf0d791a75d268fc03f1602 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Force disable libstdc++ debug modeAndras Becsi2014-03-281-0/+2
| | | | | | | | | This reduces the debug library size by about 20% which should make it possible again to successfully link on the CI. Change-Id: Id0ced6b821032eb49a8e34aff81a7e1648a3dfff Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Introduce platform specific pri files for all platforms.Zeno Albisser2014-03-287-27/+76
| | | | | | | | Define qt_os for all supported platforms. Move simple platform specific flags into the pri files. Change-Id: I09b030f4a8a815f48a8100d81669a7729218efc2 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Get rid of GTK dependenciesAndras Becsi2014-03-2810-43/+130
| | | | | | | | | | Build with aura by default and remove GTK related code. This patch introduces a mechanism for setting gyp build configuration variables using a GYP_CONFIG and adds a desktop_linux.pri configuration for this target. Change-Id: I6b044ba52ebb20c187572669af94a6fc280b0412 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Adapt to API changes in new stable branch 1750Andras Becsi2014-03-2820-161/+216
| | | | | | Change-Id: If0cc263f36d396fd505c1d8b026e2493bfc29cc4 Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com> Reviewed-by: Zeno Albisser <zeno.albisser@digia.com>
* Fix typo in the qquickwebenginehistory headersAndras Becsi2014-03-272-2/+2
| | | | | | | hisOTry -> histTOry Change-Id: I4744721bbd50a76054e38de9578f1f27e92982db Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Remove WebContentsView::SetPageTitle functionAdam Kallai2014-03-272-6/+1
| | | | | | | | | The titleChanged signal is emitted in WebContentsDelegateQt::NavigationStateChanged so We do not need to send this signal in SetPageTitle function any more. Change-Id: Id9a7efa59caae7aa99a82e840061adb7c5e8832b Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Remove wrong library path that is reported by icu-config.Zeno Albisser2014-03-251-1/+1
| | | | | | | | | icu-config reports the path to icu resources on the host so we need to remove this path again, when compiling for an embedded target. Change-Id: Ifaf1c07ad3d0a8794a109b253764834ea3ff6ddc Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Add qt_os embedded_linux for platform specific configuration.Zeno Albisser2014-03-252-6/+15
| | | | | | Change-Id: I2c7878b0f5a84bc299d6c033a69e1f2f904168f3 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com> Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Fix a missing titleChanged signal on navigationJocelyn Turcotte2014-03-241-0/+2
| | | | | | | | | | | WebContentsView::SetPageTitle is only called when the Blink page updated its title. For navigations we have to listen for NavigationStateChanged. Also update the history test to check this case. Change-Id: Ia89c61b32913d647a63b2fb9a4cdf3f6867c4f0c Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com>
* Base load signals on Blink loader eventsJocelyn Turcotte2014-03-217-44/+47
| | | | | | | | | | | | | | | | | | | | | | | | This mainly remove the use of the LoadingStateChanged callback, which is tied to DidStartLoading and DidStopLoading. Those signals are handled from the browser process side, also wrapping the time where the render process is initialized. We can't rely on those signals for loadStarted, but afterward rely on the Blink loader for loadFinished. We must use the same source for both. Instead only rely on Blink callbacks ultimately related to network events. This gives us a behavior closer to QtWebKit. The major compromise that this forces us to to accept is that loadStarted is now triggered asynchronously. This will basically break anything expecting loadStarted to be emitted synchronously from the load method. This also adjust autotests to get a few more passing. Initial-patch-by: Pierre Rossi <pierre.rossi@digia.com> Change-Id: Ib6c0170df891d1b7f8ed4dc1d483985523e267dc Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com> Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* Fix the HighDPI rendering of QQuickWebEngineViewJocelyn Turcotte2014-03-203-2/+12
| | | | | | | | | | | | | Use the ratio given with the compositor frame instead of taking it directly from the QWindow to make sure that we scale according to the rasterizing of the tiles. Set the scale directly on the DelegatedFrameNode by making it a QSGTransformNode to avoid creating an extra QSGNode. Change-Id: I95bd33c7c6d26e0d456d6df188779dc4e82f9d3b Reviewed-by: Arvid Nilsson <anilsson@blackberry.com> Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com>
* Add Quick's navigationHistoryPeter Varga2014-03-207-0/+439
| | | | | | | | Add QQuickWebEngineHistory and list models providing API for the quick's navigationHistory. Change-Id: Ia86c94b120cc5d0b4757fc62386fc7a0dcb3e341 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Fix the Mac build when using the Qt SDKAndras Becsi2014-03-181-0/+3
| | | | | | | | | To fix the build of the core library override Qt's default minimum target version of 10.6 because we need to use libc++ for chromium which is only available from 10.7. Change-Id: I8896c4741d1c9b7bfe6b1c045704aeb2d5affd17 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* UI: fix a crash on shutdownPierre Rossi2014-03-142-10/+13
| | | | | | | | | | Use a raw pointer instead of QScopedPointer for the UI components. Since the components are always parented to the view and deleted through the QObject cleanup mechanism, it was not correct to use QScopedPointer in the first place. Change-Id: I0c8fd9526e898439c52c6a6f538a66f8a1185ef9 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Tooltip support.Pierre Rossi2014-03-149-6/+26
| | | | | | | | | | Basic tooltip support for widgets relying on the existing QToolTip mechanism. Left unimplemented on the Qt Quick side for now since ToolTip support is still very much a work in progress there. Change-Id: Ia4bfd715a224e0cbc147c8860e131d1545cebe1e Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Fix clipboard build on WindowsZoltan Arvai2014-03-141-0/+2
| | | | | | | | Add missing guard to clipboard.h. Exclude unneeded Windows specific source files from build. Change-Id: I40fbea35dc1721ddf4e9c184515d57428a7ffe4d Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Fix focus in Quick APISzabolcs David2014-03-133-11/+17
| | | | | | | | | | | | | | | The forceActiveFocus() doesn't work in the QML tests. We need to call forceActiveFocus() in RenderWidgetHostViewQtDelegateQuick instead of the one in WebEngineView. To make this work, I replaced RWHV with QQuickWebEngineView in the focus chain. This is necessary in order to extend tst_loadUrl QML test with urlProperty test case. Change-Id: Ifba0c824a7ce9f00d328110233402d3563f967aa Reviewed-by: Zeno Albisser <zeno.albisser@digia.com> Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Always disable tcmalloc.Zeno Albisser2014-03-111-6/+0
| | | | | | | | | | | | | | | We cannot enable tcmalloc as otherwise we would have to use it for all of Qt as well. If we allocate with tcmalloc and free without (or the other way round) this leads to errors. Specifically it led to something that looked like a double free corruption on embedded linux for an event that is created in qtwebengine code but deleted within Qt. Change-Id: Ia8c8da09e78968648046761e34f7f674769cfdc2 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com> Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Fix deployment of qtwebengine_locales with make installAndras Becsi2014-03-101-2/+2
| | | | | | | | | | The install_locales target silently fails when running make install with the message "install: omitting directory." Add all the translations to the files variable and set the path to $$[QT_INSTALL_TRANSLATIONS]/qtwebengine_locales. Change-Id: I375077982d9b3e2154cf90ae13142bb42a07e38d Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com>
* Fix debug_and_release buildsJocelyn Turcotte2014-03-071-14/+27
| | | | | | | | | | | | | | | This makes sure that gyp_run.pro follows the same behavior as core_module.pro and that ninja is run for each config, in the appropriate directory. A special .NOTPARALLEL make fake target is added to avoid running ninja for both configurations in parallel (this would cause build failures). This target will be ignored by nmake, but might cause issues if trying to build with jom. Change-Id: Ibaa5f6aa4972cb24c83cc7a63e496938a5c16a3f Reviewed-by: Zoltan Arvai <zarvai@inf.u-szeged.hu> Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Use the shadow build directory for the ninja outputJocelyn Turcotte2014-03-073-7/+7
| | | | | | | | | | | | The gyp/ninja build is moved from out/(Debug|Release) to src/core/(Debug|Release). The ninja build as well as generated gyp files and python intermediate files all stay in the source tree for the moment. Change-Id: I6948380c45896540fe508238ceef9fe48e41f5af Reviewed-by: Zoltan Arvai <zarvai@inf.u-szeged.hu> Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Do not pass linking information from qmake to gyp and to qmake againJocelyn Turcotte2014-03-072-3/+6
| | | | | | | | | | | | | Instead make sure that the QT and QT_PRIVATE variables are identical in both core_gyp_generator.pro and core_module.pro, the former for compilation and the later for linking. This allows working around issues of qmake when handling -l switches in libs. Some features on Windows append version numbers, while this is not done when linking to Qt libraries via the QT variable. Change-Id: I04b58a313335daeffc9510471553517c63908852 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Deploy QtWebEngineCore as a Qt moduleJocelyn Turcotte2014-03-078-54/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This delegates the linking step from ninja to qmake so that we can let qmake decide the destination of the target itself, easing the deployment and installation logic across platforms. The module is only deployed as a binary and no header are available outside of the source tree. This is only to make sure that the dependence of the QtWebEngine and QtWebEngineWidgets libraries on it is resolved at runtime exactly the same way as with other Qt modules, on all platforms. Ninja still takes care of the compilation and gyp lets qmake know how and what to link by dumping the list of flags and input files in a generated .pri file. This has to be done in a separate .pro file so that we can make sure that ninja is run inconditionally before make reaches the dependency check in core_module.pro, ensured by the parent Makefile. Note 1: This patch removes RPATH hacks that are no longer necessary Note 2: Other targets like ffmpegsumo are still linked by ninja. The same logic could be moved to a qmake file but this require some more work to make sure that some switches (e.g. -stdlib=libc++) are coordinated between gyp and qmake. Change-Id: If65968547bde5b9cf732e31e97931c17ae1921a7 Reviewed-by: Zoltan Arvai <zarvai@inf.u-szeged.hu> Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Override path for perl, bison and gperf on WindowsZoltan Arvai2014-03-051-0/+3
| | | | | | | | Use these dependencies from environment. No need to include them in the snapshot. Change-Id: I81623cc15e8c1e9431c5569985c90a4fbac638e7 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Add comman line switches needed for embedded AndroidAndras Becsi2014-03-041-4/+22
| | | | | Change-Id: I870952054a11ec531e2d2a85ea1331cc67a5b8f3 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Add opacity control to video texture streamingMansoor Chishtie2014-03-041-3/+8
| | | | | | | | | Modified fragment shader of StreamVideoMaterialShader class to support alpha. Added m_id_opacity member to the class and update it with state.opacity. Change-Id: I92173fac84c48862fb92f3a6338acf8c9bf91bc1 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Add Qt clipboard integrationJocelyn Turcotte2014-03-045-0/+443
| | | | | | | | | | | | The GTK clipboard integration isn't working for us and we need a way to get clipboard requests from the renderer into the system clipboard. This patch adds a Qt implementation to let Qt handle the platform abstraction, even though the Chromium clipboard direct integration could work on some platforms. Change-Id: Ie7af5c6b4c662fc8f4109b2e85e9f594d6d90b0d Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com>
* Add HTTP and proxy authentication signals directly to QWebEnginePageJocelyn Turcotte2014-02-2811-3/+248
| | | | | | | | | | | | | | | | | | This allows handling calls that would be signaled by QNetworkAccessManager in QtWebKit. This pulls QtNetwork as a dependency of the QtWebEngineWidgets module to be able to use QAuthenticator, but isn't required otherwise. Only the request URL is available in the case of HTTP authentication (no access to HTTP request headers that the QNetworkReply would allow) and only the proxy host name in the case case of proxy authentication. This keeps the API synchronous the same way, as QtWebKit did, in favor of source compatibility at the cost of requiring a modal dialog, even though the implementation doesn't require it. Change-Id: I9e021def38e6107c9e66d2de8f86bd0328d543df Reviewed-by: Michael Bruning <michael.bruning@digia.com>
* Extend search path in libvpx to enable build with QtWebEngineZoltan Arvai2014-02-281-0/+6
| | | | | | | Paths are paritally hardcoded for Windows in libvpx. Change-Id: Ic1c537bcc8b988c9803326709e38f44cb0943ee3 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Handle CheckerboardDrawQuads in DelegatedFrameNodeAndras Becsi2014-02-261-1/+12
| | | | | Change-Id: I66541842650af4a2cc50cd0443eacde510df566f Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Fixing QQuickWebEngineView.loadingChanged public API test caseAdam Kallai2014-02-253-12/+12
| | | | | | | | | Rename QQuickWebEngineView.loadingStateChanged signal name to QQuickWebEngineView.loadingChanged. Change-Id: I0e01034f7b2eea57f5211ff0d8258d9f27d278f0 Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu> Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Video texture streaming support via external EGLImage texturesMansoor Chishtie2014-02-254-2/+246
| | | | | | | | | | | | Created new StreamVideoNode & StreamVideoMaterial classes for QSG renderer. These classes duplicate the logic of chromium's direct renderer GLRenderer::DrawStreamVideoQuad. Added support for new DrawQuad material in DelegatedFrameNode. Added support for external textures in MailboxTexture. Change-Id: If569b07dfef985f9833de7e64eeb3f952026bca4 Reviewed-by: Arvid Nilsson <anilsson@blackberry.com> Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Fix unused variable suppression on WindowsZoltan Arvai2014-02-241-4/+4
| | | | | | | | | MSVC fails with undefined type error when an argument passed by reference but suppressed as normal variable. Change-Id: I93a89aea4fae5f820c9ab0d1222d63b01ca3ed3c Reviewed-by: Michael Bruning <michael.bruning@digia.com> Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Implement QWebEnginePage::viewportSizeJocelyn Turcotte2014-02-216-10/+24
| | | | | | | | | | Keep the size in the page itself, and ask the optionally attached QWebEngineView only for the rect position. When the view size change, call setViewportSize on the page like QtWebKit does. Change-Id: I735f1509cab9ef9b5d32bf31249a59c919939804 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Implement QInputMethodEvent::Attribute translation and compositionAndras Becsi2014-02-211-8/+55
| | | | | | | | | | | Translate QInputMethodEvent::Attribute list to WebCompositionUnderline when processing input method events, and implement ImeCancelComposition to fix input method handling with the Qt Virtual Keyboard technology preview. Change-Id: Id06db3d04066841093ed90cabd659def3cb3b73c Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com> Reviewed-by: Michael Bruning <michael.bruning@digia.com>
* Keep the selection when done searching to match Chromium's behaviorJocelyn Turcotte2014-02-211-1/+1
| | | | | | | | | This basically transforms the "search selection" into normal selected text when findText(QString()) is called and allow pressing enter to trigger links, etc. Change-Id: I590dfddef174d3ebf2f36453b5f44e692bf5f827 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Add the Mac debug build fix to patch filesJocelyn Turcotte2014-02-211-0/+0
| | | | | | | | Put it together with the change that enabled the build of event.cc. Also update the 3rdparty submodule. Change-Id: I98bea50d053a108e765c890e55f3886fea5f4e93 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Fix a crash when using the history on an adopted pageJocelyn Turcotte2014-02-201-0/+1
| | | | | | | | We also need to update the WebContentsAdapter pointer in QWebEngineHistoryPrivate. Change-Id: I8251e9834b179747b6b65630cf4ced5c2b1af27f Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Implement basic editing actions for QWebEnginePageJocelyn Turcotte2014-02-203-1/+93
| | | | | Change-Id: I1b58d2b2e86f60e296ae48095ed8d5e8172e0d1e Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com>
* Cancel ongoing "fling" animations on tap-downAndras Becsi2014-02-191-4/+20
| | | | | | | | Synthesize WebGestureEvent::GestureFlingCancel on if we receive a WebGestureEvent::GestureTapDown to stop the ongoing scroll animation. Change-Id: I5b500ebbde815a54a466736492c2b5781f5ef91e Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* QtQuick: add runJavaScript.Pierre Rossi2014-02-192-3/+22
| | | | | | | | | | | Much like the widgets version. This should be helpful to start testing QWebChannel integration. Includes a very basic autotest that checks both approaches (with or without callback) through the view's title property. Change-Id: Id9c3e3736f36d53cecf1dd52e8811c4b921dcf08 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Add project's directory to includepath on WindowsZoltan Arvai2014-02-194-4/+4
| | | | | | | | | Unlike other OSes, project's directory is not included by default to includepath on Windows. This would cause missing file errors while building. Change-Id: I64b83e13adaae1ee1730caebcf7442973b573c3b Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Fix filename in core_gyp_generator.pro's makefile on WindowsZoltan Arvai2014-02-191-0/+1
| | | | | | | | | | | Do not add version to end of filename by Qt5/mkspecs/features/resolve_target.prf, otherwise nmake install won't find it. Other projects already have skip_target_version_ext in they CONFIG. None of the Qt libraries has version in they filename on Windows. Change-Id: Ifc56a12b9312e7cefe26f5d19e1d1769e73298f6 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Build fix for public API testSzabolcs David2014-02-182-2/+1
| | | | | | | | Patch by Jocelyn Turcotte This fixes the inclusion of private headers. Change-Id: I490336ac30571bf292d88e2747102c75027b8dc6 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Avoid locking up the web view when starting a dragJocelyn Turcotte2014-02-142-0/+13
| | | | | | | | | | | We currently don't have an implementation for drag and drop and we need to explicitly call SystemDragEnded to avoid leaving the render process in an inconsisten state. See http://crbug.com/157134 Change-Id: I52220602d4e4832d11ef601589a588c91bb81285 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Make Qt 5.2 a minimum requirementPierre Rossi2014-02-1410-31/+2
| | | | | | | | Cleanup version ifdefs and v8-private dependencies. Change-Id: Iac393c06dfba02499e60d713d9f4d04ef0c9e617 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com> Reviewed-by: Andras Becsi <andras.becsi@digia.com>