Get rid of SVGPathSeg* special casing in the bindings generator

Have one header per SVGPathSeg* type so that we no longer need special casing
for them in the JSC bindings generator.

Review URL: https://chromiumcodereview.appspot.com/18706003

git-svn-id: svn://svn.chromium.org/blink/trunk@154009 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Remove support for [EventTarget] IDL extended attribute

Remove support for [EventTarget] IDL extended attribute now that all
interfaces inherit EventTarget instead.

Also remove EventTarget special casing from the bindings generator
as these are no longer needed.

BUG=257583

Review URL: https://chromiumcodereview.appspot.com/18360008

git-svn-id: svn://svn.chromium.org/blink/trunk@154010 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Unmark http/tests/inspector/styles/selector-line-sourcemap-header-deprecated.html as flaky following r153999

TBR=dimich

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

git-svn-id: svn://svn.chromium.org/blink/trunk@154011 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Move computeLength properties from DeprecatedStyleBuilder to StyleBuilderFunctions

Continue moving properties to the python/jinja2 templating engine.
This splits up the ApplyPropertyComputeLength class from the
DeprecatedStyleBuilder into three logical groups, one for line widths,
one for letter and word spacing, and one for the remaining properties
where we call computeLength for an integer type.

This also fixes a small issue, where the properties here which aren't
widths would get clamped to a value of 1 on zooming out, mentioned here:
https://bugs.webkit.org/show_bug.cgi?id=90104#c12

BUG=237400

Review URL: https://chromiumcodereview.appspot.com/18304005

git-svn-id: svn://svn.chromium.org/blink/trunk@154012 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Revert "Rewrite parseFrameSetListOfDimension to match HTML5"

The change has resulted in ASAN failures:
http://build.chromium.org/p/chromium.webkit/builders/WebKit%20Linux%20ASAN/builds/7635/steps/webkit_tests/logs/stdio

==2535==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x604000176835 at pc 0x5b315d5 bp 0x7fffeec0d570 sp 0x7fffeec0d568
READ of size 1 at 0x604000176835 thread T0 (content_shell)
       #0 0x5b315d4 in WebCore::Length WebCore::parseDimension<unsigned char>(unsigned char const*, unsigned long, unsigned long) ../third_party/WebKit/Source/core/html/HTMLDimension.cpp:62:0
       #1 0x5b3111b in WebCore::parseDimension(WTF::String const&, unsigned long, unsigned long) ../third_party/WebKit/Source/core/html/HTMLDimension.cpp:97:0
       #2 0x5b30fab in WebCore::parseListOfDimensions(WTF::String const&) ../third_party/WebKit/Source/core/html/HTMLDimension.cpp:129:0
       #3 0x5a4ae7f in WebCore::HTMLFrameSetElement::parseAttribute(WebCore::QualifiedName const&, WTF::AtomicString const&) ../third_party/WebKit/Source/core/html/HTMLFrameSetElement.cpp:84:0

This reverts commit ac7e5c0cbc39fa3899dc556af24157e71a7d789b.

TBR=jchaffraix@chromium.org

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

git-svn-id: svn://svn.chromium.org/blink/trunk@154013 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Split CustomElementRegistry into a registration context and a registry.

The CustomElementRegistry is now only responsible for: 1. processing
Custom Element registrations; 2. looking up a definition from the set
of registered definitions.

The new class is called CustomElementRegistrationContext.

Internally, CustomElementRegistrationContext is a controller,
coordinating the registry and upgrade candidates map, and sending a
stream of callbacks to the callback dispatcher to implement instance
lifecycle.

Externally, CustomElementRegistrationContext is a facade to the rest
of the Custom Elements machinery. With one exception* the rest of core
uses the registration context to process custom elements.

The goal of this refactoring is to create a registration context which
can be shared by multiple documents (so they can share definitions)
and make it possible to identify when an element is being adopted into
a different registration context (so the element's lifecycle can be
reset; exact details TBD.)

There is no sharing yet, but as a first step, this creates a
document's registration context eagerly. In a follow-up change a
shared registration context will be handed to related documents. Lazy
shared registration context creation can be investigated later if it
is warranted for performance.

* Microtask tickles the CustomElementCallbackDispatcher to perform a
  checkpoint. This is probably going away soon.

BUG=247219

Review URL: https://chromiumcodereview.appspot.com/18332025

git-svn-id: svn://svn.chromium.org/blink/trunk@154014 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Add WebKit::WebScriptBindings::toV8String(WebString).

This lets users of WebString efficiently convert it to a v8::Local<v8::String>.

BUG=172011

Review URL: https://chromiumcodereview.appspot.com/19022008

git-svn-id: svn://svn.chromium.org/blink/trunk@154015 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Move MatchResult from StyleResolver.cpp into separate file

Continue to break apart StyleResolver by moving MatchResult into a
separate file.

BUG=259202
R=eseidel@chromium.org

Review URL: https://chromiumcodereview.appspot.com/18266006

git-svn-id: svn://svn.chromium.org/blink/trunk@154017 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Change CSSToStyleMap to use const StyleResolverState

Update CSSToStyleMap to use a const StyleResolverState object and
instead pass a mutable ElementStyleResources object.
Also update CSSToStyleMap to mark all methods that do not mutate the
state as const.

BUG=259066
R=eseidel@chromium.org

Review URL: https://chromiumcodereview.appspot.com/18627004

git-svn-id: svn://svn.chromium.org/blink/trunk@154018 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Inline StyleResolver::convertTo[Int|Float]Length

The static StyleResolver methods convertToIntLength and
convertToFloatLength are only used in one place each and really does
not belong in StyleResolver. Inline the functionality at the calling
sites.

R=eseidel@chromium.org
BUG=259209

Review URL: https://chromiumcodereview.appspot.com/19044003

git-svn-id: svn://svn.chromium.org/blink/trunk@154019 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Handle intrinsic sizing more correctly with flexbox.

We now store the intrinsic height of an element in updateLogicalHeight()
so that we can later retrieve it when clamping to the min/max size.

R=ojan@chromium.org
BUG=243139

Review URL: https://chromiumcodereview.appspot.com/16819003

git-svn-id: svn://svn.chromium.org/blink/trunk@154020 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Fix sampling tracing event scopes in V8GCController.cpp

This is another bug of sampling tracing macros I inserted before.
We have to make a scope for TRACE_EVENT_SCOPED_SAMPLING_STATE.
Otherwise, the subsequent TRACE_EVENT_SET_SAMPLING_STATE will
confuse the tracing state.

R=abarth,adamk
BUG=241743

Review URL: https://chromiumcodereview.appspot.com/18360009

git-svn-id: svn://svn.chromium.org/blink/trunk@154021 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Revert Blink r153179 change to NPObject ownership tracking.

r153179 appears to have broken several popular NPAPI and PPAPI plugins (see linked bugs).

Also reverts two dependent CLs:
r153642 & r153475 - leak-window-script-object.html expectations.

TBR=dimich
BUG=152006, 256450, 258025, 256230, 255407

Review URL: https://chromiumcodereview.appspot.com/18660011

git-svn-id: svn://svn.chromium.org/blink/trunk@154022 bbb929c8-8fbe-4397-9dbb-9b2b20218538
DevTools: Turn timeline memory overview into a step chart

Make it to be a step-chart.
Draw horisontal steps in the beginning and at the end instead of slopes.
Avoid division by zero at y-scale computation.

BUG=258032
R=yurys@chromium.org

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

git-svn-id: svn://svn.chromium.org/blink/trunk@154023 bbb929c8-8fbe-4397-9dbb-9b2b20218538
core/css: Include wtf files using "wtf/foo.h" form.

Instead of including them as:

\#include <wtf/foo.h>

Change it to include as:

\#include "wtf/foo.h"

Patch generated with thakis's script:

git grep -l '#include <wtf' core/css | xargs sed -i -e 's/#include <\(wtf\/[^>]*\)>/#include "\1"/'

BUG=254653
R=thakis@chromium.org,abarth@chromium.org
NOTRY=true

Review URL: https://chromiumcodereview.appspot.com/18733007

git-svn-id: svn://svn.chromium.org/blink/trunk@154024 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Optimize FFT convolver for Android by removing packing and unpacking of complex FFT data.

BUG=

From a perf profile of the webaudio panner/reverb demo, the cost of splitting complex data into real and imaginary parts and packing the parts into a complex vector is about 8% of the total time:

              946.00  4.2% WebCore::FFTFrame::splitFFTData(f [vectors]         
              837.00  3.7% WebCore::FFTFrame::packFFTData(fl [vectors]         
              104.00  0.5% WebCore::FFTConvolver::process(We [vectors]

After applying this change, the calls to splitFFTData and packFFTData are essentially gone (< 0.4%)

Review URL: https://chromiumcodereview.appspot.com/15997007

git-svn-id: svn://svn.chromium.org/blink/trunk@154025 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Add UseCounter entry for SVGAnimationElement

This patch adds a UseCounter to SVG's animation elements for measuring
SMIL usage. In a future patch we may add UseCounter entries for
more granular elements (SVGAnimateElement, SVGSetElement, etc) but to
reduce churn just SVGAnimationElement is being measured here.

BUG=258298

Review URL: https://chromiumcodereview.appspot.com/18332026

git-svn-id: svn://svn.chromium.org/blink/trunk@154026 bbb929c8-8fbe-4397-9dbb-9b2b20218538
checkTextOfParagraph shouldn't require bloatedCharacters

This CL changes checkTextOfParagraph to accept a String rather than a UChar*.
That means the callers don't need to call bloatedCharacters. Internally,
checkTextOfParagraph does copy the data out into a Vector<UChar> in order to
interface with wordBreakIterator.

R=eseidel
BUG=254708

Review URL: https://chromiumcodereview.appspot.com/19032002

git-svn-id: svn://svn.chromium.org/blink/trunk@154027 bbb929c8-8fbe-4397-9dbb-9b2b20218538
DevTools: Fix timeline overview selection window alignment.

BUG=241782
R=loislo@chromium.org

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

git-svn-id: svn://svn.chromium.org/blink/trunk@154028 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Move max vibration duration constant to platform so content/ can read it.

BUG=222504

Review URL: https://chromiumcodereview.appspot.com/19041004

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