Add qrc protocol handler.

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>
Minor clean-up in core_gyp_generator.pro and gyp_run.pro

- 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>
Introduce WebEngineLibraryInfo for providing paths

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>
Add ftp protocol handler.

Change-Id: Ib5ec11a23d609414f609969dbb2933d83eb6e3bd
Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com>
Fix wrong cwd in getChromiumSrcDir().

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>
Fix the build on ARM

Change-Id: I5130a10d56cc7c25da0eabf51c3657ef58cebaa7
Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
Improve init-repository.py to fetch up-to-date dependency list

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>
Remove --android and download the android and mac files by default

Later we can add 'win' here as well.

Change-Id: I80ff9a2855b2a27e29146b2e6b30f55020f5de52
Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
Update chromium patches to apply on current stable (1650)

Change-Id: I3cd2ddc401e67c232c4bcc88d3c20252eece6be3
Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
Fix the utility process launching.

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>
Revert "Update chromium patches to apply on current stable (1650)"

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>
Revert "Improve init-repository.py to fetch up-to-date dependency list"

Let's make sure that the submodule integration succeeds first.

This reverts commit 584a8c3c637997fbb6772ab75aea1bd587b82a37.

Change-Id: I972e5540031636489f0995ea864c4dcfc8e5cd7a
Reviewed-by: Andras Becsi <andras.becsi@digia.com>
Fix a crash when opening a window.

RenderWidgetHostViewQt::GetViewBounds gets called early than
RenderWidgetHostViewQt::setAdapterClient when a new window is created
by Chromium.

Change-Id: I5ad61fc54ae773200403b222110a1d0ad541f941
Reviewed-by: Arvid Nilsson <anilsson@blackberry.com>
Reviewed-by: Andras Becsi <andras.becsi@digia.com>
Avoid errors when closing the application

This also fixes the crash on shutdown encountered when returning a
TEXTURE_TRANSPORT GLSurfaceHandle from
RenderWidgetHostViewQt::GetCompositingSurface.

Change-Id: Ic92238907a3e7f9d0db4bf114269c1ca5cca5aa6
Reviewed-by: Arvid Nilsson <anilsson@blackberry.com>
Reviewed-by: Andras Becsi <andras.becsi@digia.com>
Update take_snapshot.py

Add additional conditions to the blacklist function
so that we include files needed for Boot2Qt-Android
but exclude other files not needed for the build.

Change-Id: I7cda448a943dc776ad6d29c872048cf256da599e
Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
Adapt to chromium API changes in refs/branch-heads/1650

This patch also updates src/3rparty to the new snapshot.

Change-Id: I56da8d795051a828d7b375e57c4dda8bc570229f
Reviewed-by: Zeno Albisser <zeno.albisser@digia.com>
Improve init-repository.py to fetch up-to-date dependency list

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: I333ada4250999b442cd244821818bace9e6136f4
Reviewed-by: Zeno Albisser <zeno.albisser@digia.com>
Update chromium patches to apply on current stable (1650)

Change-Id: I3bdad02a2ef69d242980e34774a8219ef0c74ea9
Reviewed-by: Zeno Albisser <zeno.albisser@digia.com>
Fix the QQuickWebEngineView rendering with 1650.

This is now initialized by Chromium in ContentMainRunnerImpl::Run,
which we bypass for our browser process.

Change-Id: Id8233df3fe12048cd2b6eaf870b161ab5d1eb089
Reviewed-by: Andras Becsi <andras.becsi@digia.com>
Reviewed-by: Zeno Albisser <zeno.albisser@digia.com>
Make inspector listening port configurable

Currently we use fixed port 1337 as inspector port. When weblauncher is launched
by chromedriver it passes the inspector port as commandline argument
--remote-debugging-port=<port>. Later on chromedriver will try to communicate
with chrome via that port. We should use that port when starting devtools
HTTP handler.

Change-Id: I83e3341a535d50a129670bd0056b3ca448c8e2e5
Reviewed-by: Zeno Albisser <zeno.albisser@digia.com>
Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com>