Cast: Initial framework for providing async initialization of sender.

Hardware encoders require that we support asynchronous initilization
this cl is the first to enable asynchronous error messages.

BUG=328940

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@247529 0039d316-1c4b-4281-b951-d872f2087c98
Add a prerender test for ShouldFork firing in the control group.

This is so we have test coverage for renderer-initiated navigations since we'd
apparently regressed this in the past.

BUG=none
TEST=PrerenderBrowserTest.ControlGroupRendererInitiated

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@247530 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 247530
Enable root focus on page load on Android.

Behavior:
- navigate to a page
- do not touch the web view

result:
focus is placed on the root of the web contents (and TalkBack reads the title of the page).

Note that if the web view is touched during load, focus is not changed.


BUG=none

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@247531 0039d316-1c4b-4281-b951-d872f2087c98
Use thread.PushSlice instead of Begin/EndSice to reduce timeline flake

Telemetry's thread logic can actually handle slices even when they're added to
the thread in arbitarary timestamp order. The BeginSlice/EndSlice calls are
merely a helper. Since the timeline stream coming out of inspector actually has
begin and end timestamps, just create slices and push them to the thread: this
avoids flake from ordering issues rather than adding a hard dependency on
timeline for the timestamp ordering of its data stream.

BUG=321529

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

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