summaryrefslogtreecommitdiffstats
path: root/src/core
Commit message (Collapse)AuthorAgeFilesLines
* Fix build for Boot2QtMichael Brüning2018-10-181-0/+1
| | | | | | | | | | | | | A change in Chromium 69 pulled a mojom header into the public content browser API without, assuming the dependencies would always be fulfilled via building the extension system. Add the dependency explicitly to fix this. Change-Id: I005aa0970c7ecdbdce90d8c1db78c38f2274d324 Fixes: QTBUG-70914 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Allow XMLHttpRequests from qrc to fileJüri Valdmann2018-10-181-0/+7
| | | | | | | | | | | | | | | Add test for cross origin XMLHttpRequests from/to custom schemes. By default, this is not allowed, but can be changed by adding an origin access whitelist entry to blink::WebSecurityPolicy in the renderer. Do this for the qrc scheme. As a result SecurityOrigin("qrc").CanRequest("file") will return true, which makes DocumentThreadableLoader::Start disable CORS for the request. Otherwise, CORS would be used, which only works with CORS enabled schemes. Fixes: QTBUG-70228 Change-Id: I2da60fddbbfb490c6d2f03329be286dbc28e1f12 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Add kerberos feature to configure systemMichal Klocek2018-10-176-4/+16
| | | | | | Task-number: QTBUG-51082 Change-Id: I2c3ed5b42b054a9385f358eb9311646bc2a6cde0 Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* Use common Qt settings instead of setting C++14 explicit in core APIAllan Sandfeld Jensen2018-10-161-2/+5
| | | | | | | | Makes it unnecessary for us to try match Qt settings. Only done for API, due to the rest of core being built by GN. Change-Id: Ib9f8acb7e99ae22dd2d7281c9082d822f1d238eb Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Disable error pages for external URLsv5.12.0-beta2Jüri Valdmann2018-10-121-6/+4
| | | | | | | | | | | | | Failing to launch an external URL triggers a navigation to "chrome-error://chromewebdata". Navigating to "chrome-error://chromewebdata" results in a failed attempt to launch it as an external URL. The cycle repeats until the computer becomes bored. Match Chromium and disable error pages for external URL load failures. Fixes: QTBUG-63378 Change-Id: I6c401532d658744edc56921b55efd0d040a12b1a Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Fix mojo-based WebUIAllan Sandfeld Jensen2018-10-121-0/+2
| | | | | | | We were lacking the mojo_bindings.js resource. Change-Id: I7afa4dc101fb9dfd7e28e17ccb7f3edef0a5566b Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* Rename GLContextHelper::getXConfig() to getGlXConfig()Allan Sandfeld Jensen2018-10-114-5/+5
| | | | | | | It returns a GLX specific configuration, not an X-specific. Change-Id: Iecbb52b8d33c6f6f6471aec41082ecb49eaed416 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Fix Ozone platform detectionAllan Sandfeld Jensen2018-10-111-5/+7
| | | | | | | | | Only use GLX if GLX is used as OpenGL backend. This fixes using QtWebEngine on Linux with QT_XCB_GL_INTEGRATION=xcb_egl set, or when it automatically falls back to EGL. Change-Id: Ida95e4148e72af0d64fe16285b5007e3105ad898 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Use configs instead of setting include dirs directlyAllan Sandfeld Jensen2018-10-111-6/+6
| | | | | | | | This is more correct and can help us when include dir changes in future. Change-Id: I83b719944651b3229fc09fa23b74b4e2599dc7cc Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Chromium requires C++14Allan Sandfeld Jensen2018-10-111-0/+3
| | | | | | | | | QtWebEngineCore was only building because Chromium CPPFLAGS was overriding ours. And setting C++11 in our examples and tests now forces a downgrade. Change-Id: I3642394f15bb9974688991800552624d2379faf9 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Fix leak which arises on querying GLOzone instance in SurfaceFactoryQtKirill Burtsev2018-10-084-18/+12
| | | | | | | | | Ownership of GLOzone instance assumed to be hold by factory, no new instance should be created on each GetGLOzone call. Task-number: QTBUG-69088 Change-Id: I7eb8575f1f35bd30292a8b4fc5ab1334ccb8e2bb Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Update Chromiumv5.12.0-beta1Allan Sandfeld Jensen2018-10-022-5/+4
| | | | | | | | | | | | | | | Changes: 8e6f5751e5 Restore media::FFmpegGlue::InitializeFFmpeg() 0c8d188f16 Add x86 target support for gn 2a52817b6e Fix creation of 'x86' toolchain in gn 3a84c2a8bc Add support for modules limiting jumbo width c69fdae9c7 BASELINE: Update Chromium to 69.0.3497.113 3a783ba38b Merge remote-tracking branch 'origin/upstream-master' into 69-based a4ecaddc7c Remove missing symlink to gen from perfetto/ui/src 3f8994c671 [Backport] Use newer GrGLFunction based on templated function types rather than pointers. Change-Id: Ibfe810c1c9b88e25e9093fbb2aa213249f1a77bf Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* Fix tiled layersAllan Sandfeld Jensen2018-10-021-7/+10
| | | | | | | | Calculates and uses the source rect of layers. Task-number: QTBUG-67652 Change-Id: If5569da6e18a3b9728392ecf1f3c60e9e0663229 Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* Cleanup scenegraph integrationAllan Sandfeld Jensen2018-10-022-45/+15
| | | | | | | | Get rid of old QSG type names, and also remove redundant setupTiledNode call. Change-Id: Ifbd83f6bdc0e029eb52899b20562ef6606f5562b Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* Remove old switches no longer used by AndroidAllan Sandfeld Jensen2018-09-281-3/+1
| | | | | Change-Id: Id2a50e7b133e9b32150f3fd248e9822e1668fc13 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Cleaner shutdownAllan Sandfeld Jensen2018-09-271-0/+9
| | | | | | | | | | The print-job manager was trying to recreate a notification service, so destroy it earlier, and at the same time kill the content runner before existing WebEngineContext::destroy() to catch any other late recreations of singletons. Change-Id: Ifaa333386248c3dbc6d4f828c727a0a17d5f5c90 Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* White-space cleanup of media_capture_devices_dispatcher filesAllan Sandfeld Jensen2018-09-272-205/+193
| | | | | | | | In preparation for a deeper cleanup to avoid mixing whitespace and non- whitespace changes. Change-Id: Iedbaf304a06b227799bbe74c71c570b7a675aea4 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Merge remote-tracking branch 'origin/5.11' into 5.12Liang Qi2018-09-271-0/+15
|\ | | | | | | | | | | | | | | | | Conflicts: configure.json configure.pri src/3rdparty Change-Id: I2e0614b33596fe66999508556c464ed84acc8e2f
* | Add accessibility_tree_formatter_qtAllan Sandfeld Jensen2018-09-256-15/+227
| | | | | | | | | | | | | | | | | | | | | | Needed by chrome://accessibility Updates chromium to related change: 224fc0748a Do not assert on --disable-gpu 0ba5e6626a FIXUP: Add ifdefs to exclude ATL and accessibility from the build Change-Id: Ida0b03048ab6aa04686251d16ccfbf4855a37690 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* | Set enable_channel_idAllan Sandfeld Jensen2018-09-241-0/+7
| | | | | | | | | | | | | | | | | | | | Channel ID is now default off in the params constructor, but still default on as a feature in Chromium, but is deprecated and scheduled for being removed and replaced with token-binding. This patch follows the Chromium feature defaults for which of those is on or off. Change-Id: I3b9a0bc38bd42668d515d1e321c3f3b92144e986 Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* | [macOS] Fix building with native spellchecker optionMichael Brüning2018-09-242-7/+1
| | | | | | | | | | | | | | | | Some files that the native spellchecker feature included were removed after a reafctoring in Chromium. Change-Id: I07ab0a235bb2a916b979c1981164f325e5204be5 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* | Set a maximum size on faviconsJüri Valdmann2018-09-241-1/+2
| | | | | | | | | | | | | | | | | | | | | | Favicons are downloaded by the render process and sent back via mojo message. However, mojo messages have a maximum size; if the favicon doesn't fit, the render process is killed. Impose a maximum size to ensure that favicons can fit in mojo messages. Task-number: QTBUG-69123 Change-Id: I6027bc310dcc77ec530145e4f125efa36106464f Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* | General adaptations for Chromium 69Allan Sandfeld Jensen2018-09-2247-235/+385
| | | | | | | | | | Change-Id: Ifeaf0ee13213dc5a24d2f2b4655cf7f405cddef7 Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* | Handle Chromium resize throttling using surface idsAllan Sandfeld Jensen2018-09-222-7/+36
| | | | | | | | | | | | | | | | | | | | We need to change surface id to acknowledge a resize is completed, and we need to handle that Chromium is rejecting resize events because the last one is not yet acknowledged. Change-Id: I93b1e197218906de80d5748a5a100f7a740ea07c Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu> Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* | Adapt to forced scroll-wheel latchingAllan Sandfeld Jensen2018-09-224-13/+28
| | | | | | | | | | | | | | | | Handle that Chromium now requires all wheel events to be phases despite them not being phased on the majority of platforms. Change-Id: Iabd5630652c0d8fd67563db3d63ef1f2f528c35c Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* | Adaptations for Chromium 68Allan Sandfeld Jensen2018-09-2233-140/+140
| | | | | | | | | | | | Together-with: Tamas Zakor<ztamas@inf.u-szeged.hu> Change-Id: I805246b6f01cb151fff48588744408c676d87c14 Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* | Merge remote-tracking branch 'origin/5.11' into 5.12Allan Sandfeld Jensen2018-09-173-1/+5
|\| | | | | | | | | | | | | | | Conflicts: src/3rdparty src/core/core_common.pri Change-Id: I36dc3a70aa653e6c8a610c787b615034180a6127
| * Set arm_arch as wellAllan Sandfeld Jensen2018-09-131-0/+1
| | | | | | | | | | | | | | Either overlooked or added after we make the GN switch. Change-Id: I93bfc27c2e71165901c2046ab2ea902d9dad39d3 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
| * Merge remote-tracking branch 'origin/5.11.2' into 5.11Qt Forward Merge Bot2018-09-091-1/+1
| |\ | | | | | | | | | Change-Id: Idee34fa6d4cc54effd84d3b78e3666fa7fcce8db
| | * Fix no-opengl builds on windowsv5.11.2Allan Sandfeld Jensen2018-09-041-1/+1
| | | | | | | | | | | | | | | Change-Id: I134876aa68bd42356c0b897a5d7d5881f27724a4 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
| * | Disable LTCG for Qt WebEngineCoreAllan Sandfeld Jensen2018-09-061-0/+3
| |/ | | | | | | | | | | | | | | We do not have it working together with the building of Chromium. Task-number: QTBUG-66571 Change-Id: Ib000a4102b02902f2ac257347e406297fe1608cf Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
* | Fix issues with qml bindings accessing non-existing adapterMichal Klocek2018-09-122-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We have currently two levels of initialization for WebEngineView: the profile initialization and the adapter initialization. The adapter initialization is delayed to first navigation request to pick the right initial site instance and avoid creating dummy/blank WebContents, which in turn would start unnecessary render process. Profile initialization is delayed to make sure we avoid unnecessary default profile creations. Created profiles use filestorage. Unfortunately qml will call QQuickItem::componentComplete() only when the root element is completed and the bindings can be already in use by that time. Profile initialization has to take place before adapter initialization. Construct adapter together with WebEngineView, but create and initialize profile before adapter initialization. Go through WebEngineView and fix emitting signals based on adapter initialization. Most of the signals are emitted on initializationFinished(). Task-number: QTBUG-70248 Change-Id: I2acd8bff761c692a360733cbf537de53e1295695 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Improve QWebEngineUrlScheme APIJüri Valdmann2018-09-123-34/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Following feedback from 5.12 API review: - Use enum class for Syntax - Add Q_FLAG for Flags - Mark constructor from name as explicit - Rename Secure to SecureScheme - Rename Local to LocalScheme - Rename addScheme to registerScheme - Rename findScheme to schemeByName Task-number: QTBUG-70247 Change-Id: Iae332c8d9843349506e8a4b07d70f0d234597375 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Extract Compositor from RenderWidgetHostViewQtv5.12.0-alpha1Jüri Valdmann2018-09-115-93/+303
| | | | | | | | | | | | | | | | Split compositing-related functionality from RenderWidgetHostViewQt into a new class Compositor. Change-Id: I97b26a6057734cd8ce8c1df29b373888f7a07c1c Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Remove more dead code from the libsrtp testThiago Macieira2018-09-051-11/+0
| | | | | | | | | | | | | | | | | | Commit 83e790dae14725347180bb79e463c5f242616b8d removed the test, but not the configure.json files, so the test always failed because the test failed to compile. Change-Id: I8b4ab98c34b94afd94b6fffd15516f06ec21c791 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Fallback to Latin-1 if ASCII and UTF-8 doesn't workAllan Sandfeld Jensen2018-09-051-1/+2
| | | | | | | | | | | | | | | | | | | | Latin-1 is a standard fallback for HTTP headers, but no one that HTTPContentDisposition::Parse considers by default. Task-number: QTBUG-70288 Change-Id: Ife36fffe31da5492cde49a4d447cfc42b3f64b95 Reviewed-by: Zakor Tamas <ztamas@inf.u-szeged.hu> Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* | Fix QWebEngineUrlScheme::operator== constnessJüri Valdmann2018-09-042-4/+4
| | | | | | | | | | | | Task-number: QTBUG-70247 Change-Id: Ic0898966d9a88a0bbcdf749c6ea7e80e054d68a3 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Return http status code for successfully loaded pagesErwin Kandler2018-08-291-1/+5
| | | | | | | | | | | | | | | | | | WebEngineView supports getting the http status code (error code) for failed loading requests only. This patch lets the user access the status code for successfully loaded pages as well. Change-Id: Ib8dbdfe94eed4d62e731c736c13f60ebd62a23fa Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* | WebEventFactory: Use QKeyEvent::key() if QKeyEvent::text() is emptyJüri Valdmann2018-08-271-13/+52
| | | | | | | | | | | | | | | | Fixes missing dom_key issue when ControlModifier is used on Linux and macOS. Task-number: QTBUG-69442 Change-Id: Icd644d019494fd3c95269b42c71efd747507a3ea Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* | WebEventFactory: Fallback for WebKeyboardEvent::dom_codeJüri Valdmann2018-08-271-1/+7
| | | | | | | | | | | | | | | | | | | | Usually this field should be computed from the native scan code, but sometimes we do not have a native scan code (in tests, for example). Add a fallback case to compute this field from windows_key_code, with test. Task-number: QTBUG-69442 Change-Id: I046094032576f4215cc8b3a6ced699a86ea148a9 Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* | WebEventFactory: Fix WebKeyboardEvent::dom_code on macOSJüri Valdmann2018-08-271-5/+8
| | | | | | | | | | | | | | | | | | | | | | Currently this field is always computed from QKeyEvent::nativeScanCode, but this is not correct on macOS where nativeVirtualKey should be used instead (there is no nativeScanCode on macOS). Fix by using native_key_code which already takes this into account. Task-number: QTBUG-69442 Change-Id: I7c99d7d147ab68bac7ab91101de173eb04fa5c03 Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* | WebEventFactory: Fix WebKeyboardEvent::native_key_code on Windows and LinuxJüri Valdmann2018-08-271-1/+25
| | | | | | | | | | | | | | | | | | Currently this field is filled from QKeyEvent::nativeVirtualKey, but this is correct only on macOS (cocoa). Other platforms should use nativeScanCode. Task-number: QTBUG-69442 Change-Id: I097ec4c726a9d249c0adfbc620d2585983f6246c Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* | WebEventFactory: Use runtime platform detectionJüri Valdmann2018-08-271-6/+40
| | | | | | | | | | | | | | | | | | Make sure that the platform specific code paths are only taken when the relevant QPA plugin is actually used. Also detect if eglfs plugin is using Xkb key codes. Task-number: QTBUG-69442 Change-Id: I9546b61ad8d9f15020a96f8c0006d056aa157fcc Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* | WebEventFactory: Consistently unswap Control and Meta on macOSJüri Valdmann2018-08-271-30/+44
| | | | | | | | | | | | | | | | | | Move swapping logic to separate helper functions and use them also for filling out windows_key_code and dom_key. Task-number: QTBUG-69442 Change-Id: Id3b883b28b877d54315c5e2fb0d77bad250f2462 Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* | Replace RenderWidgetHostViewQt::m_host by RenderWidgetHostViewBase::host()Tamas Zakor2018-08-242-40/+38
| | | | | | | | | | Change-Id: I327c2459e803602dae107defec8d03d75f363cd7 Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* | WebContentsAdapter: Fix build against Qt 5.9Jüri Valdmann2018-08-231-6/+7
| | | | | | | | | | | | | | QTimer::singleShot wants to copy the lambda but LoadURLParams is not copyable. Change-Id: I300b70eef0041294080a15166a50321bb4292cfd Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Clean-up of forward declarations and includes in core headersTamas Zakor2018-08-234-13/+0
| | | | | | | | | | | | Change-Id: Icf0508baf0884afe7591b35e13733b17c9fdfe90 Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | DelegatedFrameNode: Use QSGTexture::filtering()Jüri Valdmann2018-08-231-17/+9
| | | | | | | | | | Change-Id: I5ab52de1eb6bd7a25e8b680f4779a505e3f1fcf0 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Merge remote-tracking branch 'origin/5.11' into 5.12Michael Brüning2018-08-2114-33/+105
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: .qmake.conf configure.json examples/webenginewidgets/markdowneditor/resources/3rdparty/marked.js examples/webenginewidgets/markdowneditor/resources/3rdparty/qt_attribution.json examples/webenginewidgets/markdowneditor/resources/markdowneditor.qrc mkspecs/features/platform.prf src/3rdparty src/core/media_capture_devices_dispatcher.cpp src/core/net/url_request_context_getter_qt.cpp src/core/net/url_request_context_getter_qt.h src/core/web_contents_adapter.cpp Change-Id: I467133ba455b1f85f6bb61793794c31cb1094541
| * Fix --enable-webgl-software-rendering with drivers that don't support OpenGLKai Koehne2018-08-161-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | --enable-webgl-software-rendering is supposed to be used together with mesa llvmpipe / opengl32sw.dll. However, Chromium did still use the built-in GPU blacklist to disable features based on the hardware GPU driver. Avoid this by always passing --ignore-gpu-blacklist for this mode. Task-number: QTBUG-69236 Change-Id: I430d101f6eac64478585de54f705e76859c80597 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>