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

Unified Diff: Source/core/rendering/InlineBox.cpp

Issue 669803002: Optimize for horizontal writing mode (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Created 6 years, 2 months 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: Source/core/rendering/InlineBox.cpp
diff --git a/Source/core/rendering/InlineBox.cpp b/Source/core/rendering/InlineBox.cpp
index 05ef4904bbff1806637c720f74cfa6d33f557b18..7c5d6351b87653bd4f6bd7d0fed6e0cebeb9a277 100644
--- a/Source/core/rendering/InlineBox.cpp
+++ b/Source/core/rendering/InlineBox.cpp
@@ -308,8 +308,10 @@ void InlineBox::clearKnownToHaveNoOverflow()
FloatPoint InlineBox::locationIncludingFlipping()
{
- if (!renderer().style()->isFlippedBlocksWritingMode())
+ if (!UNLIKELY(renderer().document().hasVerticalWritingMode())
+ || !renderer().style()->isFlippedBlocksWritingMode()) {
return FloatPoint(x(), y());
+ }
RenderBlockFlow& block = root().block();
if (block.style()->isHorizontalWritingMode())
return FloatPoint(x(), block.height() - height() - y());
@@ -319,29 +321,37 @@ FloatPoint InlineBox::locationIncludingFlipping()
void InlineBox::flipForWritingMode(FloatRect& rect)
{
- if (!renderer().style()->isFlippedBlocksWritingMode())
+ if (!UNLIKELY(renderer().document().hasVerticalWritingMode())
pdr. 2014/10/21 22:11:26 I'm not a huge fan of sprinkling unlikely's around
eae 2014/10/21 22:21:46 The entire point of this change is to short-circui
pdr. 2014/10/21 22:38:14 What do you think about the first part involving m
+ || !renderer().style()->isFlippedBlocksWritingMode()) {
return;
+ }
root().block().flipForWritingMode(rect);
}
FloatPoint InlineBox::flipForWritingMode(const FloatPoint& point)
{
- if (!renderer().style()->isFlippedBlocksWritingMode())
+ if (!UNLIKELY(renderer().document().hasVerticalWritingMode())
+ || !renderer().style()->isFlippedBlocksWritingMode()) {
return point;
+ }
return root().block().flipForWritingMode(point);
}
void InlineBox::flipForWritingMode(LayoutRect& rect)
{
- if (!renderer().style()->isFlippedBlocksWritingMode())
+ if (!UNLIKELY(renderer().document().hasVerticalWritingMode())
+ || !renderer().style()->isFlippedBlocksWritingMode()) {
return;
+ }
root().block().flipForWritingMode(rect);
}
LayoutPoint InlineBox::flipForWritingMode(const LayoutPoint& point)
{
- if (!renderer().style()->isFlippedBlocksWritingMode())
+ if (!UNLIKELY(renderer().document().hasVerticalWritingMode())
+ || !renderer().style()->isFlippedBlocksWritingMode()) {
return point;
+ }
return root().block().flipForWritingMode(point);
}

Powered by Google App Engine
This is Rietveld 408576698