DevTools: [JSDoc] Fix function bind()-ing against their @this annotations

R=vsevik@chromium.org, aandrey, eustas, vsevik

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

git-svn-id: svn://svn.chromium.org/blink/trunk@169433 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Remove EnableMemoryInfo WebSetting, rename internal to preciseMemoryInfoEnabled

As --enable-memory-info flag and web preference were removed from Chrome,
remove the corresponding WebSetting.

The internal setting is used by PerfTestRunner, so leave it, but rename to
"preciseMemoryInfoEnabled" for clarity.

BUG=350339

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

git-svn-id: svn://svn.chromium.org/blink/trunk@169434 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Explicit notification and removal of lifecycle observers.

To help make disposing of execution contexts cleaner in a setting
where both a context and its lifetime observers are being finalized
by a garbage collector, add support for explicitly clearing out
all lifecycle observers:

protected:
  void LifecycleNotifier<T>::removeAndNotifyAllObservers()

Notifying them that the context has been destroyed while doing so.
An operation that was previously (only) done by the LifecycleNotifier
destructor.

Also provide a convenience method over ExecutionContext for clearing
out its observers:

  void ExecutionContext::removeAllLifecycleObservers()

The operation is used here when shutting down and finalizing a worker
thread and its global scope -- explicitly severing the connection
of all observers to its execution context before performing the
final garbage collection.

Doing so ensures that all observer objects being finalized during that
garbage collection will not have access to its execution context object.
A heap object that may or may not have been finalized by the garbage
collector already.

R=haraken@chromium.org,ager@chromium.org,abarth@chromium.org
BUG=340522

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

git-svn-id: svn://svn.chromium.org/blink/trunk@169435 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Test flakiness fix for form submission cancelable

Since test return will be aync, introduced function to test query string return value.

This test fixes isuse introduced by fix for bug196640

R=keishi1, tkent
BUG=353066
TEST=Automated

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

git-svn-id: svn://svn.chromium.org/blink/trunk@169436 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Web Animations API: Initialise FontBuilder when resolving keyframes

FontBuilder must be properly initialised before font properties can be
applied to a RenderStyle.

BUG=352505,352506

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

git-svn-id: svn://svn.chromium.org/blink/trunk@169437 bbb929c8-8fbe-4397-9dbb-9b2b20218538
The entity table contained pointers which both makes it big and prevents
it from being reused as-is from the binary. This changes it to make
the storage more compact by replacing pointers with offsets into a
shared string. Also switching to more compact data types.

The new database will look like:

static const LChar staticEntityStringStorage[] = {
'A', 'E', 'l', 'i', 'g',
';',
'A', 'M', 'P',
';',
'A', 'a', 'c', 'u', 't', 'e',
';',
...

static const HTMLEntityTableEntry staticEntityTable[2231] = {
    { 0x000C6, 0, 0, 5 }, // &AElig
    { 0x000C6, 0, 0, 6 }, // &AElig;
    { 0x00026, 0, 6, 3 }, // &AMP
    { 0x00026, 0, 6, 4 }, // &AMP;
    { 0x000C1, 0, 10, 6 }, // &Aacute
...

The binary will shrink by about 20-35 KB (depending on architecture),
the memory usage should shrink by similar numbers for every
renderer (since the memory now can be shared between renderers) and
there will be a tiny startup time improvement due to
fewer relocation blocks and less to read from disk.

It accomplishes the savings by avoiding pointers in the data (resolving pointers
during startup is expensive), using one string instead of 2000+, not storing the
trailing NUL byte, ordering the members for minimum padding, using minimal size
data types and reusing the same string space for things like "amp;" and "amp".

BUG=352141

R=

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

git-svn-id: svn://svn.chromium.org/blink/trunk@169438 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Display MathML fallback content when it is specified and take into account inline/display modes for mathematical formulas. This is important for Web authors because Blink does not support MathML yet.

R=ojan@chromium.org,eseidel@chromium.org,jchaffraix@chromium.org
BUG=chromium:324764,chromium:152430

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

git-svn-id: svn://svn.chromium.org/blink/trunk@169439 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Faster run-bindings-tests

This makes run-bindings-tests faster by doing more work in
Python, instead of going out to the OS.
Notably: calling Python compiler directly (reusing a compiler object),
instead of launching separate processes, and
avoiding a temporary file for interfaces_info.

(Earlier versions had many refactoring changes,
which improve support for Dart CG and other backends,
which Nils broke off and committed separately.)

R=nbarth

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

git-svn-id: svn://svn.chromium.org/blink/trunk@169440 bbb929c8-8fbe-4397-9dbb-9b2b20218538
DevTools: fix author shadow dom inspection mode, speacial-case ua. Fix crash from the bug.

R=apavlov
BUG=353016

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

git-svn-id: svn://svn.chromium.org/blink/trunk@169441 bbb929c8-8fbe-4397-9dbb-9b2b20218538
DevTools: Remove step into selection experiment

R=lushnikov, pfeldman

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

git-svn-id: svn://svn.chromium.org/blink/trunk@169442 bbb929c8-8fbe-4397-9dbb-9b2b20218538
DevTools: once migrated to document-based stylesheet processing there is no need to track changes to frames.

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

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