-
achicu@adobe.com authored
https://bugs.webkit.org/show_bug.cgi?id=122291 Reviewed by Timothy Hatcher. Source/WebCore: Tests: inspector/elements/highlight-regions-flow-horiz-bt.html inspector/elements/highlight-regions-flow-transform-horiz-bt.html inspector/elements/highlight-regions-flow-transform-vert-lr.html inspector/elements/highlight-regions-flow-transform-vert-rl.html inspector/elements/highlight-regions-flow-transform.html inspector/elements/highlight-regions-flow-vert-lr.html inspector/elements/highlight-regions-flow-vert-rl.html inspector/elements/highlight-regions-flow.html Nodes inside a RenderFlowThread can be split across multiple regions. This patch adds the required code to compute "fragments" for each region. Each fragment will display its own label. There are a couple of changes: 1. The node highlight object now has a "scroll" property to hold the main view's scroll offset. 2. There's a "fragment" array to get a list of quads for each renderer fragment. Renderers outside RenderFlowThreads will just have one fragment. 3. ElementInfo now has two more properties: "regionFlowInfo" (renamed from former flowInfo) and "contentFlowInfo". If the renderer is a RenderRegion it will have a regionFlowInfo. If the renderer is inside a RenderFlowThread then it will have a "contentFlowInfo". * inspector/InspectorOverlay.cpp: (WebCore::InspectorOverlay::getHighlight): It should now take a "region" parameter to customize the output for a specific containing region. (WebCore::buildObjectForHighlight): (WebCore::buildObjectForCSSRegionContentClip): We need to know how to clip the fragments inside regions. (WebCore::buildObjectForRendererFragments): Extracted code from buildObjectForHighlight and added the new regions lookup code. (WebCore::buildObjectForElementInfo): Extracted from buildObjectForHighlight. (WebCore::InspectorOverlay::buildObjectForHighlightedNode): (WebCore::InspectorOverlay::drawQuadHighlight): * inspector/InspectorOverlayPage.css: There can be multiple labels on screen at once, so I've created the #element-title-template element that we clone for each label. .element-title-container is now holding all the .element-title elements, so that we can remove them all at once. (.element-title-container): (.element-title): (#element-title-template): (.tag-name): (.node-id): (.class-name): * inspector/InspectorOverlayPage.html: * inspector/InspectorOverlayPage.js: (reset): (_toggleOptionalValue): (_createElementTitle): Creates an element populated with data read from elementInfo. (_drawElementTitle): Added code to create more labels for multiple fragments. (_drawRegionsHighlight): (_drawFragmentHighlight): (drawNodeHighlight): Consolidated the scroll property into a canvas.transform. LayoutTests: Added tests to check the result of the InspectorOverlay when it inspects nodes inside RenderFlowThreads. * http/tests/inspector/elements-test.js: * inspector/elements/highlight-regions-flow-expected.txt: Added. * inspector/elements/highlight-regions-flow-horiz-bt-expected.txt: Added. * inspector/elements/highlight-regions-flow-horiz-bt.html: Added. * inspector/elements/highlight-regions-flow-transform-expected.txt: Added. * inspector/elements/highlight-regions-flow-transform-horiz-bt-expected.txt: Added. * inspector/elements/highlight-regions-flow-transform-horiz-bt.html: Added. * inspector/elements/highlight-regions-flow-transform-vert-lr-expected.txt: Added. * inspector/elements/highlight-regions-flow-transform-vert-lr.html: Added. * inspector/elements/highlight-regions-flow-transform-vert-rl-expected.txt: Added. * inspector/elements/highlight-regions-flow-transform-vert-rl.html: Added. * inspector/elements/highlight-regions-flow-transform.html: Added. * inspector/elements/highlight-regions-flow-vert-lr-expected.txt: Added. * inspector/elements/highlight-regions-flow-vert-lr.html: Added. * inspector/elements/highlight-regions-flow-vert-rl-expected.txt: Added. * inspector/elements/highlight-regions-flow-vert-rl.html: Added. * inspector/elements/highlight-regions-flow.html: Added. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157199 268f45cc-cd09-0410-ab3c-d52691b4dbfc
051b43b9