Bug 1732759 - Unprefix -moz-fit-content. r=dholbert

I'm not aware of any reason we shouldn't do this, as it is interoperable
with other browsers, and it causes compat issues from sites that forget
to use the prefixed version.

Note this removes some #[parse(aliases)]. These only affect devtools
autocomplete behavior, and we avoid autocompleting -moz-prefixed
keywords when possible, so even though it's a slight behavior change,
it's worth it.

Differential Revision: https://phabricator.services.mozilla.com/D126718
This commit is contained in:
Emilio Cobos Álvarez 2021-09-28 11:44:33 +00:00
Родитель 7fe40d2b21
Коммит e5a8824eaf
10 изменённых файлов: 19 добавлений и 21 удалений

Просмотреть файл

@ -4478,7 +4478,7 @@ static bool GetIntrinsicCoord(nsIFrame::ExtremumLength aStyle,
return false;
}
if (aStyle == nsIFrame::ExtremumLength::MozFitContent) {
if (aStyle == nsIFrame::ExtremumLength::FitContent) {
switch (aProperty) {
case nsIFrame::SizeProperty::Size:
// handle like 'width: auto'

Просмотреть файл

@ -2338,7 +2338,7 @@ template <typename SizeOrMaxSize>
static inline bool IsIntrinsicKeyword(const SizeOrMaxSize& aSize) {
// All keywords other than auto/none/-moz-available depend on intrinsic sizes.
return aSize.IsMaxContent() || aSize.IsMinContent() ||
aSize.IsMozFitContent() || aSize.IsFitContentFunction();
aSize.IsFitContent() || aSize.IsFitContentFunction();
}
bool nsIFrame::CanBeDynamicReflowRoot() const {
@ -6608,7 +6608,7 @@ nsIFrame::ISizeComputationResult nsIFrame::ComputeISizeValue(
? AspectRatioUsage::ToComputeISize
: AspectRatioUsage::None};
case ExtremumLength::FitContentFunction:
case ExtremumLength::MozFitContent: {
case ExtremumLength::FitContent: {
nscoord pref = NS_UNCONSTRAINEDSIZE;
nscoord min = 0;
if (intrinsicSizeFromAspectRatio) {

Просмотреть файл

@ -3076,7 +3076,7 @@ class nsIFrame : public nsQueryFrame {
// intrinsic-sizing keywords.
bool HasIntrinsicKeywordForBSize() const {
const auto& bSize = StylePosition()->BSize(GetWritingMode());
return bSize.IsMozFitContent() || bSize.IsMinContent() ||
return bSize.IsFitContent() || bSize.IsMinContent() ||
bSize.IsMaxContent() || bSize.IsFitContentFunction();
}
/**
@ -4778,7 +4778,7 @@ class nsIFrame : public nsQueryFrame {
MinContent,
MaxContent,
MozAvailable,
MozFitContent,
FitContent,
FitContentFunction,
};
@ -4791,8 +4791,8 @@ class nsIFrame : public nsQueryFrame {
return mozilla::Some(ExtremumLength::MaxContent);
case SizeOrMaxSize::Tag::MozAvailable:
return mozilla::Some(ExtremumLength::MozAvailable);
case SizeOrMaxSize::Tag::MozFitContent:
return mozilla::Some(ExtremumLength::MozFitContent);
case SizeOrMaxSize::Tag::FitContent:
return mozilla::Some(ExtremumLength::FitContent);
case SizeOrMaxSize::Tag::FitContentFunction:
return mozilla::Some(ExtremumLength::FitContentFunction);
default:

Просмотреть файл

@ -213,7 +213,7 @@ static bool DependsOnIntrinsicSize(const SizeOrMaxSize& aMinOrMaxSize) {
switch (*length) {
case nsIFrame::ExtremumLength::MinContent:
case nsIFrame::ExtremumLength::MaxContent:
case nsIFrame::ExtremumLength::MozFitContent:
case nsIFrame::ExtremumLength::FitContent:
case nsIFrame::ExtremumLength::FitContentFunction:
return true;
case nsIFrame::ExtremumLength::MozAvailable:

Просмотреть файл

@ -2252,8 +2252,8 @@ static void SetValueToExtremumLength(nsROCSSPrimitiveValue* aValue,
return aValue->SetString("min-content");
case nsIFrame::ExtremumLength::MozAvailable:
return aValue->SetString("-moz-available");
case nsIFrame::ExtremumLength::MozFitContent:
return aValue->SetString("-moz-fit-content");
case nsIFrame::ExtremumLength::FitContent:
return aValue->SetString("fit-content");
case nsIFrame::ExtremumLength::FitContentFunction:
MOZ_ASSERT_UNREACHABLE("fit-content() should be handled separately");
}
@ -2269,7 +2269,7 @@ void nsComputedDOMStyle::SetValueFromFitContentFunction(
nsAutoString fitContentStr;
fitContentStr.AppendLiteral("fit-content(");
fitContentStr.Append(argumentStr);
fitContentStr.Append(char16_t(')'));
fitContentStr.Append(u')');
aValue->SetString(fitContentStr);
}

Просмотреть файл

@ -841,7 +841,7 @@ struct MOZ_NEEDS_MEMMOVABLE_MEMBERS nsStylePosition {
if (aCoord.IsLengthPercentage()) {
return aCoord.AsLengthPercentage().HasPercent();
}
return aCoord.IsMozFitContent() || aCoord.IsMozAvailable();
return aCoord.IsFitContent() || aCoord.IsMozAvailable();
}
template <typename SizeOrMaxSize>

Просмотреть файл

@ -150,7 +150,7 @@ static CellISizeInfo GetISizeInfo(gfxContext* aRenderingContext,
prefCoord = minCoord;
break;
case StyleSize::Tag::MozAvailable:
case StyleSize::Tag::MozFitContent:
case StyleSize::Tag::FitContent:
case StyleSize::Tag::FitContentFunction:
// TODO: Bug 1708310: Make sure fit-content() work properly in table.
case StyleSize::Tag::Auto:
@ -163,7 +163,7 @@ static CellISizeInfo GetISizeInfo(gfxContext* aRenderingContext,
if (nsIFrame::ToExtremumLength(maxISize)) {
if (!aIsCell || maxISize.IsMozAvailable()) {
maxISize = StyleMaxSize::None();
} else if (maxISize.IsMozFitContent() || maxISize.IsFitContentFunction()) {
} else if (maxISize.IsFitContent() || maxISize.IsFitContentFunction()) {
// TODO: Bug 1708310: Make sure fit-content() work properly in table.
// for 'max-inline-size', '-moz-fit-content' is like 'max-content'
maxISize = StyleMaxSize::MaxContent();
@ -190,7 +190,7 @@ static CellISizeInfo GetISizeInfo(gfxContext* aRenderingContext,
if (nsIFrame::ToExtremumLength(maxISize)) {
if (!aIsCell || minISize.IsMozAvailable()) {
minISize = StyleSize::LengthPercentage(LengthPercentage::Zero());
} else if (minISize.IsMozFitContent() || minISize.IsFitContentFunction()) {
} else if (minISize.IsFitContent() || minISize.IsFitContentFunction()) {
// TODO: Bug 1708310: Make sure fit-content() work properly in table.
// for 'min-inline-size', '-moz-fit-content' is like 'min-content'
minISize = StyleSize::MinContent();

Просмотреть файл

@ -189,7 +189,7 @@ impl Size {
#[cfg(feature = "gecko")]
GenericSize::MinContent |
GenericSize::MaxContent |
GenericSize::MozFitContent |
GenericSize::FitContent |
GenericSize::MozAvailable |
GenericSize::FitContentFunction(_) => false
}

Просмотреть файл

@ -155,7 +155,7 @@ pub enum GenericSize<LengthPercent> {
#[animation(error)]
MinContent,
#[animation(error)]
MozFitContent,
FitContent,
#[animation(error)]
MozAvailable,
#[animation(error)]
@ -202,13 +202,11 @@ pub enum GenericMaxSize<LengthPercent> {
LengthPercentage(LengthPercent),
None,
#[animation(error)]
#[parse(aliases = "-moz-max-content")]
MaxContent,
#[animation(error)]
#[parse(aliases = "-moz-min-content")]
MinContent,
#[animation(error)]
MozFitContent,
FitContent,
#[animation(error)]
MozAvailable,
#[animation(error)]

Просмотреть файл

@ -1226,7 +1226,7 @@ macro_rules! parse_size_non_length {
#[cfg(feature = "gecko")]
"max-content" | "-moz-max-content" => $size::MaxContent,
#[cfg(feature = "gecko")]
"-moz-fit-content" => $size::MozFitContent,
"fit-content" | "-moz-fit-content" => $size::FitContent,
#[cfg(feature = "gecko")]
"-moz-available" => $size::MozAvailable,
$auto_or_none => $size::$auto_or_none_ident,