DevTools: Partially redesigned DevToolsAndroidBridge and AndroidDeviceManager.

Review URL: https://codereview.chromium.org/287643002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274211 0039d316-1c4b-4281-b951-d872f2087c98
Gamepad API support for chrome on android

This change adds code to get gamepad data from java objects and
provide these updates to the GamepadProvider which then writes to
GamepadHardwareBuffer which in turn is read by SharedMemoryReader and
later returned by JS to the web page.

This also adds new framework classes/methods required for Gamepad API
support. Frameworks changes are responsible for :
  - Identifying gamepad devices and their capabilities.
  - Managing connected gamepad devices
  - Map the connected gamepad devices to standard Gamepad format.
  - Keeping gamepads axes/buttons data up-to-date and returning it to
    native whenever requested. In android we cannot get gamepad data
    directly from sources, so framework is modified to capture
    gamepad key and motion events and extract gamepad data from these
    events.

* Class GamepadPlatformDataFetcherAndroid : Android specific
  implementation of gamepad data fetcher.
  - Responsible for communication with java class and accessing gamepad data.
  - It adds methods for communication with singleton java GamepadList class
to get gamepads data.

* Class ContentViewCore : Manages gamepad list and notifies of new
  key/motion event for gamepads.

* Class GamepadList : A new class to manage connected gamepad devices

* Class GamepadDevice : A new class to manage information related to
  each gamepad device.

* Class GamepadMappings : This class is responsible for mapping of
  known gamepads to the standard gamepad.

This change enables gamepad API by default.

Adds support for parsing float array return type in JNI generator.

NVIDIA Shield and XBox360 gamepads are mapped to the standard gamepad

BUG=330094

TEST=http://www.html5rocks.com/en/tutorials/doodles/gamepad/gamepad-tester/tester.html

R=tsepez@chromium.org
R=darin@chromium.org

Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=270620

Review URL: https://codereview.chromium.org/133943002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274212 0039d316-1c4b-4281-b951-d872f2087c98
[SyncFS] Make routines using metadata database run asynchronously.
Some methods not used in product code keep to call GetMetadataDatabase directly.


BUG=347425
TEST=./unit_tests --gtest_filter="DriveBackendSyncTest.*:SyncEngine*:Conflict*:RegisterApp*:RemoteTo*:LocalTo*:ListChange*:MetadataDatabase*:TaskDep*"

Review URL: https://codereview.chromium.org/306813002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274213 0039d316-1c4b-4281-b951-d872f2087c98
[fsp] Store mounted file systems in preferences.

Providing extensions will very often mount provided file systems on startup.
When an extension is installed, the background is executed, and hence the file
system registered.

Since providing extensions should be event pages, they will also register
all of the request events, so the extension is woken up once there is a request
sent to it.

However, the background page is not run after a reboot. All of the registered
events are remembered in preferences, but mounted file systems not. As a result
after a reboot, the file systems are lost.

To overcome this issue, this CL introduces storing mounted file systems to
preferences, so they are remounted automatically after a reboot, once the
extensions are loaded. This is consistent with remembering registered
event handlers in preferences.

Note, that if the extension is gone after a reboot, then remounting will not
be performed, since it is done after the extension is loaded.

All of the mounted file systems are written to preferences during shutdown.

TEST=TBD
BUG=248427

Review URL: https://codereview.chromium.org/295413002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274214 0039d316-1c4b-4281-b951-d872f2087c98
Desktop user manager: Adjustments for supervised users.

The changes are:
- Show a supervised user icon. Note that this has a different look than on CrOS, to fit in with the "lock" icon on desktop. (The final icon resource is still missing, but since this must land in time for M37 I'm already sending the code for review now, and will switch out the icon later.)
- Use the supervised user deletion warning text from CrOS also for supervised users on desktop.

Mocks at https://folio.googleplex.com/chrome-ux/mocks/064-chrome-away-from-chrome/supervised/mirror

BUG=372812, 310640

Review URL: https://codereview.chromium.org/307483002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274215 0039d316-1c4b-4281-b951-d872f2087c98
changed MSAP to work with 96000KHZ.
The problem why it did not work is that the FIFO used in MSAP has a size smaller than 10ms buffer before, so it crashed before webrtc::AudioProcessing consumes it.

FYI, previously the APM in Chrome was only enabled for finch experiment on Canary, so the problem does not occur in stable and beta. And I recently enabled it as default.


BUG=378895
TEST= use 96000KHz as sample rate, go to apprtc.appspot.com/?&debug=loopback to make a call.

Review URL: https://codereview.chromium.org/308643004

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274216 0039d316-1c4b-4281-b951-d872f2087c98
[fsp] Rename has_next to has_more.

For consistency, has_next is changed to has_more. Also, has_more is easier to
understand in providing extensions context.

TEST=browser_tests, unit_test: *FileSystemProvider*
BUG=373165

Review URL: https://codereview.chromium.org/304533003

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274217 0039d316-1c4b-4281-b951-d872f2087c98
Move DetailedConsoleMessageAdded from ChromeRVO to ChromeRFO.

BUG=304341

Review URL: https://codereview.chromium.org/307623004

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274218 0039d316-1c4b-4281-b951-d872f2087c98
Revert 274186 "Re-enable PDFExtensionTest.BasicPlugin"

Reverting - still flaky. See http://crbug.com/303491#c104 for details.

> Re-enable PDFExtensionTest.BasicPlugin
> 
> This test was disabled because it was failing. A few changes have been made:
> -The page zoom cannot be assumed to be 100% on load as it will depend on the screen size being tested on. So testPageSize now doesn't make that assumption.
> -testAccessibilityWithPage was flaking because accessibility information was not always returned for the two text boxes. I spent a bit of time investigating, but couldn't work it out so I've left it partially disabled for now and filed crbug.com/378091.
> -The files have all been moved to a more appropriate location (in particular the test was moved out of the data directory).
> 
> BUG=303491
> 
> Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=273819
> 
> Review URL: https://codereview.chromium.org/290803007

TBR=raymes@chromium.org

Review URL: https://codereview.chromium.org/302163007

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274219 0039d316-1c4b-4281-b951-d872f2087c98
Add tracing to measure the entire time it takes to satisfy a getStats request.

BUG=369796

Review URL: https://codereview.chromium.org/306923008

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274220 0039d316-1c4b-4281-b951-d872f2087c98
Suppress a false positive race report in tzset_internal.

BUG=379738
TBR=groby@chromium.org
NOTRY=true

Review URL: https://codereview.chromium.org/306333002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274221 0039d316-1c4b-4281-b951-d872f2087c98
Implement generalized file preparation utility function for apps.

The previous implementation worked only for Google Drive filesystem.
The new implementation in the current CL generally supports all
volumes accessible from Chrome OS file manager, in particular
including MTP devices and file systems provided by fileSystemProvider extensions.

BUG=367028

Review URL: https://codereview.chromium.org/303133008

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274222 0039d316-1c4b-4281-b951-d872f2087c98
Modify ProtocolHandlerRegistry to make room for policy

This CL modifies ProtocolHandlerRegistry to enable addition of policy for registering and ignoring protocol handlers. The current implementation does not allow it since it saves the registered handlers, which would result in policy leak when directly mapped, i.e., protocol handler registered via policy would be saved to disk and mixed with user preference.

BUG=116119

TBR=koz,jochen

Review URL: https://codereview.chromium.org/293983004

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274223 0039d316-1c4b-4281-b951-d872f2087c98
Disable ProfileManagerBrowserTest.DeletePasswords on Windows.

It fails with timeout because cleaning the profile directory is too heavy operation.

BUG=343891
TBR=erg@chromium.org,gcasto@chromium.org
NOTRY=true

Review URL: https://codereview.chromium.org/306343002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274224 0039d316-1c4b-4281-b951-d872f2087c98
telemetry: Robustify CrOSInterface._GetSessionManagerPid().

Allow the session_manager process name to use a relative
path or to not have any arguments, rather than requiring it
to have the prefix "/sbin/session_manager " (note trailing
space).

BUG=377301

Review URL: https://codereview.chromium.org/302163004

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274225 0039d316-1c4b-4281-b951-d872f2087c98
Updates the whitelisted XKB input method IDs to sync up with the component XKB extension. Obsolete input methods are deleted.
And makes sure there won't be duplicated input methods for certain languages.

BUG=379434
TEST=None

Review URL: https://codereview.chromium.org/312443002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274226 0039d316-1c4b-4281-b951-d872f2087c98
Disable flaky test KioskAppManagerTest.BadApp

BUG=379769
TBR=jennyz@chromium.org,stevenjb@chromium.org

Review URL: https://codereview.chromium.org/302063012

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274231 0039d316-1c4b-4281-b951-d872f2087c98
Reland 274198 "Depend on v8:v8 instead of v8:mksn..."

> Revert 274198 "Depend on v8:v8 instead of v8:mksnapshot"
> 
> > Depend on v8:v8 instead of v8:mksnapshot
> > 
> > BUG=none
> > R=brettw@chromium.org
> > 
> > Review URL: https://codereview.chromium.org/302783009
> 
> TBR=jochen@chromium.org
> 
> Review URL: https://codereview.chromium.org/308303003

TBR=brettw@chromium.org

Review URL: https://codereview.chromium.org/306293004

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274232 0039d316-1c4b-4281-b951-d872f2087c98
Pepper: Refactor PNaCl OpenManifestEntry logic.

This change moves some more OpenManifestEntry logic out of the trusted plugin.
This code specifically looks up file descriptors for support files for helper
processes (llc, ld) for the PNaCl translator.

BUG=239656

Review URL: https://codereview.chromium.org/307933005

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274233 0039d316-1c4b-4281-b951-d872f2087c98
suppress GDI usage error from content_browsertests
OutOfProcessPPAPITest.TrueTypeFont

TBR=jam@chromium.org
BUG=379774

Review URL: https://codereview.chromium.org/308003016

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274236 0039d316-1c4b-4281-b951-d872f2087c98