DevTools: Extract SourcesEditor from SourcesPanel.

This extracts everything related to our tabbed editor from the sources panel to the separate SourcesEditor class.
This class could be later refactored into the view that could be embedded in other places (e.g. Drawer).

R=pfeldman, lushnikov

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

git-svn-id: svn://svn.chromium.org/blink/trunk@169653 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Remove HeapSnapshotItemIterator.rewind

We don't actually need to rewind iterators. The iterators should be one-pass only and rewind just complicates the code.

BUG=None

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

git-svn-id: svn://svn.chromium.org/blink/trunk@169654 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Fix Repaint-After-Layout after partial layout removal.

When the partial layout code was removed this changed the conditional
for triggering repaintTree from m_doFullRepaint || !partialLayout.isStopping()
to just m_doFullRepaint. This caused repaint to not happen in a lot of cases
because, typically, !paritalLayout.isStopping() was true and would trigger
repaintTree. I don't think we need the check at all and should be
unconditionally triggering repaintTree and using the information from layout to
determine what repaints.

BUG=283623,320139

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

git-svn-id: svn://svn.chromium.org/blink/trunk@169656 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Remove HeapSnapshot._markInvisibleEdges

The method is a noop as we first collect names of shortcut edges and then iterate through all non-shortcuts whose names are also in the collection.

BUG=None

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

git-svn-id: svn://svn.chromium.org/blink/trunk@169657 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Clear sibling floats while splitting inline flow.

During RenderInline::splitFlow(), floats are cleared on an anonymous containingBlock() for
the inline being split. This is a problem if siblings of the block contain references to
the same floats, since the float removal code in markSiblingsWithFloatsForLayout() will not
later find them.

R=inferno@chromium.org
BUG=245727

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

git-svn-id: svn://svn.chromium.org/blink/trunk@169658 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Include the outline into the visual overflow

This change makes the outline a first class visual effect instead
of being applied manually in the code. This removes the crazy fudge
factor logic that would grow *ANY* repaint rectangle by the maximal
outline on the page.

All test changes are progressions apart from 2 multi-column tests
regressing due to http://crbug.com/348064:
- fast/forms/range/slider-in-multi-column.html
- fast/forms/number/number-spinbutton-in-multi-column.html
A fix is in progress for the underlying issue that will make them
pass again (thanks to Morten Stenshome).

BUG=273904

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

git-svn-id: svn://svn.chromium.org/blink/trunk@169659 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Minor Gradient cleanup.

There is no need to manipulate the sorted state externally, we can
efficiently detect sorted color stops on the fly. This may also avoid
a sort pass in some cases.

R=pdr@chromium.org,schenney@chromium.org,rob.buis@samsung.com

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

git-svn-id: svn://svn.chromium.org/blink/trunk@169660 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Revert of Oilpan: Move CSSStyleDeclaration and subclasses to the heap using transistion types. (https://codereview.chromium.org/195953003/)

Reason for revert:
Breaking tests.

Original issue's description:
> Oilpan: Move CSSStyleDeclaration and subclasses to the heap using transistion types.
> 
> 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=341815
> 
> Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=169652

TBR=ager@chromium.org,erik.corry@gmail.com,haraken@chromium.org,oilpan-reviews@chromium.org,tkent@chromium.org,vegorov@chromium.org,zerny@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=341815

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

git-svn-id: svn://svn.chromium.org/blink/trunk@169661 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Use simple CSS selectors to identify elements in Layer's panel tree view

Drive-by: fix navigation to Elements panel via context menu.

BUG=

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

git-svn-id: svn://svn.chromium.org/blink/trunk@169662 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Factor the style invalidation tree walk out of RuleFeatureSet, and make it generic.

This is in anticipation of adding support for attributes.

BUG=352300,335247

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

git-svn-id: svn://svn.chromium.org/blink/trunk@169663 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Remove unused WebRuntimeFeatures::enableStableFeatures

As of chromium r254438 this method is never called.

[1] https://src.chromium.org/viewvc/chrome?view=rev&revision=254438

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

git-svn-id: svn://svn.chromium.org/blink/trunk@169664 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Do not trigger new history entry if iframe URL doesn't change

When URL of an iframe changes from "unset" to "set", we don't want to
create new history entry. This worked for URLs without fragment
identifier but failed with it present.

This change takes the idea from the old code, before it was rewritten
in https://codereview.chromium.org/126453005

BUG=353096

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

git-svn-id: svn://svn.chromium.org/blink/trunk@169665 bbb929c8-8fbe-4397-9dbb-9b2b20218538
[SVG] Transform animation leaves traces of text behind.

AffineTransform.inverse() unexpectedly returned an identity matrix when
the matrix was not invertible. This caused invalid rendering for e.g
scale(0) matrices in svg.

BUG=352603

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

git-svn-id: svn://svn.chromium.org/blink/trunk@169666 bbb929c8-8fbe-4397-9dbb-9b2b20218538
DevTools: Get rid of WebInspector.ConsoleModel.UIDelegate

BUG=

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

git-svn-id: svn://svn.chromium.org/blink/trunk@169667 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Implement ServiceWorker::postMessage()

This allows the registering page, or pages loaded via the worker,
to send arbitrary messages to the worker script.

BUG=350103
R=abarth@chromium.org, adamk@chromium.org, kinuko@chromium.org, marja@chromium.org

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

git-svn-id: svn://svn.chromium.org/blink/trunk@169668 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Move deferred loading logic from WebMediaPlayerClientImpl to HTMLMediaElement.

BUG=350571
TEST=All layout tests still pass.

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

git-svn-id: svn://svn.chromium.org/blink/trunk@169669 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Oilpan: move Console objects to the oilpan heap.

Turn the ConsoleBase object into a garbage collected object if Oilpan
is enabled, avoiding its ref forwarding to either Console or WorkerConsole.

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

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

git-svn-id: svn://svn.chromium.org/blink/trunk@169670 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Add a performance test for attribute descendant selectors.

BUG=352300
NOTRY=true

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

git-svn-id: svn://svn.chromium.org/blink/trunk@169671 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Don't schedule an animation during compositing dirty-bit setting unless needed.

In particular, don't do it if the dirty bits are going to be cleaned up during synchronous
Blink execution anyway. To achieve this, this CL adds an m_updatingLayoutAndStyleForPainting state bit
in PageAnimator to indicate that code is in progress which is guaranteed to call
RenderLayerCompositor::updateCompositingLayers() at its end, and therefore any compositing dirty
bits set before that call do not require a call to scheduleAnimation().

Unfortunately, in a small number of cases RenderLayerCompositor::updateCompositingLayers will set
*new* dirty bits when updating direct compositing reasons. So put in code to check each
RenderLayerCompositor instance in the frame tree for dirty bits after
RenderLayerCompositor::updateCompositingLayers has run and call scheduleAnimation() if so. In the
future we can remove this once the compositing code is fixed to not leave around dirty bits.

BUG=340679

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

git-svn-id: svn://svn.chromium.org/blink/trunk@169672 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Manual rebaseline after r169659.

Turns out the entry wasn't needed.

BUG=273904
TBR=leviw@chromium.org

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

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