Unify the modes style resolution modes SharingRules and StyleInvalidation
https://bugs.webkit.org/show_bug.cgi?id=135969

Reviewed by Andreas Kling.

Unifying the Collector and SelectorCheckers was done in previous patches,
this is just removing the enums.

* css/ElementRuleCollector.cpp:
(WebCore::ElementRuleCollector::collectMatchingRules):
(WebCore::ElementRuleCollector::hasAnyMatchingRules):
* css/SelectorChecker.cpp:
(WebCore::SelectorChecker::match):
* css/SelectorChecker.h:
* css/StyleInvalidationAnalysis.cpp:
(WebCore::invalidateStyleRecursively):
* cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateMarkPseudoStyleForPseudoElement):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@172679 268f45cc-cd09-0410-ab3c-d52691b4dbfc
REGRESSION (r172660): WebKit2.TerminateTwice asserts
https://bugs.webkit.org/show_bug.cgi?id=136012

Source/WebKit2:

* UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::terminateProcess):
Added bug number to a fixme.

Tools:

* TestWebKitAPI/Tests/WebKit2/TerminateTwice.cpp: Skipped the test in debug mode.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@172680 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Do not use FloatRect::infiniteRect() to flag full repaints.
https://bugs.webkit.org/show_bug.cgi?id=135900

Reviewed by Simon Fraser.

Converting FloatRect::infiniteRect() to IntRect leads to value overflow
and we end up with invalid repaint rectangle. Use a boolean flag to indicate
full repaint request.

Covered by existing tests.

Source/WebCore:

* platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::GraphicsLayerCA::GraphicsLayerCA):
(WebCore::GraphicsLayerCA::setNeedsDisplay):
(WebCore::GraphicsLayerCA::setNeedsDisplayInRect):
(WebCore::GraphicsLayerCA::repaintLayerDirtyRects):
* platform/graphics/ca/GraphicsLayerCA.h:
* platform/graphics/ca/PlatformCALayer.h:
* platform/graphics/ca/TileGrid.cpp:
(WebCore::TileGrid::setTileNeedsDisplayInRect):
* platform/graphics/ca/mac/PlatformCALayerMac.h:
* platform/graphics/ca/mac/PlatformCALayerMac.mm:
(PlatformCALayerMac::setNeedsDisplay):
(PlatformCALayerMac::setNeedsDisplayInRect):

Source/WebKit2:

* WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:
(WebKit::PlatformCALayerRemote::setNeedsDisplayInRect):
(WebKit::PlatformCALayerRemote::setNeedsDisplay):
* WebProcess/WebPage/mac/PlatformCALayerRemote.h:
* WebProcess/WebPage/mac/PlatformCALayerRemoteCustom.h:
* WebProcess/WebPage/mac/PlatformCALayerRemoteCustom.mm:
(WebKit::PlatformCALayerRemoteCustom::setNeedsDisplayInRect):
(WebKit::PlatformCALayerRemoteCustom::setNeedsDisplay):
* WebProcess/WebPage/mac/PlatformCALayerRemoteTiledBacking.cpp:
(WebKit::PlatformCALayerRemoteTiledBacking::setNeedsDisplayInRect):
(WebKit::PlatformCALayerRemoteTiledBacking::setNeedsDisplay):
* WebProcess/WebPage/mac/PlatformCALayerRemoteTiledBacking.h:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@172681 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: Remove forced layouts during recording caused by striped background element resizing
https://bugs.webkit.org/show_bug.cgi?id=136009

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2014-08-15
Reviewed by Timothy Hatcher.

We used to manually resize and a custom striped background behind
the timeline tree outline content area. This can happen frequently
during timeline recordings causing forced layouts. We can eliminate
the hack and instead put the stripe background on the tree outline.

* UserInterface/Views/TimelineSidebarPanel.js:
(WebInspector.TimelineSidebarPanel.prototype.updateCustomContentOverflow): Deleted.
* UserInterface/Views/TimelineSidebarPanel.css:
(body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .content .item > .status > .status-button):
(.sidebar > .panel.navigation.timeline > .content > .stripe-background): Deleted.
(.sidebar > .panel.navigation.timeline.timeline-content-view-showing > .content > .stripe-background): Deleted.
Eliminate the striped background element.

* UserInterface/Views/TimelineView.css:
(.panel.navigation.timeline > .content > .navigation-sidebar-panel-content-tree-outline):
(.panel.navigation.timeline.timeline-content-view-showing > .content > .navigation-sidebar-panel-content-tree-outline):
Give the timeline content tree outlines the striped background.

* UserInterface/Views/NavigationSidebarPanel.js:
(WebInspector.NavigationSidebarPanel.prototype._updateContentOverflowShadowVisibility):
(WebInspector.NavigationSidebarPanel.prototype.updateCustomContentOverflow): Deleted.
Remove the now unused updateCustomContentOverflow method.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@172682 268f45cc-cd09-0410-ab3c-d52691b4dbfc