summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Revert "Update chromium patches to apply on current stable (1650)"Jocelyn Turcotte2013-12-1618-129/+543
| | | | | | | | | Let's make sure that the submodule integration succeeds first. This reverts commit 6aa4bb60d7d10e50cb562756ef8210f559b35d1e. Change-Id: I5c9b81654296b3a8a240118f9af222b12dd2ecc4 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Fix the utility process launching.Jocelyn Turcotte2013-12-131-0/+2
| | | | | | | | | | | | | This would cause a crash of the render process while loading facebook.com since the utility process would try to use /proc/self/exe on linux. Bring back the kBrowserSubprocessPath switch to specify our subprocess executable. Change-Id: I4822d43f4a2b5ee86b941721da5ebb47d7a97c5d Reviewed-by: Arvid Nilsson <anilsson@blackberry.com> Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Update chromium patches to apply on current stable (1650)Andras Becsi2013-12-1318-543/+129
| | | | | Change-Id: I3cd2ddc401e67c232c4bcc88d3c20252eece6be3 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Remove --android and download the android and mac files by defaultAndras Becsi2013-12-132-4/+1
| | | | | | | Later we can add 'win' here as well. Change-Id: I80ff9a2855b2a27e29146b2e6b30f55020f5de52 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Improve init-repository.py to fetch up-to-date dependency listAndras Becsi2013-12-134-89/+306
| | | | | | | | | | | | | | | | | | | | | This patch introduces a new mechanism to retrieve submodules. The utilities in version_resolver.py provide means to download the upstream DEPS file for a specified Chromium version. This makes it possible to check out the needed svn branches and specific revisions used for the release. We still use the git repositories found in the upstream .DEPS.git file but since it is not regularly updated after the branch-off, we try to match the release svn revisions to git shasums which is possible since each commit includes git-svn-id's. Also add a maintenance tool get_version.py which reads the Chrome release information from http://omahaproxy.appspot.com. We now pin the latest stable channel Chromium release from branch 1650 with the version number 31.0.1650.63 and a branch-off date of Sept 23rd. Change-Id: Ibbf565f876af79dc008bcd161fddcbdd8bc73977 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Fix the build on ARMAndras Becsi2013-12-112-2/+2
| | | | | Change-Id: I5130a10d56cc7c25da0eabf51c3657ef58cebaa7 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Fix wrong cwd in getChromiumSrcDir().Zoltan Arvai2013-12-101-0/+4
| | | | | | | | | | | | | | | Working directory can be wrong when calling getChromiumSrcDir. On Windows cwd is inside Chrome source directory when it called from repack_locales.py that causes git config to return empty value. This causes the function to fall back to snapshot directory even if upstream is used. Changing cwd to qtwebengine_root, running git config and restoring original cwd resolves the problem. Change-Id: I1bef84ce791f63d3c9e7d6c9506e99c0c53cfc3e Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com> Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Add ftp protocol handler.Xiao Zhang2013-12-104-17/+15
| | | | | Change-Id: Ib5ec11a23d609414f609969dbb2933d83eb6e3bd Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com>
* Introduce WebEngineLibraryInfo for providing pathsArvid Nilsson2013-12-095-35/+179
| | | | | | | | | This allows us to customize paths on BlackBerry, where QtWebEngine is currently installed to an different location than the rest of Qt5. Change-Id: I7144c992bed9fe4d7543ce0d23ee8cd5f5669dd9 Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com> Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Minor clean-up in core_gyp_generator.pro and gyp_run.proAndras Becsi2013-12-092-4/+7
| | | | | | | | | | - Use QMAKE_RESOLVED_TARGET to find out the core lib target name - Pass the NINJAFLAGS env var to ninja instead of passing the content - Remove invalid dependency rule for the ninja target, which is only parsed because it looks like a qmake condition. Change-Id: I09bba8f350308d3249369171d0a3d5824f184590 Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com>
* Add qrc protocol handler.Xiao Zhang2013-12-066-2/+346
| | | | | | | | | | Support qrc resources in html. For example: <script type="text/javascript" src="qrc:///xx.js"></script> <image src="qrc:///xx.png"></image> Change-Id: I490efb7cc300bf894659e79948b65729a12ad73d Reviewed-by: Milian Wolff <milian.wolff@kdab.com> Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com>
* Use files for install instead of extraPierre Rossi2013-12-052-12/+7
| | | | | | | | | | We need to add the no_check_exist value in order for qmake to just accept that those files will eventually exist. This has the benefits of not messing with $(INSTALL_ROOT) and also stripping the library, which could prove useful. Change-Id: I43c230f185420ba92ff8e86f49b4e838ca5dd917 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Remove unused include_dirPierre Rossi2013-12-051-1/+0
| | | | | Change-Id: I4fabc860ad586755e28bd579df743822bcc2bf47 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Use QVector when creating argv for the command lineAndras Becsi2013-12-041-2/+4
| | | | | | | | MSVC does not support variable length arrays. Change-Id: I59ef844256eb1b2666331e5ed0411f63e36883ba Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com> Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Add Android specific build settings and command line switchesAndras Becsi2013-12-043-0/+22
| | | | | | | | Although this is an unsupported platfrom for QtWebEngine it is needed for Boot2Qt-Android and can live upstream. Change-Id: I21fea1fd00c1206e3b56373349b30df5ee121fda Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Quick: Add experimental.viewport.devicePixelRatioArvid Nilsson2013-12-0413-21/+157
| | | | | | | | | | | | | | | | | | | | This specifies a devicePixelRatio to be used by web content instead of the QScreen::devicePixelRatio(). This is necessary on non-iOS mobile devices to remain compatible with the mobile web which assumes devicePixelRatio is computed as the ratio of actual dpi to 160 dpi. Non-iOS mobile platforms may use different criteria to determine the QScreen::devicePixelRatio(), depending on the history of the platform, or simply leave it at 1.0. For QNX, this setting gets a reasonable default value so developers don't have to regularly use this experimental API. These changes were inspired by the Android Chromium port which uses a GetDpiScale() to accomplish the same in content/browser/android/content_view_core_impl.cc. Change-Id: I1bc8878a47dabcdb6986c4fe5c8c4ac230ae2514 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Unify the inclusion of *_extra.gypi files from src/coreAndras Becsi2013-12-031-5/+6
| | | | | | | | This makes it possible to use drop-in files for platform specific options needed for example for Boot2Qt. Change-Id: If9db228ac4be414bfea6f4eafe5199ffee495a48 Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com>
* Python correctnessPierre Rossi2013-12-031-2/+2
| | | | | | | sys.path.insert(0,... can be harmful, let's not take that chance Change-Id: I00e5c70ba97cddbc596a6a0efb1019a08d3f4ff7 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Use the process we install to libexecPierre Rossi2013-12-033-27/+14
| | | | | | | | | Via QLibraryInfo. Also pick the name from qmake, and drop the hardcoded value. Add better error reporting when this fails. Change-Id: I44891a16f079b6c3c334f7f2bafa9edc0b4d69e4 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Get localized strings in the render processPierre Rossi2013-12-038-13/+324
| | | | | | | | Building on top of the repacking of .pak files, we now ship the whole array of repacked locales and pick the appropriate one at runtime. Change-Id: I0096e3eac6a1fc83885fd11e0fa55a746f8e45d8 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Ship repacked .pak filesPierre Rossi2013-12-0313-252/+79
| | | | | | | | | | | | | We used to wrap various .pak files in qrc files, but it turns out to be very memory inefficient compared to chromium's approach of mmaping those files. Drop the pak->qrc logic and instead add some pure gyp targets to repack the resources. We then install those with qmake and look them up with QLibraryInfo. Change-Id: I6dd3cedf6afa626ed181463911fef8885c9e9add Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* More gitignore patternsPierre Rossi2013-12-031-1/+3
| | | | | | | Also whitelist core.gyp in prevision for a handwritten one. Change-Id: I8122d71893158e745f1368fc1b9d0d7aab3d220b Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Use ContentMainDelegateQt also for child processesPierre Rossi2013-12-035-51/+169
| | | | | | | | This will be necessary in order for the render process to load localized strings among other things. Change-Id: Ibb75e49f0bc583c158af61817e5b350f3534ec16 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Implement DidFailProvisionalLoad functionAdam Kallai2013-12-022-0/+7
| | | | | | | | | | | The WebContentObserver::DidFailLoad event doesn't handle all of the errors during the web content loading (eg. network errors). Thus WebContentObserver::DidFailProvisionalLoad should be binded on Qt side to handle these errors too. This event is handled by the WebContentsDelegateQt::DidFailLoad function now. Change-Id: I1421214dd94481a1e27cda8d35a35d418289b604 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Fix the build with a neon enabled setup to pass arm_neon=1 to gypAndras Becsi2013-12-021-1/+1
| | | | | | Change-Id: Ibe0bab32fb215bc4de58a474ca7b77a289dea2f0 Reviewed-by: Arvid Nilsson <anilsson@blackberry.com> Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Adding target specific options based on _target_name does not workAndras Becsi2013-12-021-9/+7
| | | | | | | | | | | Remove the condition for the defines and define them if we compile for the target. If these end up causing issues in the future we have will have to patch gl.gyp in chromium. Also move the TOOLKIT_QT define so that it is always defined. Change-Id: If80f057a277b22fd7e0c9b049eeb137b4876c4cb Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com> Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Gratuitous .prf cleanupPierre Rossi2013-11-291-1/+1
| | | | | Change-Id: I6b4d1ec92b3adc2145a1f2aeec7038eac079d4e8 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Use $$clean_pathPierre Rossi2013-11-291-2/+1
| | | | | | | Seems more robust than a regexp, and the right thing to use in this case. Change-Id: I1ca320606c50fb3d5f593025e23b3e08ae77a124 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Add cygwin support to init-repository.Zoltan Arvai2013-11-291-1/+1
| | | | | | | | | Git submodule works only with cygwin on Windows. MSys Git has problems with long paths. So matchesOS needs to identify cygwin environment as Windows to get the right submodules. Change-Id: Ie7acfaa4d1ef3d891710a39651049c4e5a9f3570 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Moving sources to src part 2: Adjust paths.Jocelyn Turcotte2013-11-2829-150/+122
| | | | | | | | | | | | | | | | | | | NOTE: To build after this you should rerun init-repository.py or run $> git submodule sync $> git submodule update $> git config qtwebengine.chromiumsrcdir src/3rdparty This makes everything build by adjusting paths. Other mixed-in changes: - Rename qtwebengine_src variables in scripts to qtwebengine_root to avoid confusion. - Cleanup the release and debug extra targets that were in lib.pro. This file has also been split into src.pro and core.pro. Change-Id: Ieee9158a65f526b15244eaca59e779b7069d337e Reviewed-by: Zeno Albisser <zeno.albisser@digia.com> Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com>
* Moving sources to src part 1: Move files.Jocelyn Turcotte2013-11-28104-18/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | This only move files without adjusting any paths. This moves: - lib/quick -> src/webengine/api (API files) lib/quick -> src/webengine (other files) This contains the main QtWebEngine module library since <ec7b2ee70a8b2db7fb87f50671a001ddd54697b0>. - lib/widgets -> src/webenginewidgets Also rename this directory to match its module name and rename Api to api. - lib -> src/core - process -> src/process - resources -> src/core/resources - tools/* -> tools/scripts/ The build directory is spread as follow: - build/build.pro -> src/core/gyp_run.pro - build/qmake_extras/* -> src/core/ (for the host and target .pro files) - build/qmake -> tools/qmake - Build related scripts -> tools/buildscripts Change-Id: I0cded1de772c99c0c1da6536c9afea353236b4a1 Reviewed-by: Zeno Albisser <zeno.albisser@digia.com> Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com> Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Add INSTALLS to lib.pro and process.proArvid Nilsson2013-11-282-0/+16
| | | | | | | | | | | | | The gyp output libQt5WebEngineCore.so wasn't installed anywhere when you did "make install". The QtWebEngineProcess is not built by gyp but nonetheless was not installed anywhere. Fixed by adding some INSTALLS to lib.pro and process.pro. I made the lib.pro INSTALL unix-specific for now because I'm not sure how to write "extra" INSTALLS for macx and win. Change-Id: Ic127ab79c5788988b4d12f741eece7afc71cf6ce Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Improved ARM cross-compile settings detectionArvid Nilsson2013-11-271-11/+22
| | | | | | | | | Let the Chromium build system figure out default values if a flag can't be deduced from the QMAKE_CFLAGS. For example, this allows Chromium to default to ARM v7 if no ARM version can be deduced from compiler flags. Change-Id: I47257a7fc27cdbca84c6999dba75affe809f753b Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Fix QtWebEngineProcess linking problems on QNXArvid Nilsson2013-11-271-0/+2
| | | | | | | | | | Add the required -rpath-link arguments pointing to the QNX staging Qt5 library location. Since QtWebEngineProcess only uses Qt5 indirectly through libQt5WebEngineCore.so, it's difficult for qmake to get this right. Change-Id: I1d6fb7c6baf637054b7626443a3224fb76fe51f6 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Fix examples/widgets linking problems on QNXArvid Nilsson2013-11-271-0/+8
| | | | | | | | | | | | | Since QNX ld only supports staging-relative rpath values, the absolute filesystem rpath stored in libQt5WebEngineWidgets.so doesn't help it find libQtWebEngineCore.so. As a QNX-specific counterpart to the rpath hack, we add an rpath-link to qt_lib_webengine.pri that will allow webenginewidgets apps to find the lib at link time. Change-Id: I8217805edebebe55c66e47d6e9409c20f1dfc717 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Prevent Qt from making the QtWebEngineProcess into an app bundle on MacAndras Becsi2013-11-271-2/+4
| | | | | Change-Id: I2d86e63b7a798128e7d542beb3174021142a0577 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Use functors instead of lambda expressions when creating a context menu.Andras Becsi2013-11-262-6/+33
| | | | | Change-Id: I09cea3230da7d0b7a218108668bd562f2cb57384 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Save cookies.Jocelyn Turcotte2013-11-261-2/+7
| | | | | | | | Create an instance of the default sqlite cookie store and set it on the URLRequestContextStorage. Change-Id: I657ed947962bbfaa7369db0b4ce5cad22ee7de7f Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com>
* Add build system support for cross compilationAndras Becsi2013-11-265-4/+91
| | | | | | | | | This patch adds support for inheriting target specific cross-compile settings from Qt. Change-Id: I964297d776bcc5ac169ce09a52f661d08c5b4b9d Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com> Reviewed-by: Arvid Nilsson <anilsson@blackberry.com>
* Fix the build with Qt 5.1Andras Becsi2013-11-264-1/+10
| | | | | | | | We are still able to build with Qt 5.1 if we disable the hardware acceleration codepaths. Change-Id: Ic748dac0a7f25bbd79f2f711a18431872cebd917 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Remove unneeded dependencies to chromium test support.Andras Becsi2013-11-261-2/+0
| | | | | Change-Id: I2d84dca693ee89807c7f125f4645375dada64032 Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com>
* Add missing overrides for AndroidAndras Becsi2013-11-261-0/+5
| | | | | Change-Id: I4a3d3e898b7202c68ee85fd736cd4729daa794b2 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Make it build with QNX chromium portJeff Rogers2013-11-262-4/+11
| | | | | | | | - Fix excludes - Fix gyp so that it supports cross-compiling on mac as well Change-Id: I89081f4115ec4dec6ca2c96bb5ad367d42405bb3 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Fix which method in functions.prf on Windows.Zoltan Arvai2013-11-221-1/+1
| | | | | | | | The first "set _endwhich" needs a value to work well. Change-Id: I1fb65b71dd7dd378de62d2836ba003d54787cd23 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com> Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Get rid of the intermediate "shared" static library.Jocelyn Turcotte2013-11-2113-56/+19
| | | | | | | | It is not necessary anymore since QtWebEngineProcess dynamically links to the core library which will now contain those symbols. Change-Id: I3475347bab41a00b943f934a5e341326c66dc726 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Make QtWebEngineProcess a slim executable.Jocelyn Turcotte2013-11-217-12/+115
| | | | | | | | | | | Move all the process code in the core library and let the later simply call its QtWebEngine::processMain exported function from its main. This also allows us building QtWebEngineProcess directly with qmake without going through gyp. Change-Id: I8df36510d0bf14e313918bef807e2118f1ecadd5 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Fix findOrBuildNinja in functions.prf on Windows.Zoltan Arvai2013-11-201-1/+2
| | | | | | | | | On Windows ninja executable has filename extension. Also slashes need to be converted to backslashes otherwise nmake will not execute ninja from makefile. Change-Id: I89a302860c40de4489231914738578e290476e12 Reviewed-by: Zeno Albisser <zeno.albisser@digia.com>
* Add which method to functions.prf for Windows.Zoltan Arvai2013-11-201-2/+11
| | | | | | | | On Windows the where util is similar to which, but it can return multiple matches so only the first one is selected. Change-Id: I55953ce5dd4940a37ab4fae7baa78dd2deed1085 Reviewed-by: Zeno Albisser <zeno.albisser@digia.com>
* Add guards to project files to prevent unnecessarily processing on Windows.Zoltan Arvai2013-11-192-3/+5
| | | | | | | | | On Windows with default debug_and_release configuration project files parsed tree times while generating Makefile, Makefile.Debug and Makefile.Release. Some operation needs only one time processing. Change-Id: I02d04076cbb70c705916703526444585e83a24ff Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Fix the dyld error when running examples and tests on Mac.Jocelyn Turcotte2013-11-192-0/+10
| | | | | | | | | | | | | | | Make sure that the install_name is set properly when linking the core library. It would normally be possible to set this to <(PRODUCT_DIR) and let gyp handle this, but this isn't supported (see gyp.XcodeSettings.GetInstallName) so let qmake resolve the path. This should be removed to use something relative to @loader_path that would resolve this path to the Qt module libraries once we have proper installation logic in place for the core library. Change-Id: Id617afdf95c4aede6802e55b05deffe3218be82e Reviewed-by: Andras Becsi <andras.becsi@digia.com>