Instrumenting URLRequestJob::ReadRawDataHelper for jank.

We know that URLRequestJob::ReadRawDataHelper causes 22.3 jph.
Instrumenting further.

BUG=423948

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

Cr-Commit-Position: refs/heads/master@{#308661}
Fix race between SetVisible and CreateOutputSurface

If SetVisible(false) happens before a posted CreateOutputSurface, then
it can end up deferencing a null LayerTreeHost.  An early out avoids
this.

R=sievers@chromium.org
BUG=442359

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

Cr-Commit-Position: refs/heads/master@{#308662}
[Android] Add AppMenu touch duration metric.

We want to monitor touch duration on AppMenu to decide optimal timeout
for single tap vs dragging.

BUG=434501

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

Cr-Commit-Position: refs/heads/master@{#308663}
Upstream Protected Content settings.

BUG=428869

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

Cr-Commit-Position: refs/heads/master@{#308664}
Changed YUV decoding enable flag to disable flag

GPU YUV decoding will now be ON by default, when GPU Rasterization is enabled. The most recent benchmarks show little to no difference on desktop, but significant improvements on Android, so this should be worth it. Also, currently, this change will only affect Android, on pages with the appropriate 'meta' tag.

BUG=413001,419718

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

Cr-Commit-Position: refs/heads/master@{#308665}
Change CHECK to DCHECK for crash due to touch exploration with eager GR.

TEST=manual testing to make sure no crash occurs.
BUG=442773

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

Cr-Commit-Position: refs/heads/master@{#308666}
session: Add callback-based notification for session restore

Part of the effort to remove NotificationService.

For now, the only observer of the notification that is
updated is perf_provider_chromeos. The other observers will
be updated later, and the old notification will be removed
at that point.

BUG=chromium:268984
TEST=none

Signed-off-by: Simon Que <sque@chromium.org>

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

Cr-Commit-Position: refs/heads/master@{#308667}
Move virtual setSurfaceReady to non-virtual StartCompositor.

This method is no longer part of the blink APIs that
RenderWidgetCompositor implements, so make it non-virtual and follow
chromium style.

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

Cr-Commit-Position: refs/heads/master@{#308668}
Windows 10/ MetroUI - Added validation for ui_channel during size change event.

With new StartChromeOSMode function we keep on retrying channel connection in
posted/delayed task. Meanwhile metro enviroment sends us size change, which we try
to pass-on ui_channel_ without validating.

BUG=440475
R=cpu, ananta

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

Cr-Commit-Position: refs/heads/master@{#308669}
Changed identification level to anonymous for windows IPC channel

This patch makes some changes to impersonation levels for pipes used
in IPC. It changes the default level for the IPC channel client to
use SECURITY_ANONYMOUS and also modified the sandbox's file policy
code to always pass a SecurityAnonymous QOS structure to all file
creations and opens. This was done to avoid modifying the IPC calls
themselves to add the QOS information. The aim of the patch is to
reduce the possibility of impersonation tokens leaking to less trusted
processes during normal operation.

This is a counterpart to CL 799943002

BUG=440694

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

Cr-Commit-Position: refs/heads/master@{#308670}
cc: Stop passing layer bounds to PictureLayerTilingSet

Get the bounds from the RasterSource directly.

R=enne, vmpstr
BUG=387116

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

Cr-Commit-Position: refs/heads/master@{#308671}
Fix a race condition in SafeBrowsingDatabaseNew::IsCsdWhitelistKillSwitchOn()

Extracted from https://codereview.chromium.org/744183002/

TBR=mattm
BUG=442891

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

Cr-Commit-Position: refs/heads/master@{#308672}
More explicit thread checking in SafeBrowsingDatabase.

As part of trying to understand threading rules for SafeBrowsingDatabase
I added these explicit checks which helps documenting the expected flow.

Also replaced old checks with modern Chromium synchronization constructs
and explicitly mark SafeBrowsingStoreFile non-thread-safe.

These new checks helped catch issue 438754 and issue 442891.

More robust thread safety coming in https://codereview.chromium.org/790703003/

BUG=438754, 440517, 338486

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

Cr-Commit-Position: refs/heads/master@{#308673}
Add a license for third_party/ply/__init__.py.

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

Cr-Commit-Position: refs/heads/master@{#308674}
Use rect-circle hit testing for touch selection handles

Using a rect for the touch contact point can result in false positive
intersections with the touch selection handle. Instead, use a circular
representation of the touch contact point when hit testing.

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

Cr-Commit-Position: refs/heads/master@{#308675}
Upstream components/translate/ios

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

Cr-Commit-Position: refs/heads/master@{#308676}
Roll src/third_party/skia 3f801cb:41b4d77

Summary of changes available at:
https://chromium.googlesource.com/skia/+log/3f801cb..41b4d77

CQ_EXTRA_TRYBOTS=tryserver.blink:linux_blink_rel,linux_blink_dbg
TBR=bensong@google.com

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

Cr-Commit-Position: refs/heads/master@{#308677}
Organize source lists in chrome_browser_ui.gypi

This make chrome_browser_ui.gypi use the same organizational structure
for sources lists as chrome_browser.gypi now uses, with an alphabetical
list of platform-y lists, followed by an alphabetical list of feature-y
lists (ignoring 'non_' when alphabetizing).

BUG=None

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

Cr-Commit-Position: refs/heads/master@{#308678}
Mark PrefServiceBridge.isAcceptCookiesEnabled @VisibleForTesting.

BUG=149400
R=tedchoc@chromium.org
TBR=tedchoc@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#308679}
Upstream DocumentTabModelImpl and related classes

Moves the DocumentTabModelImpl and its associated tests/utility classes upstream
from the downstream directories.

Updates the findbugs to remove obsolete ones and add
temporary new ones (until more is upstreamed).

Setting NOTRY to true to get around findbugs changes.

BUG=415747
TEST=DocumentTabModelImplTest, OffTheRecordDocumentTabModelTest
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#308680}