Implement GCController::CollectAll

One GC cycle is not enough to collect DOM wrappers.
To test that all DOM wrappers are reclaimed,
this CL adds a function that triggers multiple GC cycles.

BUG=307614

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@248918 0039d316-1c4b-4281-b951-d872f2087c98
Files.app: Clean DirectoryModel.

This CL do random cleanup involved with DirectoryModel.

* Remove unused parameters and variables.

* Remove methods that just delegates to another method or are called from one
  place, in order to reduce the number of jump when reading codes.

* Merge the specialSearch method into changeDirectoryEntry by extracting the
  difference of the two mehtods to createDirectoryContents_.

BUG=none
TEST=manually

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@248919 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 248919
Convert android KEYCODE_MOVE_HOME/END correctly to VKEY_HOME, VKEY_END

BUG=340846

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@248920 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 248920
Support cross-profile copy between Chrome OS Google Drive folders.

Previously the processing of Drive entries are delegated to the
running profile of the apps, but now it is passed to the owning
profiles of each entries.

BUG=339706

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

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