Revert of Mojo: Specify/check alignment of pointers more carefully. (https://codereview.chromium.org/304303006/)

Reason for revert:
Broke the windows bots:
http://build.chromium.org/p/chromium.win/builders/Vista%20Tests%20%283%29/builds/40269
http://build.chromium.org/p/chromium.win/builders/Win7%20Tests%20%28dbg%29%284%29/builds/26580

Original issue's description:
> Mojo: Specify/check alignment of pointers more carefully.
> 
> Improve the verification routines especially in the case that no count
> is necessary.
> 
> Also add a test.
> 
> R=darin@chromium.org
> 
> Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=273936

TBR=darin@chromium.org,viettrungluu@chromium.org
NOTREECHECKS=true
NOTRY=true

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274062 0039d316-1c4b-4281-b951-d872f2087c98
Revert of Properly prioritize the sources of an accessible name on Android. (https://codereview.chromium.org/303113003/)

Reason for revert:
Broke android bots it looks like:
http://build.chromium.org/p/chromium.linux/builders/Android%20Tests%20%28dbg%29/builds/20683

Original issue's description:
> Properly prioritize the sources of an accessible name on Android.
> 
> This spec covers the right order: http://www.w3.org/TR/wai-aria-implementation
> 
> Now Android basically matches Windows, the difference is that Android has
> to pick just one accessible name while Windows can have both a name and
> a description.
> 
> There were existing cross-platform tests; I updated the Android
> expectations.
> 
> BUG=359216
> 
> Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=274017

TBR=aboxhall@chromium.org,dmazzoni@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=359216

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274063 0039d316-1c4b-4281-b951-d872f2087c98
Add GN build file for fontconfig

R=brettw

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274064 0039d316-1c4b-4281-b951-d872f2087c98
cc: Add invalidation micro benchmark.

This micro benchmark will used in a follow-up patch to generate various
kinds of invalidations (viewport, random, full layer) from the telemetry
repaint benchmark.

R=vmpstr@chromium.org
BUG=376379

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274065 0039d316-1c4b-4281-b951-d872f2087c98
Change instances of s.IsCorruption() to leveldb_env::IsCorruption(s).

LevelDB sometimes returns Status::InvalidArgument() when it encounters
corruption. But LevelDB doesn't provide a Status::IsInvalidArgument()
accessor so we need to indirectly detect it.

This patch revealed that IndexedDBDatabaseOperationTest.CreatePutDelete
had been passing by accident. In order to make it continue to pass, this
patch adds a method to IndexedDBFakeBackingStore.

BUG=322707

Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=273757

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274066 0039d316-1c4b-4281-b951-d872f2087c98
Added alternative configuration for the data reduction proxy

Added a second configuration that can support two http proxies and one https proxy. In the process, added a new DataReductionProxyParams object to encapsulate static configuration details and made DataReductionSettingsAndroid a BrowserKeyedContextService.

BUG=370039

Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=273810

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274067 0039d316-1c4b-4281-b951-d872f2087c98
Always use the source channel layout with AudioBufferConverter.

There are no web sites currently using this feature, but it causes
all multichannel users to waste resources unnecessarily upmixing,
generating, and transferring empty channel data.

Further this breaks fancy OSX multichannel users which have non
standard channel layouts.  Mostly because we don't want to deal
with the plethora of ways OSX wants to map channels ourselves.

Instead we can require that MSE users which want to change channel
counts, must specify the maximum number of channels in the first
initialization segment.

This also fixes use cases where clients routed multichannel streams
into WebAudio for processing instead of actual playout.

BUG=266674,379288
TEST=Only 2 channels are created for stereo sources when a 7.1
device is connected.

R=rileya@chromium.org, wolenetz@chromium.org

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274068 0039d316-1c4b-4281-b951-d872f2087c98
Update post state on navigation within page.

pushState/replaceState should always report as a GET, even if they happen in a
document that was the result of a POST.

Currently, POST->replaceState->reload sends a GET (as the spec
requires), but we incorrectly show a form resubmission warning.

BUG=239907
TEST=NavigationControllerTest.PostThenReplaceStateThenReload

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274069 0039d316-1c4b-4281-b951-d872f2087c98
[Telemetry] Re-enable the benchmark smoke test on android.

BUG=

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274070 0039d316-1c4b-4281-b951-d872f2087c98
Control process backgrounding from within the child process on Windows.

Windows has a fancy backgrounding mode which lowers IO priority.
Sadly it can only be set from within the process to be backgrounded.
So add a new ChildProcessMsg to tell child processes when they should
enter and leave background mode.

This reduces glitching during background tab load. This should only be
landed along with https://codereview.chromium.org/298253004/ which
removes backgrounding for active audio tabs.

I expect this will reduce CPU and I/O load significantly for background
processes which will lead to power savings.

This is only done on Windows since ChromeOS / Linux require privileges
only available to the browser process for setting background mode.

BUG=362294
TEST=Play audio. Load background tabs. Observe less/no glitching.
R=jam@chromium.org, luken@chromium.org, nasko@chromium.org

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274071 0039d316-1c4b-4281-b951-d872f2087c98
Add start video marker into the trace

BUG=

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274072 0039d316-1c4b-4281-b951-d872f2087c98
Add gapless playback support for AAC playback.

Gapless support for AAC is similar to MP3 but unlike
MP3 which only has padding in the first frame, AAC may
require discarding data across multiple frames.

Unfortunately this means we can't just discard the padding
frames wholesale without changing what's decoded from the
first non-padding frame.

Testing reveals we need to decode the padding frame prior to
the first non-padding frame in order to correctly decode the
non-padding frame.

We accomplish this by introducing the concept of a preroll
buffer which is to be played out prior to the current buffer
but must be entirely discarded.  Luckily this is easily done
with the infrastructure in place for the gapless MP3 playback!

While we need to support post splice buffers with preroll for
gapless playback, for simplicity, pre-splice buffers are not
allowed to have preroll.

In sum, this change:
- Adds SetPrerollBuffer() and preroll_buffer() to the
StreamParserBuffer.
- Refactors splice frame handling into a new
HandleNextBufferWithSpliceFrame() method, introduces
HandleNextBufferWithPreroll()
- Modifies the frame processor to use the frame prior to the
partial append window discard as the preroll.

BUG=371633
TEST=new unittests!
R=wolenetz@chromium.org

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274073 0039d316-1c4b-4281-b951-d872f2087c98
Make MetricsService upload logs through an interface.

This allows targets that do not wish to depend on net
to use the MetricsService code.

Also, moves compression code to be in the net/ directory
of the metrics component.

BUG=375771,374295
R=isherman@chromium.org,blundell@chromium.org,davidben@chromium.org
TBR=agl@chromium.org

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274074 0039d316-1c4b-4281-b951-d872f2087c98
Added Login.UsersActiveWeekly UMA metric description to histograms.xml.

BUG=365352
TEST=none
NOCHECK=true

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274075 0039d316-1c4b-4281-b951-d872f2087c98
Fix PassphraseTextfield::OnFocus

A changed to Textfield broke OnFocus/OnBlur behavior of PassphraseTextfield.
This provides an expedient fix until the class is deprecated completely.

BUG=378914
TBR=kevers@chromium.org, msw@chromium.org

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274076 0039d316-1c4b-4281-b951-d872f2087c98
replaced the string 'chrome-extensions://' with constants

R=thestig@chromium.org

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274077 0039d316-1c4b-4281-b951-d872f2087c98
Added xdisplaycheck target to browser_tests deps

browser_tests require xdisplaycheck to run, but the target does not list
xdisplaycheck as a dependency.

R=mseaborn@chromium.org, vadimsh@chromium.org
BUG=359338

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274078 0039d316-1c4b-4281-b951-d872f2087c98
Remove ProtocolFactory use from appcache_request_handler_unittest

This is being done to remove use of a deprecated API in net/

BUG=81979

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274079 0039d316-1c4b-4281-b951-d872f2087c98
play fullscreen video in immersive mode

For Kitkat, we can play video in immersive mode without the navigation bar.
Maybe we should do the same for other elements?

BUG=378412

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274080 0039d316-1c4b-4281-b951-d872f2087c98
Fix loading PDFs with no HTTP response headers in OOP PDF

Currently if no response headers are passed into the plugin in OOP PDF then the
headers fetched URLLoader that loaded the stream URL will be used, but the
MIME type for the blob URL is always plain text, which causes the document
loader to refuse to load the document. Currently, if no headers are passed
to the in process plugin, we always try to load the document, so this just
mimics that behavior in the OOP plugin. When the in-process plugin is removed
we can change the document loader and remove the hack.

This also removes blob: URLs from the MIME type check in document loader
because they are no longer ever passed in.

BUG=303491

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274081 0039d316-1c4b-4281-b951-d872f2087c98