Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(136)

Unified Diff: third_party/WebKit/Source/core/layout/LayoutBlock.h

Issue 1473363003: Invalidate first line display item clients when first line style changes (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Some modifications were not saved to README.md in the previous patch Created 5 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/core/layout/LayoutBlock.h
diff --git a/third_party/WebKit/Source/core/layout/LayoutBlock.h b/third_party/WebKit/Source/core/layout/LayoutBlock.h
index f3cfe10016b2b7f79afc4604ec99457408c64a3f..5f047aed6c554784e0df0bcce0707add010524e8 100644
--- a/third_party/WebKit/Source/core/layout/LayoutBlock.h
+++ b/third_party/WebKit/Source/core/layout/LayoutBlock.h
@@ -276,6 +276,23 @@ public:
bool recalcChildOverflowAfterStyleChange();
bool recalcOverflowAfterStyleChange();
+ // An example explaining layout tree structure about first-line style:
+ // <style>
+ // #enclosingFirstLineStyleBlock::first-line { ... }
+ // </style>
+ // <div id="enclosingFirstLineStyleBlock">
+ // <div>
+ // <div id="nearestInnerBlockWithFirstLine">
+ // [<span>]first line text[</span>]
+ // </div>
+ // </div>
+ // </div>
+
+ // Returns the nearest enclosing block (including this block) that contributes a first-line style to our first line.
+ LayoutBlock* enclosingFirstLineStyleBlock() const;
+ // Returns this block or the nearest inner block containing the actual first line.
+ LayoutBlockFlow* nearestInnerBlockWithFirstLine() const;
+
protected:
void willBeDestroyed() override;
@@ -396,10 +413,6 @@ private:
void computeBlockPreferredLogicalWidths(LayoutUnit& minLogicalWidth, LayoutUnit& maxLogicalWidth) const;
- // Obtains the nearest enclosing block (including this block) that contributes a first-line style to our inline
- // children.
- LayoutBlock* firstLineBlock() const override;
-
LayoutObject* hoverAncestor() const final;
void updateDragState(bool dragOn) final;
void childBecameNonInline(LayoutObject* child) final;
« no previous file with comments | « third_party/WebKit/Source/core/dom/FirstLetterPseudoElement.cpp ('k') | third_party/WebKit/Source/core/layout/LayoutBlock.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698