Added parsing of the attestation challenge response protobuf.

This allows callers to optimize if the challenge bytes are already
incorporated into their protocol.

BUG=chromium:260504
TEST=unit, manual

Review URL: https://chromiumcodereview.appspot.com/24088004

git-svn-id: http://src.chromium.org/svn/trunk/src/chrome/browser@222754 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Move OnMountEvent implementation from EventRouter to VolumeManager.

By this CL, all event handling for DiskMountManager is moved to VolumeManager.
So EventRouter no longer needs to subscribe DiskMountManager.

BUG=279276
TEST=Ran unit_tests

Review URL: https://chromiumcodereview.appspot.com/23609029

git-svn-id: http://src.chromium.org/svn/trunk/src/chrome/browser@222755 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
drive: Downgrade and trim JSON parse error log.

The current form is too lengthy and cluttering the whole log output.
This patch makes them more quiet.

BUG=none

Review URL: https://chromiumcodereview.appspot.com/23463024

git-svn-id: http://src.chromium.org/svn/trunk/src/chrome/browser@222756 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Fix compile error on ChromeOS Builder.

Caused by missing scoped_ptr include. Adds it.

BUG=279276
TEST=Ran unit_tests
TBR=kinaba

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

git-svn-id: http://src.chromium.org/svn/trunk/src/chrome/browser@222757 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Deprecate chromeos::Backend::GetFileSystemRootPath() and FileSystemOperationContext::root_path
    
Looks like they're no longer necessary.
    
BUG=265770
TEST=existing tests

Review URL: https://chromiumcodereview.appspot.com/23785010

git-svn-id: http://src.chromium.org/svn/trunk/src/chrome/browser@222758 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Move CreateFrom{Drive V2 class} to drive_api_util.

By this CL, gdata_wapi_parser is freed from the dependency to Drive API v2's
modules.

BUG=231125
TEST=Ran unit_tests

Review URL: https://chromiumcodereview.appspot.com/23865005

git-svn-id: http://src.chromium.org/svn/trunk/src/chrome/browser@222760 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
This is the gtk implementation of the save password bubble. This code depends on another CL (https://codereview.chromium.org/22975006/).

BUG=261628

Review URL: https://chromiumcodereview.appspot.com/23463013

git-svn-id: http://src.chromium.org/svn/trunk/src/chrome/browser@222761 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
[iOS] History: Hide Clear Browsing Data button when keyboard is visible.

Existing code that handles this on Android and iOS 6 does not work on
iOS 7, so add some iOS-specific code that works on iOS 7.

Also deleted some obsolete iOS-specific code that was incorrect now
that history search is enabled.

BUG=271580
TEST=Open chrome://history. Ensure that the Clear Browsing Data button
is visible in both portrait and landscape when the keyboard is not
visible, and ensure the button is hidden when the keyboard *is* visible.

R=sergiu@chromium.org

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

git-svn-id: http://src.chromium.org/svn/trunk/src/chrome/browser@222764 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
SyncFS: Introduce pending origin operation queue

- Handle RegisterOrigin without scheduling a task iff DriveFileSyncService
  has no pending origin operations, the origin is known and it is not disabled.
- Abort {Enable,Disable}Origin if Enable+Disable or Disable+Enable are
  requested (and the former request hasn't been processed)

requestFileSystem latency after this change:

100~800 msec right after Chrome relaunch
1~6 msec otherwise

BUG=254810, 288466
TEST=manual
TEST=unit_tests:DriveFileSyncServiceFakeTest.*

Review URL: https://chromiumcodereview.appspot.com/23578021

git-svn-id: http://src.chromium.org/svn/trunk/src/chrome/browser@222772 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Limit max dead resources capacity to 512 KBytes on low-end Android devices.

Manual browsing on a few web sites showed that dead resources do not contribute
enough to the hit rate to justify the memory cost on low-end devices (where
every 100KBytes matters).
This is a short term workaround with a direct impact for decreasing memory
usage. More long term efforts will follow.

BUG=280984,285374
R=darin@chromium.org

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

git-svn-id: http://src.chromium.org/svn/trunk/src/chrome/browser@222784 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Save password bubble pops up automatically when the save password icon is triggered upon logging in to a page.

Similar to https://codereview.chromium.org/23557004/

BUG=261628

Review URL: https://chromiumcodereview.appspot.com/23523049

git-svn-id: http://src.chromium.org/svn/trunk/src/chrome/browser@222788 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Use CallbackRegistry for UserStyleSheetWatcher

This CL supercedes https://codereview.chromium.org/22813009/

BUG=268984
TEST=no functional change.

Review URL: https://chromiumcodereview.appspot.com/23522026

git-svn-id: http://src.chromium.org/svn/trunk/src/chrome/browser@222798 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Add chrome.wallpaper.setWallpaper API to dev channel


Usage: chrome.wallpaper.setWallpaper(details, callback)
details = {
  'wallpaperData': // the jpeg or png encoded wallpaper
  'layout': // wallpaper layout
  'name': // file name of saved wallpaper
  'thumbnail': // true if generate thumbnail
}
callback = function (opt_thumbnail) {}

Note: This is not our final version API. It currently only support
set wallpaper through wallpaperData(binary data). Some follow up CLs
will extend this API to take URL, file path directly.


BUG=285296

Review URL: https://chromiumcodereview.appspot.com/23536024

git-svn-id: http://src.chromium.org/svn/trunk/src/chrome/browser@222799 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Instead introducing a static Create* methods to create FileStream{Reader,Writer} implementation
that are defined in webkit/.

New public static Create methods:
- FileStreamReader::CreateForLocalFile()
- FileStreamReader::CreateForFileSystemFile()
- FileStreamWriter::CreateForLocalFile()

As a preparation for moving fileapi code from webkit/ to content/.
(webkit_blob / fileapi namespaces will be cleaned up when they're moved
under content/)

BUG=265770

Review URL: https://chromiumcodereview.appspot.com/23576016

git-svn-id: http://src.chromium.org/svn/trunk/src/chrome/browser@222802 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Inform apps whether they are running in a Chrome OS kiosk session

This CL extends the definition of the launchData argument that Chrome
passes to apps with the chrome.app.runtime.onLaunched event callback.
The newly added isKioskSession field will be |true| when an app is
launched in a Chrome OS kiosk session.

BUG=252934
TEST=Manual, updated browser tests

Review URL: https://chromiumcodereview.appspot.com/23625011

git-svn-id: http://src.chromium.org/svn/trunk/src/chrome/browser@222804 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Disable AppNonClientFrameViewAshTest.SwitchFrames

BUG=290240

TBR=jamescook@chromium.org,yoz@chromium.org,vadimsh@chromium.org

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

git-svn-id: http://src.chromium.org/svn/trunk/src/chrome/browser@222806 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Move OnExternalStorageDisabledChanged from EventRouter to VolumeManager.

The method is not directly related to event routing. This CL moves it to
VolumeManager with adding unit tests.

BUG=279276
TEST=Ran unit_tests

Review URL: https://chromiumcodereview.appspot.com/24120002

git-svn-id: http://src.chromium.org/svn/trunk/src/chrome/browser@222817 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Multi-profile: non-primary user shouldn't become active automatically

- fixes OWNER status for last added user
- fixes avatar for last added user

BUG=288252,289692
TEST=manual with --multi-profiles
R=xiyuan@chromium.org

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

git-svn-id: http://src.chromium.org/svn/trunk/src/chrome/browser@222818 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Fix handling of empty lists and dictionaries in PrefMetricsService.
Modify the tracking code to consider empty lists and dictionaries
as default values, and remove their hashes.

BUG=266569

Review URL: https://chromiumcodereview.appspot.com/23707036

git-svn-id: http://src.chromium.org/svn/trunk/src/chrome/browser@222824 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Mount Drive file system only when it is enabled.

By this CL, Drive file system is mounted only when it is enabled. Along with
the change;
- DriveIntegrationServiceFactory::{Get,Find}ForProfile starts to return the
instance always (after it is created for Find).
- The initialization of the DriveIntegrationService is lazily done (i.e. it is
not initialized until it is enabled).

BUG=284972
TEST=Ran unit_tests, browser_tests and tested manually.

Review URL: https://chromiumcodereview.appspot.com/23936008

git-svn-id: http://src.chromium.org/svn/trunk/src/chrome/browser@222827 4ff67af0-8c30-449e-8e8b-ad334ec8d88c