Revert of Re-landing r170008, removing prefixed Shadow DOM APIs in Element. (https://codereview.chromium.org/218943003/)

Reason for revert:
Broke OpenAudioFiles/FileManagerBrowserTest again.

http://build.chromium.org/p/chromium.chromiumos/builders/Linux%20ChromiumOS%20Tests%20%282%29/builds/22744


Original issue's description:
> Re-landing r170008, removing prefixed Shadow DOM APIs in Element.
> 
> The previous attempt, https://codereview.chromium.org/208503004, was reverted in https://codereview.chromium.org/212303005/.
> The reason of reverting is that there is a JavaScript code uses prefixed Shadow DOM API in the chromium side.
> I've fixed that in https://codereview.chromium.org/214093002/.
> 
> Let me re-land r170008. I hope it won't break anything this time.
> 
> BUG=242153
> 
> Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=170460

TBR=dglazkov@chromium.org,esprehn@chromium.org,hayato@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=242153

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

git-svn-id: svn://svn.chromium.org/blink/trunk@170519 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Blink doesnt respect the form.submit() when called on "focus" event for invalid form

Blink doent respect the form.submit() when called on focus event on invalid form.
    When an form submit button is clicked and if the form is invalid it will focus
    the field that shows error. If the user is calling the form.submit() on focus event
    on that field then it should submit the form. But currently the form does not get
    submitted. This patch removes this bug by completely removing the variable
    "m_isSubmittingOrPreparingForSubmission".

in API "submit" which is always called after API "prepareForSubmission". Also the variable can more appropriately be renamed to "m_isSubmitting".

Bug=357101

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

git-svn-id: svn://svn.chromium.org/blink/trunk@170520 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Fix timing out of perf test: Canvas/upload-canvas-2d-to-texture.html

content_shell can not decode mov, so this CL makes canvas tests use mp4 file.
the desktop Perf bots (Windows, Mac, and Linux) do actually build Chrome-branded
binaries including all of the media codecs so H.264 encoded mp4 file can be
decoded.

bear-1280x720.mp4 is copied from chromium; src/media/test/data
Canvas video perf tests run on only the platform which can decode mp4 video.

BUG=242244, 358168

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

git-svn-id: svn://svn.chromium.org/blink/trunk@170521 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Whittle down some compositing chicken/egg hacks

These chicken/egg hacks appear to only be needed for scroll parts. This CL
moves them into RenderLayerScrollableArea so that we don't need to apply them
constantly for RenderLayers that aren't scrollable.

R=ojan@chromium.org

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

git-svn-id: svn://svn.chromium.org/blink/trunk@170522 bbb929c8-8fbe-4397-9dbb-9b2b20218538
De-bloat SVGPathStringBuilder

For a class this meager, it was a bit of a heavy-weight:

SVGPathStringBuilder::arcTo() clocked in at a whopping 7891 bytes
(Linux, x86-64, gcc-4.8.2), but even the much simpler lineToVertical()
used > .5k of text-space.
Sacrifice the StringOperators-based pattern and use a cascade of functions
instead.
Besides reducing footprint, this also eliminates some of the copying that
would occur between various temporary String objects.
With the change in place, arcTo() dropped to 640 bytes (and lineToVertical
got cut in half.)

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

git-svn-id: svn://svn.chromium.org/blink/trunk@170523 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Implement CRC2D.scrollPathIntoView() on Canvas

The method's behavior is very similar to element.scrollIntoView().
This is just a another version about path on canvas.
('path' means both current default path and path object)
This is especially useful on devices with small screens,
where the whole canvas might not be visible at once.

Intent to Implement:
  https://groups.google.com/a/chromium.org/forum/#!topic/blink-dev/KLFSBeP42VQ

The spec reference is:
  http://www.w3.org/TR/2dcontext/#dom-context-2d-scrollpathintoview
  http://www.whatwg.org/specs/web-apps/current-work/#dom-context-2d-scrollpathintoview

BUG=351696

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

git-svn-id: svn://svn.chromium.org/blink/trunk@170524 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Use %pure-parser in grammar files to make Bison 3 happy.

This avoids a "deprecated directive, use ‘%pure-parser’ [-Wdeprecated]"
warning in css/CSSGrammar.y and xml/XPathGrammar.y when building with
Bison 3.

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

git-svn-id: svn://svn.chromium.org/blink/trunk@170525 bbb929c8-8fbe-4397-9dbb-9b2b20218538
[Oilpan]: Make sure our compile asserts in vector are called.

We missed the compile assert in the VectorDestructor's clear method when having vectors where elements were only added.
This should fix that. It also caught a few places where we had to define a new trait.

R=ager@chromium.org, erik.corry@gmail.com, haraken@chromium.org, oilpan-reviews@chromium.org, tkent@chromium.org, vegorov@chromium.org, zerny@chromium.org
BUG=

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

git-svn-id: svn://svn.chromium.org/blink/trunk@170526 bbb929c8-8fbe-4397-9dbb-9b2b20218538