зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1273705 - Add convenience methods to check if a margin is 'auto' on either side in an axis. r=dholbert
This commit is contained in:
Родитель
7137368692
Коммит
b4594808f5
|
@ -1856,6 +1856,18 @@ inline nsStyleUnit nsStyleSides::GetBEndUnit(mozilla::WritingMode aWM) const
|
|||
return GetUnit(aWM, mozilla::eLogicalSideBEnd);
|
||||
}
|
||||
|
||||
inline bool nsStyleSides::HasBlockAxisAuto(mozilla::WritingMode aWM) const
|
||||
{
|
||||
return GetBStartUnit(aWM) == eStyleUnit_Auto ||
|
||||
GetBEndUnit(aWM) == eStyleUnit_Auto;
|
||||
}
|
||||
|
||||
inline bool nsStyleSides::HasInlineAxisAuto(mozilla::WritingMode aWM) const
|
||||
{
|
||||
return GetIStartUnit(aWM) == eStyleUnit_Auto ||
|
||||
GetIEndUnit(aWM) == eStyleUnit_Auto;
|
||||
}
|
||||
|
||||
inline nsStyleCoord nsStyleSides::Get(mozilla::WritingMode aWM,
|
||||
mozilla::LogicalSide aSide) const
|
||||
{
|
||||
|
@ -2001,4 +2013,15 @@ nsStyleDisplay::PhysicalBreakType(mozilla::WritingMode aWM) const
|
|||
return mBreakType;
|
||||
}
|
||||
|
||||
inline bool
|
||||
nsStyleMargin::HasBlockAxisAuto(mozilla::WritingMode aWM) const
|
||||
{
|
||||
return mMargin.HasBlockAxisAuto(aWM);
|
||||
}
|
||||
inline bool
|
||||
nsStyleMargin::HasInlineAxisAuto(mozilla::WritingMode aWM) const
|
||||
{
|
||||
return mMargin.HasInlineAxisAuto(aWM);
|
||||
}
|
||||
|
||||
#endif // WritingModes_h_
|
||||
|
|
|
@ -295,6 +295,10 @@ public:
|
|||
inline nsStyleUnit GetIEndUnit(mozilla::WritingMode aWritingMode) const;
|
||||
inline nsStyleUnit GetBEndUnit(mozilla::WritingMode aWritingMode) const;
|
||||
|
||||
// Return true if either the start or end side in the axis is 'auto'.
|
||||
inline bool HasBlockAxisAuto(mozilla::WritingMode aWritingMode) const;
|
||||
inline bool HasInlineAxisAuto(mozilla::WritingMode aWritingMode) const;
|
||||
|
||||
inline nsStyleCoord Get(mozilla::WritingMode aWritingMode,
|
||||
mozilla::LogicalSide aSide) const;
|
||||
inline nsStyleCoord GetIStart(mozilla::WritingMode aWritingMode) const;
|
||||
|
|
|
@ -822,8 +822,6 @@ struct MOZ_NEEDS_MEMMOVABLE_MEMBERS nsStyleMargin
|
|||
return nsChangeHint(0);
|
||||
}
|
||||
|
||||
nsStyleSides mMargin; // [reset] coord, percent, calc, auto
|
||||
|
||||
bool GetMargin(nsMargin& aMargin) const
|
||||
{
|
||||
if (mMargin.ConvertsToLength()) {
|
||||
|
@ -841,6 +839,13 @@ struct MOZ_NEEDS_MEMMOVABLE_MEMBERS nsStyleMargin
|
|||
aMargin.Side(side) = mMargin.ToLength(side);
|
||||
}
|
||||
}
|
||||
|
||||
// Return true if either the start or end side in the axis is 'auto'.
|
||||
// (defined in WritingModes.h since we need the full WritingMode type)
|
||||
inline bool HasBlockAxisAuto(mozilla::WritingMode aWM) const;
|
||||
inline bool HasInlineAxisAuto(mozilla::WritingMode aWM) const;
|
||||
|
||||
nsStyleSides mMargin; // [reset] coord, percent, calc, auto
|
||||
};
|
||||
|
||||
struct MOZ_NEEDS_MEMMOVABLE_MEMBERS nsStylePadding
|
||||
|
|
Загрузка…
Ссылка в новой задаче