Refactor modality-specific behavior from ConstrainedWindowViews to WebContentsModalDialogManager

This CL moves the Views web contents modal dialog code towards the
interface described in the associated bug.  Similar changes for Gtk and
Cocoa will be made in follow-on CLs.

To that end, this CL contains the following detailed changes:

 - Introduce NativeWebContentsModalDialogManager for providing
   platform-specific UI functionality within WebContentsModalDialogManager, and
   implement NativeWebContentsModalDialogManagerViews.

 - Under Views, move to a model where WebContentsModalDialogManager listens for
   closing events rather than requiring notifications from the widget.  Continue
   using the existing model on Gtk and Cocoa, pending refactoring there.

 - Provide a mechanism for disabling mouse-driven dialog movement on Widget.

 - Remove NativeConstrainedWindowDelegate and subclasses as they're no longer
   necessary due to the above two items.

 - Update tests to account for closing notification to
   WebContentsModalDialogManager being done from the event loop, rather than
   synchronously.

 - Add temporary ConstrainedWindowViews factory function to minimize code churn
   at construction sites during this refactoring.

The next planned steps in this work are:

 - Refactor ConstrainedWindow subclasses under Gtk and Cocoa to listen for
   closing events rather than requiring notifications from the widget.

 - Refactor uses of WebContentsModalDialog interface to use platform-specific
   equivalents in platform-specific code and, in platform-independent code,
   invoke functionality via some other mechanism: platform_utils,
   WebContentsModalDialogManager, ???.  Remove WebContentsModalDialog interface.

 - Generalize WebContentsModalDialogManagerDelegate positioning interface and
   write WebContentsModalDialogManager::ShowDialog using the new interface.

BUG=157161

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@180904 0039d316-1c4b-4281-b951-d872f2087c98
Make NPAPI Me2Me interface return results via callback parameters.

This is to aid migration to Native Messaging, where the web-app will need to
pass callbacks to receive all information asynchronously from the Native
Messaging host.


BUG=173509
TEST=register, start and connect to a host, change PIN, 0 jscompile errors


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@180905 0039d316-1c4b-4281-b951-d872f2087c98
Move Keystone registration to top of remoting postflight script.

Previously, the Keystone registration took place at the end of the
script, but a trap on ERR meant that any errors within the script
caused premature exit. Since Keystone registration is critical, it
should be done first.


BUG=164647


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@180906 0039d316-1c4b-4281-b951-d872f2087c98
Migrate invalidator client IDs out of sync

We want to store invalidator client IDs somewhere other than the sync
DB.  Unfortunately, changing in the ID would require us to clear any
existing client state, which is something we'd prefer to avoid.

This commit makes the SyncInvalidationListener copy its sync-assigned
client ID to the InvalidationStateTracker when it is initialized.  When
we decide to fully separate the sync and notifier IDs, the clients that
have run through this code path will find that their notifier client ID
has already been initialized correctly.  This allows us to avoid
clearing their client state.

It's impossible to guarantee that all clients will hit this code path.
Fortunately, we don't have to.  The goal of this patch is to avoid
deleting the state of too many clients all at once.  It's not a big
problem if we have to clear the state of a few stragglers that haven't
hit the migration path yet.

BUG=124142


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@180907 0039d316-1c4b-4281-b951-d872f2087c98
[Telemetry] Fix smoothness benchmark unit tests.

They broke from a missed file in http://crrev.com/180133.

TBR=marja@chromium.org
BUG=None.
TEST=./run_tests smoothness

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@180908 0039d316-1c4b-4281-b951-d872f2087c98
This demo app is for testing the notifications API, and for easily generating screenshots of different templates.

BUG=NONE

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@180909 0039d316-1c4b-4281-b951-d872f2087c98
Unsafe array length fix for GetNormalizedPath() function.

This is a fix for http://src.chromium.org/viewvc/chrome?view=rev&revision=180688

BUG=174476

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@180910 0039d316-1c4b-4281-b951-d872f2087c98
Autocheckout progresses through a series of pages with forms and fills them out. To show this progression to the user there is a progress bar in the new AutofillDialog. This progress bar is updated with values received from the Autofill server.


BUG=173024


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@180911 0039d316-1c4b-4281-b951-d872f2087c98
Notification refactor - step 1 - move message_center::Notification into its own file.

No code changes, simple move. See the bug for all steps of this refactor.

BUG=174164


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@180912 0039d316-1c4b-4281-b951-d872f2087c98
Adding the page and DPI scale adjustment for Autofill Popups.

Switching from using Rect to RectF in Autofill. This is to ensure that no
round of values are lost when DPI scale is applied. These changes were required
after the coordinate system change that came with Impl-side painting.

BUG=172409

TEST=Get an Autofill popup to show up on Chrome Android

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@180913 0039d316-1c4b-4281-b951-d872f2087c98
base: add GetNumberOfThreads() to Linux and Android.

NOTRY=true

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@180914 0039d316-1c4b-4281-b951-d872f2087c98
chromeos: Stop marking Drive downloads as temporary

Remove Drive DownloadItems persisted from the previous session since it shows garbage filename on chrome://downloads.

BUG=154713
TEST=Download files to Drive, see the downloaded files appearing on chrome://downloads.

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@180915 0039d316-1c4b-4281-b951-d872f2087c98
Make minimize shortcut not repeative.

This solves the problem with flickering screen while holding the ctrl-m key for a longer time.

TEST=Hold ctrl-m for 5 seconds.
BUG=174256

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@180916 0039d316-1c4b-4281-b951-d872f2087c98
Enable bookmark prompt experiment for 1% of new users in one month for M25 Beta/Dev and M26 Canary channel

This patch changes participation condition of bookmark prompt experiment to:
- 1% of new users on Beta/Dev channel, users who create profile by January 17.
- One month, until February 17
rather than using variations service.

Checking new user, aka new installation, is as same as
https://chromiumcodereview.appspot.com/11363062

We'll change the start date for stable channel once it is fixed.

Note: This patch fixes disabled date for previous patch:
https://codereview.chromium.org/11828038

BUG=169191

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

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


BUG=170285


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@180918 0039d316-1c4b-4281-b951-d872f2087c98
Sometimes we want to remove docs.

BUG=NONE

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@180919 0039d316-1c4b-4281-b951-d872f2087c98
Remember to delete the not-yet-committed-to-cache file if it's only partial.

Also fix up a few printf formatting warnings that are detected when
you attempt to turn PLUGIN_PRINTF() off.

BUG=none


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@180920 0039d316-1c4b-4281-b951-d872f2087c98
Allow extensions to attach a file when invoking the feedback page.
This is specifically for the QuickOffice extension at the moment but any extension can use this functionality. By providing a "filePath" query parameter pointing to a local path on ChromeOS, an extension can provide an option to attach a file with the feedback report. By default this option is unchecked.

If a bogus path is given, when sending the report, we simply send no attachment.

R=jhawkins@chromium.org
BUG=169982


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@180921 0039d316-1c4b-4281-b951-d872f2087c98
chromeos: Fix inverted online/offline state returned by GetDriveConnectionStateFunction

Fix the inverted online/offline value.
Use net::NetworkChangeNotifier as CrosLibrary is being deprecated and to be consistent with drive::DriveScheduler::ShouldStopJobLoop.

BUG=None
TEST=Open Google Drive directory with Files.app

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@180922 0039d316-1c4b-4281-b951-d872f2087c98
Reset rollover_ms and last_seen_now when replacing mock tick function

Otherwise, they are artificially inflated for subsequent tests.

BUG=174108


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

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