webui: Add updateIndexes method to ArrayDataModel.

Previously there is no way to update multiple items in an ArrayDataModel without
redundant sort.  Files.app uses sort() method for the purpose to avoid redundant
sort, but it does not publish a permute event if the order of items does not
changed. Thus sometimes the file list does not update and it causes flakiness of
tests.

This CL adds updateIndexes method and let the Files.app use it.


BUG=348008
TEST=run ArrayDataModelTest

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@256193 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 256193
Bookmark manager: Correctly focus on the URL field after invalid URL alert.

We focus on a URL input after showing invalid URL alert. However it failed if a
user removed focus from the URL input by TAB key. This CL fixes it.

Behavior before this CL:
1. urlInput looses focus by Tab key
 The page lost focus as well because the urlInput was the last focusable
 element.
2. The alert is shown in respond to 'blur' event for urlInput.
3. urlInput.focus() is called.
 It sets document.activeElement to urlInput, but it doesn't accept user input
 because the page has no focus.

To resolve this issue, we have to avoid to remove the page focus. So we do
preventDefault for Tab key if the urlInput has an invalid URL.

BUG=343502

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@256194 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 256194
Remove PO2TS::GetPrimaryAccountId() since its no longer used.

Must wait for https://codereview.chromium.org/137553007/ to land.

BUG=310225

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

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