Implement chromium's TLS.

Using one system TLS to implement multiple chrome's TLS slots.

BUG=264406

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@241144 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 241144
cc: Fix incorrect RecalculateRasterScale edge cases

In certain cases, RecalculateRasterScales could pick an incorrect raster
content scale during pinch:

(1) If the layer is created during pinch, the raster content scale is
initially zero and so creating additional scales relative to zero is not
meaningful.  Instead, initialize to the ideal to start with.

(2) Every layer has a minimum content scale (based on its bounds).  It
never makes sense to create a tiling at a scale lower than this scale
(as it will cause one texture dimension to be <1), and so clamp scales
to that value.

BUG=276988

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@241145 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 241145
[Files.app] Fix a potential issue in ShareDialog/FileManagerBrowserTest

In the share dialog mock, the wrong function was called and this patch fixes it. Currently that didn't cause a test failure because the 'waitElement' has some bug as well .

And this patch added some assertion into the test for reliability.

BUG=328762
TEST=manually
R=mtomasz@chromium.org

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

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