Diff
Modified: trunk/Source/WebCore/ChangeLog (106899 => 106900)
--- trunk/Source/WebCore/ChangeLog 2012-02-07 04:16:50 UTC (rev 106899)
+++ trunk/Source/WebCore/ChangeLog 2012-02-07 04:26:17 UTC (rev 106900)
@@ -1,3 +1,62 @@
+2012-02-06 Emil A Eklund <[email protected]>
+
+ Change baselinePosition and lineHeight to LayoutUnit
+ https://bugs.webkit.org/show_bug.cgi?id=77905
+
+ Reviewed by Eric Seidel.
+
+ Change the virtual baselinePosition and lineHeight methods to return
+ LayoutUnits as they are both computed from the height and top/bottom
+ margins (or width and left/right margins for vertical text), all of
+ which are LayoutUnits.
+
+ No new tests.
+
+ * platform/efl/RenderThemeEfl.cpp:
+ (WebCore::RenderThemeEfl::baselinePosition):
+ * platform/efl/RenderThemeEfl.h:
+ (RenderThemeEfl):
+ * platform/gtk/RenderThemeGtk.cpp:
+ (WebCore::RenderThemeGtk::baselinePosition):
+ * platform/gtk/RenderThemeGtk.h:
+ (RenderThemeGtk):
+ * platform/qt/RenderThemeQt.cpp:
+ (WebCore::RenderThemeQt::baselinePosition):
+ * platform/qt/RenderThemeQt.h:
+ (RenderThemeQt):
+ * rendering/RenderListMarker.cpp:
+ (WebCore::RenderListMarker::lineHeight):
+ (WebCore::RenderListMarker::baselinePosition):
+ * rendering/RenderListMarker.h:
+ (RenderListMarker):
+ * rendering/RenderSlider.cpp:
+ (WebCore::RenderSlider::baselinePosition):
+ * rendering/RenderSlider.h:
+ (RenderSlider):
+ * rendering/RootInlineBox.h:
+ (WebCore::RootInlineBox::baselinePosition):
+ (WebCore::RootInlineBox::lineHeight):
+ * rendering/mathml/RenderMathMLFraction.cpp:
+ (WebCore::RenderMathMLFraction::baselinePosition):
+ * rendering/mathml/RenderMathMLFraction.h:
+ (RenderMathMLFraction):
+ * rendering/mathml/RenderMathMLOperator.cpp:
+ (WebCore::RenderMathMLOperator::baselinePosition):
+ * rendering/mathml/RenderMathMLOperator.h:
+ (RenderMathMLOperator):
+ * rendering/mathml/RenderMathMLRow.cpp:
+ (WebCore::RenderMathMLRow::baselinePosition):
+ * rendering/mathml/RenderMathMLRow.h:
+ (RenderMathMLRow):
+ * rendering/mathml/RenderMathMLSubSup.cpp:
+ (WebCore::RenderMathMLSubSup::baselinePosition):
+ * rendering/mathml/RenderMathMLSubSup.h:
+ (RenderMathMLSubSup):
+ * rendering/mathml/RenderMathMLUnderOver.cpp:
+ (WebCore::RenderMathMLUnderOver::baselinePosition):
+ * rendering/mathml/RenderMathMLUnderOver.h:
+ (RenderMathMLUnderOver):
+
2012-02-06 Xianzhu Wang <[email protected]>
Avoid Page::updateViewportArguments() if the causing frame is not the main frame
Modified: trunk/Source/WebCore/platform/efl/RenderThemeEfl.cpp (106899 => 106900)
--- trunk/Source/WebCore/platform/efl/RenderThemeEfl.cpp 2012-02-07 04:16:50 UTC (rev 106899)
+++ trunk/Source/WebCore/platform/efl/RenderThemeEfl.cpp 2012-02-07 04:26:17 UTC (rev 106900)
@@ -822,7 +822,7 @@
return isEnabled(object);
}
-int RenderThemeEfl::baselinePosition(const RenderObject* object) const
+LayoutUnit RenderThemeEfl::baselinePosition(const RenderObject* object) const
{
if (!object->isBox())
return 0;
Modified: trunk/Source/WebCore/platform/efl/RenderThemeEfl.h (106899 => 106900)
--- trunk/Source/WebCore/platform/efl/RenderThemeEfl.h 2012-02-07 04:16:50 UTC (rev 106899)
+++ trunk/Source/WebCore/platform/efl/RenderThemeEfl.h 2012-02-07 04:26:17 UTC (rev 106900)
@@ -91,7 +91,7 @@
// A method to obtain the baseline position for a "leaf" control. This will only be used if a baseline
// position cannot be determined by examining child content. Checkboxes and radio buttons are examples of
// controls that need to do this.
- virtual int baselinePosition(const RenderObject*) const;
+ virtual LayoutUnit baselinePosition(const RenderObject*) const;
virtual Color platformActiveSelectionBackgroundColor() const { return m_activeSelectionBackgroundColor; }
virtual Color platformInactiveSelectionBackgroundColor() const { return m_inactiveSelectionBackgroundColor; }
Modified: trunk/Source/WebCore/platform/gtk/RenderThemeGtk.cpp (106899 => 106900)
--- trunk/Source/WebCore/platform/gtk/RenderThemeGtk.cpp 2012-02-07 04:16:50 UTC (rev 106899)
+++ trunk/Source/WebCore/platform/gtk/RenderThemeGtk.cpp 2012-02-07 04:26:17 UTC (rev 106900)
@@ -161,7 +161,7 @@
return isEnabled(o);
}
-int RenderThemeGtk::baselinePosition(const RenderObject* o) const
+LayoutUnit RenderThemeGtk::baselinePosition(const RenderObject* o) const
{
if (!o->isBox())
return 0;
Modified: trunk/Source/WebCore/platform/gtk/RenderThemeGtk.h (106899 => 106900)
--- trunk/Source/WebCore/platform/gtk/RenderThemeGtk.h 2012-02-07 04:16:50 UTC (rev 106899)
+++ trunk/Source/WebCore/platform/gtk/RenderThemeGtk.h 2012-02-07 04:26:17 UTC (rev 106900)
@@ -60,7 +60,7 @@
// A method to obtain the baseline position for a "leaf" control. This will only be used if a baseline
// position cannot be determined by examining child content. Checkboxes and radio buttons are examples of
// controls that need to do this.
- virtual int baselinePosition(const RenderObject*) const;
+ virtual LayoutUnit baselinePosition(const RenderObject*) const;
// The platform selection color.
virtual Color platformActiveSelectionBackgroundColor() const;
Modified: trunk/Source/WebCore/platform/qt/RenderThemeQt.cpp (106899 => 106900)
--- trunk/Source/WebCore/platform/qt/RenderThemeQt.cpp 2012-02-07 04:16:50 UTC (rev 106899)
+++ trunk/Source/WebCore/platform/qt/RenderThemeQt.cpp 2012-02-07 04:26:17 UTC (rev 106900)
@@ -156,7 +156,7 @@
}
}
-int RenderThemeQt::baselinePosition(const RenderObject* o) const
+LayoutUnit RenderThemeQt::baselinePosition(const RenderObject* o) const
{
if (!o->isBox())
return 0;
Modified: trunk/Source/WebCore/platform/qt/RenderThemeQt.h (106899 => 106900)
--- trunk/Source/WebCore/platform/qt/RenderThemeQt.h 2012-02-07 04:16:50 UTC (rev 106899)
+++ trunk/Source/WebCore/platform/qt/RenderThemeQt.h 2012-02-07 04:26:17 UTC (rev 106900)
@@ -53,7 +53,7 @@
virtual bool supportsHover(const RenderStyle*) const;
virtual bool supportsFocusRing(const RenderStyle*) const;
- virtual int baselinePosition(const RenderObject*) const;
+ virtual LayoutUnit baselinePosition(const RenderObject*) const;
// A method asking if the control changes its tint when the window has focus or not.
virtual bool controlSupportsTints(const RenderObject*) const;
Modified: trunk/Source/WebCore/rendering/RenderListMarker.cpp (106899 => 106900)
--- trunk/Source/WebCore/rendering/RenderListMarker.cpp 2012-02-07 04:16:50 UTC (rev 106899)
+++ trunk/Source/WebCore/rendering/RenderListMarker.cpp 2012-02-07 04:26:17 UTC (rev 106900)
@@ -1534,14 +1534,14 @@
style()->setMarginEnd(Length(marginEnd, Fixed));
}
-int RenderListMarker::lineHeight(bool firstLine, LineDirectionMode direction, LinePositionMode linePositionMode) const
+LayoutUnit RenderListMarker::lineHeight(bool firstLine, LineDirectionMode direction, LinePositionMode linePositionMode) const
{
if (!isImage())
return m_listItem->lineHeight(firstLine, direction, PositionOfInteriorLineBoxes);
return RenderBox::lineHeight(firstLine, direction, linePositionMode);
}
-int RenderListMarker::baselinePosition(FontBaseline baselineType, bool firstLine, LineDirectionMode direction, LinePositionMode linePositionMode) const
+LayoutUnit RenderListMarker::baselinePosition(FontBaseline baselineType, bool firstLine, LineDirectionMode direction, LinePositionMode linePositionMode) const
{
if (!isImage())
return m_listItem->baselinePosition(baselineType, firstLine, direction, PositionOfInteriorLineBoxes);
Modified: trunk/Source/WebCore/rendering/RenderListMarker.h (106899 => 106900)
--- trunk/Source/WebCore/rendering/RenderListMarker.h 2012-02-07 04:16:50 UTC (rev 106899)
+++ trunk/Source/WebCore/rendering/RenderListMarker.h 2012-02-07 04:26:17 UTC (rev 106900)
@@ -58,8 +58,8 @@
virtual InlineBox* createInlineBox();
- virtual int lineHeight(bool firstLine, LineDirectionMode, LinePositionMode = PositionOnContainingLine) const;
- virtual int baselinePosition(FontBaseline, bool firstLine, LineDirectionMode, LinePositionMode = PositionOnContainingLine) const;
+ virtual LayoutUnit lineHeight(bool firstLine, LineDirectionMode, LinePositionMode = PositionOnContainingLine) const;
+ virtual LayoutUnit baselinePosition(FontBaseline, bool firstLine, LineDirectionMode, LinePositionMode = PositionOnContainingLine) const;
bool isImage() const;
bool isText() const { return !isImage(); }
Modified: trunk/Source/WebCore/rendering/RenderSlider.cpp (106899 => 106900)
--- trunk/Source/WebCore/rendering/RenderSlider.cpp 2012-02-07 04:16:50 UTC (rev 106899)
+++ trunk/Source/WebCore/rendering/RenderSlider.cpp 2012-02-07 04:26:17 UTC (rev 106900)
@@ -59,7 +59,7 @@
{
}
-int RenderSlider::baselinePosition(FontBaseline, bool /*firstLine*/, LineDirectionMode, LinePositionMode) const
+LayoutUnit RenderSlider::baselinePosition(FontBaseline, bool /*firstLine*/, LineDirectionMode, LinePositionMode) const
{
// FIXME: Patch this function for writing-mode.
return height() + marginTop();
Modified: trunk/Source/WebCore/rendering/RenderSlider.h (106899 => 106900)
--- trunk/Source/WebCore/rendering/RenderSlider.h 2012-02-07 04:16:50 UTC (rev 106899)
+++ trunk/Source/WebCore/rendering/RenderSlider.h 2012-02-07 04:26:17 UTC (rev 106900)
@@ -40,7 +40,7 @@
virtual const char* renderName() const { return "RenderSlider"; }
virtual bool isSlider() const { return true; }
- virtual int baselinePosition(FontBaseline, bool firstLine, LineDirectionMode, LinePositionMode = PositionOnContainingLine) const;
+ virtual LayoutUnit baselinePosition(FontBaseline, bool firstLine, LineDirectionMode, LinePositionMode = PositionOnContainingLine) const;
virtual void computePreferredLogicalWidths();
virtual bool requiresForcedStyleRecalcPropagation() const { return true; }
virtual void layout();
Modified: trunk/Source/WebCore/rendering/RootInlineBox.h (106899 => 106900)
--- trunk/Source/WebCore/rendering/RootInlineBox.h 2012-02-07 04:16:50 UTC (rev 106899)
+++ trunk/Source/WebCore/rendering/RootInlineBox.h 2012-02-07 04:26:17 UTC (rev 106900)
@@ -101,8 +101,8 @@
bool isHyphenated() const;
- virtual int baselinePosition(FontBaseline baselineType) const { return boxModelObject()->baselinePosition(baselineType, m_firstLine, isHorizontal() ? HorizontalLine : VerticalLine, PositionOfInteriorLineBoxes); }
- virtual int lineHeight() const { return boxModelObject()->lineHeight(m_firstLine, isHorizontal() ? HorizontalLine : VerticalLine, PositionOfInteriorLineBoxes); }
+ virtual LayoutUnit baselinePosition(FontBaseline baselineType) const { return boxModelObject()->baselinePosition(baselineType, m_firstLine, isHorizontal() ? HorizontalLine : VerticalLine, PositionOfInteriorLineBoxes); }
+ virtual LayoutUnit lineHeight() const { return boxModelObject()->lineHeight(m_firstLine, isHorizontal() ? HorizontalLine : VerticalLine, PositionOfInteriorLineBoxes); }
#if PLATFORM(MAC)
void addHighlightOverflow();
Modified: trunk/Source/WebCore/rendering/mathml/RenderMathMLFraction.cpp (106899 => 106900)
--- trunk/Source/WebCore/rendering/mathml/RenderMathMLFraction.cpp 2012-02-07 04:16:50 UTC (rev 106899)
+++ trunk/Source/WebCore/rendering/mathml/RenderMathMLFraction.cpp 2012-02-07 04:26:17 UTC (rev 106900)
@@ -165,7 +165,7 @@
info.context->drawLine(adjustedPaintOffset, IntPoint(adjustedPaintOffset.x() + offsetWidth(), adjustedPaintOffset.y()));
}
-int RenderMathMLFraction::baselinePosition(FontBaseline, bool firstLine, LineDirectionMode lineDirection, LinePositionMode linePositionMode) const
+LayoutUnit RenderMathMLFraction::baselinePosition(FontBaseline, bool firstLine, LineDirectionMode lineDirection, LinePositionMode linePositionMode) const
{
if (firstChild() && firstChild()->isRenderMathMLBlock()) {
RenderMathMLBlock* numerator = toRenderMathMLBlock(firstChild());
Modified: trunk/Source/WebCore/rendering/mathml/RenderMathMLFraction.h (106899 => 106900)
--- trunk/Source/WebCore/rendering/mathml/RenderMathMLFraction.h 2012-02-07 04:16:50 UTC (rev 106899)
+++ trunk/Source/WebCore/rendering/mathml/RenderMathMLFraction.h 2012-02-07 04:26:17 UTC (rev 106900)
@@ -38,7 +38,7 @@
RenderMathMLFraction(Element* fraction);
virtual void addChild(RenderObject* child, RenderObject* beforeChild = 0);
virtual void updateFromElement();
- virtual int baselinePosition(FontBaseline, bool firstLine, LineDirectionMode, LinePositionMode = PositionOnContainingLine) const;
+ virtual LayoutUnit baselinePosition(FontBaseline, bool firstLine, LineDirectionMode, LinePositionMode = PositionOnContainingLine) const;
virtual void paint(PaintInfo&, const LayoutPoint&);
protected:
virtual void layout();
Modified: trunk/Source/WebCore/rendering/mathml/RenderMathMLOperator.cpp (106899 => 106900)
--- trunk/Source/WebCore/rendering/mathml/RenderMathMLOperator.cpp 2012-02-07 04:16:50 UTC (rev 106899)
+++ trunk/Source/WebCore/rendering/mathml/RenderMathMLOperator.cpp 2012-02-07 04:26:17 UTC (rev 106900)
@@ -334,7 +334,7 @@
return container;
}
-int RenderMathMLOperator::baselinePosition(FontBaseline, bool firstLine, LineDirectionMode lineDirection, LinePositionMode linePositionMode) const
+LayoutUnit RenderMathMLOperator::baselinePosition(FontBaseline, bool firstLine, LineDirectionMode lineDirection, LinePositionMode linePositionMode) const
{
if (m_isStacked)
return m_stretchHeight * 2 / 3 - (m_stretchHeight - static_cast<int>(m_stretchHeight / gOperatorExpansion)) / 2;
Modified: trunk/Source/WebCore/rendering/mathml/RenderMathMLOperator.h (106899 => 106900)
--- trunk/Source/WebCore/rendering/mathml/RenderMathMLOperator.h 2012-02-07 04:16:50 UTC (rev 106899)
+++ trunk/Source/WebCore/rendering/mathml/RenderMathMLOperator.h 2012-02-07 04:26:17 UTC (rev 106900)
@@ -41,7 +41,7 @@
virtual void stretchToHeight(int pixelHeight);
virtual void updateFromElement();
virtual bool isChildAllowed(RenderObject*, RenderStyle*) const;
- virtual int baselinePosition(FontBaseline, bool firstLine, LineDirectionMode, LinePositionMode = PositionOnContainingLine) const;
+ virtual LayoutUnit baselinePosition(FontBaseline, bool firstLine, LineDirectionMode, LinePositionMode = PositionOnContainingLine) const;
protected:
virtual void layout();
Modified: trunk/Source/WebCore/rendering/mathml/RenderMathMLRow.cpp (106899 => 106900)
--- trunk/Source/WebCore/rendering/mathml/RenderMathMLRow.cpp 2012-02-07 04:16:50 UTC (rev 106899)
+++ trunk/Source/WebCore/rendering/mathml/RenderMathMLRow.cpp 2012-02-07 04:26:17 UTC (rev 106900)
@@ -119,7 +119,7 @@
}
-int RenderMathMLRow::baselinePosition(FontBaseline, bool firstLine, LineDirectionMode direction, LinePositionMode linePositionMode) const
+LayoutUnit RenderMathMLRow::baselinePosition(FontBaseline, bool firstLine, LineDirectionMode direction, LinePositionMode linePositionMode) const
{
if (firstChild() && firstChild()->isRenderMathMLBlock()) {
RenderMathMLBlock* block = toRenderMathMLBlock(firstChild());
Modified: trunk/Source/WebCore/rendering/mathml/RenderMathMLRow.h (106899 => 106900)
--- trunk/Source/WebCore/rendering/mathml/RenderMathMLRow.h 2012-02-07 04:16:50 UTC (rev 106899)
+++ trunk/Source/WebCore/rendering/mathml/RenderMathMLRow.h 2012-02-07 04:26:17 UTC (rev 106900)
@@ -37,7 +37,7 @@
RenderMathMLRow(Node* container);
virtual bool isRenderMathMLRow() const { return true; }
virtual int nonOperatorHeight() const;
- virtual int baselinePosition(FontBaseline, bool firstLine, LineDirectionMode, LinePositionMode = PositionOnContainingLine) const;
+ virtual LayoutUnit baselinePosition(FontBaseline, bool firstLine, LineDirectionMode, LinePositionMode = PositionOnContainingLine) const;
virtual void stretchToHeight(int) {}
protected:
virtual void layout();
Modified: trunk/Source/WebCore/rendering/mathml/RenderMathMLSubSup.cpp (106899 => 106900)
--- trunk/Source/WebCore/rendering/mathml/RenderMathMLSubSup.cpp 2012-02-07 04:16:50 UTC (rev 106899)
+++ trunk/Source/WebCore/rendering/mathml/RenderMathMLSubSup.cpp 2012-02-07 04:26:17 UTC (rev 106900)
@@ -181,13 +181,13 @@
}
}
-int RenderMathMLSubSup::baselinePosition(FontBaseline, bool firstLine, LineDirectionMode direction, LinePositionMode linePositionMode) const
+LayoutUnit RenderMathMLSubSup::baselinePosition(FontBaseline, bool firstLine, LineDirectionMode direction, LinePositionMode linePositionMode) const
{
RenderObject* base = firstChild();
if (!base)
return offsetHeight();
- int baseline = offsetHeight();
+ LayoutUnit baseline = offsetHeight();
if (!base || !base->isBoxModelObject())
return baseline;
Modified: trunk/Source/WebCore/rendering/mathml/RenderMathMLSubSup.h (106899 => 106900)
--- trunk/Source/WebCore/rendering/mathml/RenderMathMLSubSup.h 2012-02-07 04:16:50 UTC (rev 106899)
+++ trunk/Source/WebCore/rendering/mathml/RenderMathMLSubSup.h 2012-02-07 04:26:17 UTC (rev 106900)
@@ -41,7 +41,7 @@
virtual bool hasBase() const { return true; }
virtual int nonOperatorHeight() const;
virtual void stretchToHeight(int pixelHeight);
- virtual int baselinePosition(FontBaseline, bool firstLine, LineDirectionMode, LinePositionMode = PositionOnContainingLine) const;
+ virtual LayoutUnit baselinePosition(FontBaseline, bool firstLine, LineDirectionMode, LinePositionMode = PositionOnContainingLine) const;
protected:
virtual void layout();
Modified: trunk/Source/WebCore/rendering/mathml/RenderMathMLUnderOver.cpp (106899 => 106900)
--- trunk/Source/WebCore/rendering/mathml/RenderMathMLUnderOver.cpp 2012-02-07 04:16:50 UTC (rev 106899)
+++ trunk/Source/WebCore/rendering/mathml/RenderMathMLUnderOver.cpp 2012-02-07 04:26:17 UTC (rev 106900)
@@ -244,13 +244,13 @@
RenderBlock::layout();
}
-int RenderMathMLUnderOver::baselinePosition(FontBaseline, bool firstLine, LineDirectionMode direction, LinePositionMode linePositionMode) const
+LayoutUnit RenderMathMLUnderOver::baselinePosition(FontBaseline, bool firstLine, LineDirectionMode direction, LinePositionMode linePositionMode) const
{
RenderObject* current = firstChild();
if (!current || linePositionMode == PositionOfInteriorLineBoxes)
return RenderBlock::baselinePosition(AlphabeticBaseline, firstLine, direction, linePositionMode);
- int baseline = 0;
+ LayoutUnit baseline = 0;
switch (m_kind) {
case UnderOver:
case Over:
Modified: trunk/Source/WebCore/rendering/mathml/RenderMathMLUnderOver.h (106899 => 106900)
--- trunk/Source/WebCore/rendering/mathml/RenderMathMLUnderOver.h 2012-02-07 04:16:50 UTC (rev 106899)
+++ trunk/Source/WebCore/rendering/mathml/RenderMathMLUnderOver.h 2012-02-07 04:26:17 UTC (rev 106900)
@@ -40,7 +40,7 @@
virtual void layout();
virtual bool hasBase() const { return true; }
virtual int nonOperatorHeight() const;
- virtual int baselinePosition(FontBaseline, bool firstLine, LineDirectionMode, LinePositionMode = PositionOnContainingLine) const;
+ virtual LayoutUnit baselinePosition(FontBaseline, bool firstLine, LineDirectionMode, LinePositionMode = PositionOnContainingLine) const;
virtual void stretchToHeight(int pixelHeight);
private:
virtual const char* renderName() const { return "RenderMathMLUnderOver"; }