Add xwalk path to git ignore list
.gitignore: Ignore ozone/.

Just like we did for .xwalk/, ignore the ozone/ directory (it also prevents
it from being deleted if one runs gclient sync with -D).
Also need to set aura::Window title

Since each DesktopNativeWidgetAura uses a sole aura::Window as its
backed, once the title of native widget gets updated, the title of
aura::Window should also be updated in addition to updating the
XWindow created by DesktopRootWindowHostX11.

BUG=https://github.com/otcshare/crosswalk/issues/191
TEST=xwalk_browsertest --gtest_filter=XWalkRuntimeTest.GetWindowTitle

Conflicts:
	ui/views/widget/desktop_aura/desktop_native_widget_aura.cc

Rework with 34.0.1847.45 code base
Aura: fix the touch event doesn't work on Tizen 3.0 issue.

Chromium uses the sourceid of a XIDeviceEvent to decide if it is orignated
from a touch device. See events_x.cc:717. However, Chromium uses deviceid to
check touch device. See touch_factory_x11.cc:158.

As X11 spec, only slave device has same sourceid and device id. So Chromium
should setup touch device list with XISlavePointer other than XIMasterPointer
device.

BUG=https://github.com/otcshare/crosswalk/issues/187
TESTS=https://github.com/borismus/MagicTouch/blob/master/samples/tracker.html

Rework with 32.0.1700.4 code base
[Tizen] Change Sandbox IPC process title.

SetProcessTitleFromCommandLine() plays a role to change process title to
absolute path of the executable with arguments that the CommandLine object has.
For example, we want gpu process title to be "<xwalk dir>/xwalk
--type=gpu-process", not "/proc/self/exe --type=gpu-process"

However, we don't want to change browser process title, because browser process
title should be web app symbolic link path, not xwalk executable absolute path.

SandboxIPC process is the process forked by browser process. We want that
SandboxIPC process title is different from browser process title. Otherwise,
Tizen task switcher misunderstands that SandboxIPC process is also web
application process.

To achieve it,
1. Browser process must not call SetProcessTitleFromCommandLine();
2. Browser process must save argv pointer to change SandboxIPC process title later.
3. SandboxIPC process also calls SetProcessTitleFromCommandLine() to change its own process title.

BUG=https://github.com/crosswalk-project/crosswalk/issues/609

Reworked for 35.0.1908.4
[Android] Extend android install timeout to 5 minutes for testing

For android trybots, they will use emulator to run tests.
On emulator, the operation will take really a lot of time.
[Android] When running android test, try killing adb if no devices found

It randomly happens that adb devices return empty list even device
is actually connected, killing adb and restart it can fix this.

CL=https://codereview.chromium.org/24194002

Reworked for 37.0.2062.3
[Tizen] Change scrollbar animator

Based on patch from: Kenneth Rohde Christiansen <kenneth.r.christiansen@intel.com>

Since we have enabled overlay scrollbars we now get the desktop behavior, which means that a thin scroll indicator is always visible, which immediately grows when scrolling and shrinks (animated) back to the small size when scrolling is over.

On Tizen we want a different behavior:
a) no scroll indicator when not scrolling
b) a think scroll indicator which is slightly offset from the right viewport edge
c) the scroll indicator should fade out (animated) when the scroll is over

This patch is changing the scrollbar animator to 'fade out' and fixes 'a)' and 'c)' from the list above.
Introduce OS_TIZEN and set specific settings for Tizen platforms

This includes disabling site themed scrollbars (we use overlay
scrollbars always), enabling double tap to zoom for zoomable pages,
disable auto playing of music (a touch is needed) as well as
moving input fields into the view when focused.

It also enables the fade out scrollbars on all Tizen platforms, not
just mobile.
Add GetFieldID functing to jni_help in the content for XWalk.

Introduced by src@225471
[Android] Allow use non Activity context to create ContentVideoView

ContentVideoView is making an assertion that the context used to create
it is an Activiy, which xwalk doesn't meet. So xwalk crashes when
trying to fullscreen a video.

Why upstream makes the assertion:
ContentVideoView will use context to getSystemService(WINDOW_SERVICE),
which requires an Activity context.

Why xwalk can work as well as break the assertion:
In xwalk case, it's using a MixContext which although the base context
is not an Activity, but the getSystemService call will be bridged to
an Activity finally.

Why can't this be upstreamed:
The real assertion is getSystemService must be called on an Activity,
upstream uses the equivalence that the context should be an Activity
is reasonable for most cases.

For more detail discussion, please refer upstream CL at:
https://codereview.chromium.org/67763004/

Since there's no easy way to detect whether the WindowManager got from
the Context is good or not, this patch to remove the assertion have
to stay in our fork.

BUG=https://crosswalk-project.org/jira/browse/XWALK-171
[SysApps] Expose ffmpeg function signatures needed by Device Capabilities API

We need these functions in to get the list of Codecs available in the
system for getAVCodecs(). If we ever fork ffmpeg, we can just remove
this patch and add the signatures directly at the ffmpeg's signature
list.
Fix default min-layout width and scrollbar appearence.

Fix scrollbar lengths so that they match up with the size of the content.
[Tizen] Use Tizen system location provider for geolocation subsystem

This patch enables Tizen geolocation provider, so that it could be
used by chromium geolocation subsystem.
[Android] Use application context for shared pref's creation

The shared pref here is to save the status for pak file extraction.
Since the pak file is extracted to each app's data folder, the
prefs also needs to be saved for each app individually.

For crosswalk usage, in shared mode, the context in
ResourceExtractor is the context for library apk. Use the
application context of it to get the app's context.

BUG=https://crosswalk-project.org/jira/browse/XWALK-228
[SysApps] Make CodecIDToAudioCodec and CodecIDToVideoCodec available as global functions

Make CodecIDToAudioCodec and CodecIDToVideoCodec available as global functions
so that they can be used by Device Capabilities getAVCodecs() interface to
query the list of supported codecs.
[Views] Customize _NET_WM_PID for X11 window backing a Widget

This patch allow us to customize the _NET_WM_PID property of a X11
window that is backing a views::Widget. A new attribute was added to
InitParams that contains the new value, if not set, the PID of the
current running process is used.

The reason for having this ability is to make Task Manager able to
raise the right X11 window when one "running application" is selected.

In Tizen Mobile, we use a shared browser process, that will create all
the windows, and the homescreen launches a different program that will
trigger the launch in the shared browser process. To make Task Manager
work properly we need to set the _NET_WM_PID of the windows we create to
the appropriate PID of the program

Since both Linux Desktop and Tizen Mobile use the
DesktopWindowTreeHostX11, we don't change DesktopWindowTreeHost.

Rework with 34.0.1847.45 code base.
[Android] Use the Chromium TLS for thread local storage allocation

On Android ICS, the max number of thread local storage is limited to 64.
Chromium TLS provides a mechanism to support large number of TLS slots
which is independent of OS restictions.

This commit is to make sure the ThreadLocalPointer uses the Chromium TLS
mechnism instead of directly calling pthread_create_key, so that it can
avoid the crash if the number of TLS slots allocated exceeds the max number
allowed by OS.

BUG=https://crosswalk-project.org/jira/browse/XWALK-841
[Views] Fix compiler initialization order errors.
[Android] Allow intercepter to extract paks

Embedders may want to put paks in res/raw instead of assets.
Because for Android Library project, assets is not handled well.
Add intercepter in ResourceExtractor to allow embedder to
provide the interceptable resources' list and the inputstream
to intercept with.