summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Project quads to z=0 instead of compressing them between 0 and 1Jocelyn Turcotte2014-06-171-30/+6
| | | | | | | | | | | | | Since all quads are already separated in non-intersecting geometries and ordered according to their depth by Chromium, there is no need to keep any z value once the perspective projection has been applied. Avoid the useless computation and project the quads to z=0 the same way that QMatrix4x4::toTransform() does when used to flatten QQuickItem::transform(). Change-Id: I3ec5dc2da23cf431e2d8d0bb8b1ed48f2f2d2d8e Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Explicitly return false in WasAllocatedUsingRobustnessExtensionJocelyn Turcotte2014-06-162-0/+2
| | | | | | | | | | | | This is the default behavior of gfx::GLContext, but explicitly do it for documentation purpose and cover the case of the behavior of gfx::GLContext would change in the future. This also updates the submodule to include the change that uses this value. Change-Id: I214376d92b4f9f11bd491c2b1263cf8159e5779f Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Update ninja and bump Chromium version to 33.0.1750.170Andras Becsi2014-06-051-0/+0
| | | | | | | | | | | | | | | | | | | This patch also changes the way we handle our patches. We'll always take a new snapshot without patching Chromium and rebase our patches on top of the snapshot. This removes the need for separate patch files for the ustream repository since we can use the patches of the snapshot and apply them on the upstream checkout if we want to use an upstream build. This makes it easier for us to have branches for the release and maintain and minimize the number of patches we need on top of upstream Chromium. For now a snapshot checkout is needed to be able to prepare the patches for an upstream build but in future we cold improve this to fetch the patches from the remote snapshot repository if needed. Change-Id: I6280ffbe2d50d25d252734bc76d19bfaaa081637 Reviewed-by: Zeno Albisser <zeno.albisser@digia.com>
* Define mac_sdk_min and mac_deployment_target instead of mac_sdk_pathAndras Becsi2014-06-042-5/+5
| | | | | | | | | | With Qt 5.3 mac_sdk_path ends up being empty, so make sure to set the proper flags for chromium to pick the right sdk. Also add clang_use_chrome_plugins=0 so we can remove it as well from the Mac-Use-libc-instead-of-stdlibc patch. Change-Id: Ia132f079f905761644ad26c728f7116f538ea62d Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Fix the build on MacAndras Becsi2014-06-041-0/+1
| | | | | | | clang complains about unknown scoped_refptr Change-Id: Iee7590f9ad45cab55a5918bf1c756aa769fa3fd9 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Support EGLStream video streaming on QNX platformMansoor Chishtie2014-06-025-13/+76
| | | | | | | | | | | | | | | | | | On QNX platform, we implement video streaming via OpenGL EGLStream streams. Changes were added to StreamVideo class to support EGLStream objects. For non-QNX platforms, we kept the StreamVideoNode class unchanged - assuming other platforms will continue to support streaming via EGLImage objects. On QNX, cc::StreamVideoDrawQuad contains an external OES texture that is associated with an EGLStream. Before we draw with that texture, an 'acquire' is performed to grab latest video frame. See EGL_KHR_stream specs from Khronos. Change-Id: Ia3fe25e9047f475594a55591e3e11caa0eab1e6a Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Move gyp defines to os specific config for WindowsZoltan Arvai2014-06-023-5/+9
| | | | | | | Currently some variables defined in os independent section. Change-Id: I661d840b2271dc4bccf98dc2a252feaf6907952c Reviewed-by: Michael Bruning <michael.bruning@digia.com>
* Fix "findNext" after having navigated to a new pageJocelyn Turcotte2014-05-283-4/+9
| | | | | | | | | | | | The findNext flag tells the frame to search starting from the current selection, but the code assumes that the flag won't be used when there isn't any find selection (like when the Frame changed). Make sure that we won't use that flag after we received a load committed signal. Change-Id: I10f0f84226232d150f19fd644d7afe78bc425f74 Reviewed-by: Michael Bruning <michael.bruning@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>
* Windows: Fix typo: eglContextPeter Varga2014-05-221-1/+1
| | | | | | | | | | Use eglContext instead of eglcontext as a parameter of nativeResourceForContext() function on windows: qtbase/src/plugins/platforms/windows/qwindowsnativeinterface.cpp Change-Id: Id6b4b5b6b8befad5b8a20b44e1c2a80c034921f9 Reviewed-by: Michael Bruning <michael.bruning@digia.com> Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Windows: Use single process binary on Windows and fix GL contextPeter Varga2014-05-214-1/+12
| | | | | Change-Id: Iee7f3dc7fb9deba03e57a80ed48b74069490fe0d Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Fix a crash when running witout UI delegates.Pierre Rossi2014-05-201-8/+23
| | | | | | | | | Lookup the correct UIDelegates import path once lazily, and reuse this information. If there is none, then we don't expect any UI delegation to work, but it should not crash. Change-Id: I73be7273d83b8d89b74641dc550341cf2b7eb602 Reviewed-by: Zeno Albisser <zeno.albisser@digia.com>
* Buildfix after Iacc6cff82c0f071d1c8901977748d6164fb0a87d.Zeno Albisser2014-05-201-0/+2
| | | | | | | We only do have the scoped_ptr m_surfaceFactory on Android. Change-Id: Ia377afa9a8662498fca005994bd5fbec5c41bc9e Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Use the same switches for both embedded Linux and AndroidJocelyn Turcotte2014-05-192-2/+7
| | | | | | | | This also explicitly enables impl-side painting, which is enabled by default on Android, hard-coded behind an #if defined(OS_ANDROID). Change-Id: Iacc6cff82c0f071d1c8901977748d6164fb0a87d Reviewed-by: Zeno Albisser <zeno.albisser@digia.com>
* Fix jerky pinch-zoomingJocelyn Turcotte2014-05-191-1/+0
| | | | | | | | | | | The kEnableScrollPrediction switch uses event timing to extrapolate events but this considerably reduces the smoothness of pinch-zooming. Assuming that this feature expects very well timed events, which we don't have in most of QPA platform plugins, disable the feature. Change-Id: I96bdd8b9e9cc870e232ad9c98bcad5857608870b Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Fix some more documentation.Michael Brüning2014-05-194-110/+132
| | | | | | | | | Adds the license for Chromium to the legalese part. Adds some missing documentation to QWebEngineView and QWebEnginePage. Change-Id: Ie81aaa87db85bb72efb83680defbdb101a134df0 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Fix the build on eAdroidAndras Becsi2014-05-191-1/+1
| | | | | | | | | The eAndroid mkspec also sets linux, and since the qnx change we ended up including both android and linux configs. Make it more obvious why the else is there. Change-Id: Ia97483d410e280bbb4f4b56cf6fd351f6a4bbbca Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com>
* Fix fling gesturesJocelyn Turcotte2014-05-192-2/+12
| | | | | | | | | | | | | | | InputHandlerProxy::HandleGestureFling assumes that the timestamp on the fling gesture is in the same system as base::TimeTicks. By giving it our smaller relative event timestamps (most often taken from a QElapsedTimer) this ends up here being calculated as a negative time on the fling animation curve. Fix the issue by applying a delta at the ui::TouchEvent conversion so that the resulting GestureFlingStart has a timestamp that can be reliably interpreted. Change-Id: I5e149bf64887305119643359495f89be6e0c3ffb Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* [Widgets] Tooltip word wrap fixupPierre Rossi2014-05-161-1/+6
| | | | | | | | | | | QTooltip's documentation states that "rich text displayed in a tool tip is implicitly word-wrapped". This seems to be a more desirable behavior for our needs. To mitigate any potential malicious tooltip contents, we escape any eventual html entities, and truncate to a reasonable size. Change-Id: Iae3ea80e7660840aae39d228d1177dcc56f4a032 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Remove the webpage snippet for now.Michael Brüning2014-05-163-115/+0
| | | | | | | | | | This snippet contains API that we might not support at all. It is better to remove it and add a new version in case we reintroduce this than to present a snippet that does not work or only works partially. Change-Id: Ia47ad69108ddcbe529aecff8e4f235b17d80514f Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Fix a crash preventing us from using ImplSidePaintingJocelyn Turcotte2014-05-162-12/+18
| | | | | | | | | | | | | | Because of an uninvestigated reason, ImplSidePainting can cause more than one quad to use the same resource_id in one delegated frame. Fix the issue by first checking if m_data->mailboxTextures contains a texture for the resource_id before overwriting it. This also re-enables the feature on OS_ANDROID where it is enabled by default. Change-Id: Ie7842f958e1c049db71ffc2a0a768a5725102a3d Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Set the QtWebEngine modules version to 0.9.0Jocelyn Turcotte2014-05-163-4/+18
| | | | | | | | | | | | | | | | | | | | Also make sure that this version number appears in the user agent string and in the QML imports. The plan, unlike other Qt modules, is to keep our module and QML versions in sync to make it easy for developers to figure out what API is available in a given version. The QTWEBENGINECORE_VERSION_STR define is explicitly set in the .pro file since we don't call syncqt to generate a version header for the core module. The 0-major version currently causes the library name to start with libQt0 instead of libQt5, but this is something that we can fix in qtbase once we want to officially support linux desktop with QtWebEngine 1.0.0. Change-Id: I31915e84869b4db456416ef1f85a2296b8a06c99 Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com> Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* Add initial build configuration for QNX.Jeff Rogers2014-05-163-0/+19
| | | | | | | | QNX is using Ozone, so exclude gl_context_ozone as well. Change-Id: Icdad9eed3211e9b095fbf884bc5e0243b551c1bb Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com> Reviewed-by: Arvid Nilsson <anilsson@blackberry.com>
* Remove obsolete QNX exclusions.Jeff Rogers2014-05-161-6/+0
| | | | | | | | | QNX has since changed to Aura and no longer has its own implementations of those files. Change-Id: I193dfa82093530742e6c6599750972bce0e69e39 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com> Reviewed-by: Arvid Nilsson <anilsson@blackberry.com>
* Add linkHovered support for Widgets APISzabolcs David2014-05-153-1/+8
| | | | | | | | Drop hovered title and link text parameters, as we did in the Quick API. Change-Id: Ia1a38e0d728afbcbb6858a890486772da74aa813 Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com>
* Make gyp to dump debug symbols for separate_debug_info buildsAndras Becsi2014-05-152-0/+6
| | | | | | | | | With this patch we get usable debug files. This also makes qmake strip the core lirary from unneeded sysmbols which is especially beneficial on embedded. Change-Id: Ic1cadd87dbedb9817512a8b4f251cc3e43f028d1 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Enable GLContextHelper and register a SurfaceFactoryQt on eAndroidAndras Becsi2014-05-156-7/+34
| | | | | | | | | | | | This is needed to run on certain hardware that needs the shared EGL contexts to be created on the same thread. To prevent a deadlock on eAndroid only use a blocking connection if we are not on the main thread where the singleton was created, since there is a call to this from gpu_info_collector_android before the GPU thread is launched. Change-Id: I6887ad1218b8426097f454741dc5a79ee94f9d62 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Update eLinux patch to match the snapshotAndras Becsi2014-05-141-0/+0
| | | | | | | This also updates the snapshot shasum. Change-Id: I4c76585d3285d33d5af5369dbb56b52f2434ef82 Reviewed-by: Zeno Albisser <zeno.albisser@digia.com>
* Remove a reference to content shell in devtoolsPierre Rossi2014-05-131-1/+1
| | | | | | | QtWebEngine seems like a better description. Change-Id: I64fb66ee829b611d50503c9b0f10b968c877ff77 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Fix audio not being built on desktop LinuxJocelyn Turcotte2014-05-131-2/+0
| | | | | Change-Id: Idaf5264304d09ae7b2bfe0abee7c53310b50b48f Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Remove the xPath argument from runJavaScriptJocelyn Turcotte2014-05-125-14/+16
| | | | | | | | | | | | | | This value is only used internally by Chromium and risks being removed at anytime, for which we would then have to maintain a downstream implementation. Chromium also only supports frame values, while a complete support of the interface would require also supporting this xPath to point to individual document element by affecting the value of "this", the same way that QWebElement::evaluateJavaScript allowed in QtWebKit. Change-Id: Id0cb1b8e3bdf9a6db0ca786fb5eb46ffd726d165 Reviewed-by: Michael Bruning <michael.bruning@digia.com>
* Fix up some more documentation.Michael Brüning2014-05-126-268/+130
| | | | | | | | | | Removes methods from the documentation that no longer exist. Removes left over instance of Qt WebKit / WebKit instead of Qt WebEngine / Chromium in the documentation. Change-Id: I27e1d41fc16116a60f94c3369f76ddfed60e4380 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Check properly for EGL extensions before using themLaszlo Agocs2014-05-122-7/+22
| | | | | | | | | | | Always check both EGL_EXTENSIONS and the validity of the returned function pointers. Otherwise bad things happen on EGL implementations that do not have the extension. Fix also linking to EGL. CONFIG+=egl has to be in core_module.pro too. Change-Id: I5e3dc54675d83123fc79e2d27a7af19fcc7f936a Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Append MessageLevel postfix to the JavaScriptConsoleMessageLevel.Michael Brüning2014-05-122-6/+6
| | | | | | | This keeps consistency with the other enum names. Change-Id: Idaedb8566fd770b05effeeba377b09a84bf0af12 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Move the WebEngineView.inspectable property to experimentalJocelyn Turcotte2014-05-093-15/+15
| | | | | | | | The property is still not properly implemented and we'll make it first go through the experimental tryout like other APIs we add. Change-Id: I6eb99fcebb7ca1fc33338d786585cfe7fbc0afd4 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Fix Google Maps not showing tiles when panning/zoomingJocelyn Turcotte2014-05-093-11/+18
| | | | | | | | | | | | The issue is that the web worker that fetches and pre-process the map tiles couldn't be started successfully from a Blob. We were missing the blob: scheme handler that was passed to us in the ignored protocol_handlers argument of BrowserContextQt::CreateRequestContext. Change-Id: I24b726a1577e7092d53b1821efd3e4aa2a66c7d9 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Fix a crash when attempting to dragJocelyn Turcotte2014-05-085-3/+187
| | | | | | | | | | | | | | | | | Q_UNREACHABLE in RenderWidgetHostViewQt::GetNativeView is now called through RenderViewHostImpl::OnStartDragging since the last Chromium update. Even after removing this, OnStartDragging will now also try fetching the device pixel ratio through gfx::Screen::GetNativeScreen(). Provide a dummy implementation of gfx::Screen only to avoid the crash, the class still doesn't do anything and is filled with Q_UNREACHABLEs to catch if any of those methods are reached in a future Chromium update. Change-Id: I2e9dafab5e4622df97100dd7a859523067635118 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Fix double clicks needing three presses in QWebEngineViewJocelyn Turcotte2014-05-084-13/+15
| | | | | | | | | | | | | | Since Qt 5.3 QWidget has the same behavior as Qt 4 where it will replace a second MouseButtonPress event with a MouseButtonDblClick instead of sending both. Fix the issue by moving the MouseButtonDblClick ignore code up to the QtQuick code, assume that upper layers will not send MouseButtonDblClick events, and re-replace the MouseButtonDblClick event with a MouseButtonPress in the QtWidgets code. Change-Id: I529dad2de538f486b00eb900ea6d2ed849a3b1f0 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Add test_baseUrlAfterLoadHtml QML test caseSzabolcs David2014-05-086-12/+8
| | | | | | | | Remove unreachableUrl support from WebContentsAdapter::setContent, because this argument behaves exactly the same as baseUrl. Change-Id: I36f92b99b7045c6d3b831481bb04d51a0e05772f Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Properly cleanup the old page when attaching a new oneJocelyn Turcotte2014-05-072-0/+8
| | | | | | | | | | | | | | | | | | | This patch fixes two issues: - The RWHV delegate of the old page would not be detached from the view when attaching a new page to that view. Call reattachRWHV as we do on the new page to make sure that the delegate gets unparented from the view. - QtWebKit documents that a page having the view as its QObject parent should be deleted when setPage is called with a new page. This would cause QupZilla to leak the page when opening a new window through a link. This also adds a workaround to avoid a crash when unparenting the delegate where QOpenGLWidget would try to call paintGL without a valid QSurface. Change-Id: Icd2659f441d2220c26dc175d66424e6c26125861 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Fix an assertion in MediaCaptureDevicesDispatcherJocelyn Turcotte2014-05-071-0/+6
| | | | | Change-Id: I169f142e867ed1bda52dff7f5f66fb88ed802c01 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Remove icu-config workaround and add libraries for eLinuxAndras Becsi2014-05-072-1/+7
| | | | | | | | | | We require that the icu libs are in the default library seach path since we build embedded with use_system_icu=1. This patch also updates the chromium patches and the shasum of the submodule. Change-Id: Ica43fa45e9f5eac712019f5437bb9fde0896e49a Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* Windows: Fix yet another crash in ContantMainRunnerImpl::InitializePeter Varga2014-05-071-1/+5
| | | | | | | | Without initialization of the SandboxInfo it still crashes: g_broker_services is null. Change-Id: Ib4bc0666fefe0f81b489e0ef3c179eae866f804f Reviewed-by: Michael Bruning <michael.bruning@digia.com>
* Set Chromium to EGL on eglfs tooLaszlo Agocs2014-05-061-1/+2
| | | | | | | Don't try to use GLX on regular Linux builds when using eglfs. Change-Id: I491ab4931e3e26869069680aff6aaab499c61986 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Add linkHovered signal to the QQuickWebEngineViewSzabolcs David2014-05-057-0/+18
| | | | | | | | I dropped hovered title support from the QtWebKit API, it seems we don't need that logic. Change-Id: I5617c295344512a35aa526a6f1307f0b21f866d6 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Simple experimental WebRTC API for QtQuickPierre Rossi2014-04-292-1/+45
| | | | | Change-Id: I18059c2894893d28c03dc790037bdd3ff28cfd07 Reviewed-by: Zeno Albisser <zeno.albisser@digia.com>
* WebRTC Widgets APIPierre Rossi2014-04-293-1/+61
| | | | | | | | Simply reuse the existing feature request approach that was used for geolocation and notifications in QtWebKit. Change-Id: I8fec4f4e9e81b491163912fadb4ce17d343864dd Reviewed-by: Zeno Albisser <zeno.albisser@digia.com>
* Add WebRTC supportPierre Rossi2014-04-2914-0/+725
| | | | | | | | | | | | | Reuse the MediaCaptureDevicesDispatcher from the chrome layer, pretty much as is, and wire it in with WebContentsDelegateQt and WebContentsAdapter/WebContentsAdapterClient for API delegation. We also need to ensure that our user agent string mentions Chrome and the Chrome version we're based on, in order to please websites that detect feature support that way. Change-Id: I0ddf8cd34e4add96bc36f59adfe8e0384e728d93 Reviewed-by: Zeno Albisser <zeno.albisser@digia.com>
* Add a way of using UI dialogs for authorizationPierre Rossi2014-04-298-20/+54
| | | | | | | | We could use this to prompt the user for various feature permissions that we are not ready to expose in our API. Change-Id: If6e6a16aca4142b0564121dfc7677b7c4996f742 Reviewed-by: Zeno Albisser <zeno.albisser@digia.com>
* Update snapshot to include WebRTC dependencies.Pierre Rossi2014-04-291-0/+0
| | | | | Change-Id: I1dcf709da30af55d5917a0958f08be380cf63feb Reviewed-by: Andras Becsi <andras.becsi@digia.com>