rAc: don't reset reference to invoking form on frame load.

This fixes a bug that prevented autocomplete or autocompleteerror from being dispatched when an <iframe> navigates/loads while rAc() is running.

R=isherman@chromium.org
BUG=348027

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@256295 0039d316-1c4b-4281-b951-d872f2087c98
Validate hashes based on the legacy device id from M33 on Windows without generally hurting performance.

Introduces a new validation level (VALID_LEGACY_DEVICE_ID) from PrefHashCalculator and a new UMA histogram to go along with it.

The MAC address gathering code is a pure copy/paste from chrome/browser/extensions/api/music_manager_private/device_id_win.cc from an M33 checkout which is the implementation we want to keep around (see bug for a broader duplicate code justification).

BUG=350028
TEST=Run a chrome with this CL against an M33 User Data dir and confirm that every pref reports Settings.TrackedPreferenceUnchangeLegacyDeviceId (except for kExtensionsPref which is initialized to split pref as expected).
R=asvitkine@chromium.org, erikwright@chromium.org

First Committed In: https://src.chromium.org/viewvc/chrome?view=rev&revision=256047
Revert In (XP/Vista unit_tests failure): https://src.chromium.org/viewvc/chrome?view=rev&revision=256069

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@256296 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 256296
Revert 256244 "Added code to call CloseAsh in place of closing s..."

Reason for revert:
This CL appears to have broken 
NewAvatarMenuButtonTest.SignOut 
...on Win 7 Tests. 
Log: 
http://build.chromium.org/p/chromium.win/builders/Win7%20Tests%20%28dbg%29%283%29/builds/25574/steps/browser_tests/logs/stdio


> Added code to call CloseAsh in place of closing secondary widgets on Windows.
> Here is what happens in attached bug:
> 1. UserManagerView (Profile view) adds a reference to browser process by calling StartKeepAlive.
> 2. UserManagerView is a secondary widget.
> 3. Current code for windows does EnumWindows for closing all secondary widgets in CloseAllSecondaryWidgets, which works only for desktop mode.
> 4. In Chrome on ASH EnumWindows doesn't do anything as they are not regular windows.
> 5. Because UserManagerView doesn't get chance to close through CloseAllSecondaryWidgets, it doesn't release reference and we browser process keeps running.
> 
> CloseAsh closes all child widgets, which might be a overkill but works for now.
> 
> BUG=340967
> R=cpu,sky,ananta
> 
> Review URL: https://codereview.chromium.org/173403002

TBR=shrikant@chromium.org

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@256297 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 256297