Bug 14777 - Give inline background image painting a rhyme and reason to how it works. Implement CSS3 proposal (-moz-)background-inline-policy.
r+sr=roc+moz git-svn-id: svn://10.0.0.236/trunk@136499 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
@@ -168,7 +168,9 @@ nsCSSColor::nsCSSColor(const nsCSSColor& aCopy)
|
||||
mBackPositionX(aCopy.mBackPositionX),
|
||||
mBackPositionY(aCopy.mBackPositionY),
|
||||
mBackClip(aCopy.mBackClip),
|
||||
mBackOrigin(aCopy.mBackOrigin)
|
||||
mBackOrigin(aCopy.mBackOrigin),
|
||||
mBackInlinePolicy(aCopy.mBackInlinePolicy)
|
||||
|
||||
{
|
||||
MOZ_COUNT_CTOR(nsCSSColor);
|
||||
}
|
||||
@@ -199,6 +201,7 @@ void nsCSSColor::List(FILE* out, PRInt32 aIndent) const
|
||||
mBackPositionY.AppendToString(buffer, eCSSProperty_background_y_position);
|
||||
mBackClip.AppendToString(buffer, eCSSProperty__moz_background_clip);
|
||||
mBackOrigin.AppendToString(buffer, eCSSProperty__moz_background_origin);
|
||||
mBackInlinePolicy.AppendToString(buffer, eCSSProperty__moz_background_inline_policy);
|
||||
fputs(NS_LossyConvertUCS2toASCII(buffer).get(), out);
|
||||
}
|
||||
#endif
|
||||
@@ -1476,7 +1479,8 @@ nsCSSDeclaration::AppendValue(nsCSSProperty aProperty, const nsCSSValue& aValue)
|
||||
case eCSSProperty_background_x_position:
|
||||
case eCSSProperty_background_y_position:
|
||||
case eCSSProperty__moz_background_clip:
|
||||
case eCSSProperty__moz_background_origin: {
|
||||
case eCSSProperty__moz_background_origin:
|
||||
case eCSSProperty__moz_background_inline_policy: {
|
||||
CSS_ENSURE(Color) {
|
||||
switch (aProperty) {
|
||||
case eCSSProperty_color: theColor->mColor = aValue; break;
|
||||
@@ -1488,6 +1492,7 @@ nsCSSDeclaration::AppendValue(nsCSSProperty aProperty, const nsCSSValue& aValue)
|
||||
case eCSSProperty_background_y_position: theColor->mBackPositionY = aValue; break;
|
||||
case eCSSProperty__moz_background_clip: theColor->mBackClip = aValue; break;
|
||||
case eCSSProperty__moz_background_origin: theColor->mBackOrigin = aValue; break;
|
||||
case eCSSProperty__moz_background_inline_policy: theColor->mBackInlinePolicy = aValue; break;
|
||||
CSS_BOGUS_DEFAULT; // make compiler happy
|
||||
}
|
||||
}
|
||||
@@ -2319,7 +2324,8 @@ nsCSSDeclaration::SetValueImportant(nsCSSProperty aProperty)
|
||||
case eCSSProperty_background_x_position:
|
||||
case eCSSProperty_background_y_position:
|
||||
case eCSSProperty__moz_background_clip:
|
||||
case eCSSProperty__moz_background_origin: {
|
||||
case eCSSProperty__moz_background_origin:
|
||||
case eCSSProperty__moz_background_inline_policy: {
|
||||
CSS_VARONSTACK_GET(Color);
|
||||
if (nsnull != theColor) {
|
||||
CSS_ENSURE_IMPORTANT(Color) {
|
||||
@@ -2333,6 +2339,7 @@ nsCSSDeclaration::SetValueImportant(nsCSSProperty aProperty)
|
||||
CSS_CASE_IMPORTANT(eCSSProperty_background_y_position, Color, mBackPositionY);
|
||||
CSS_CASE_IMPORTANT(eCSSProperty__moz_background_clip, Color, mBackClip);
|
||||
CSS_CASE_IMPORTANT(eCSSProperty__moz_background_origin, Color, mBackOrigin);
|
||||
CSS_CASE_IMPORTANT(eCSSProperty__moz_background_inline_policy, Color, mBackInlinePolicy);
|
||||
CSS_BOGUS_DEFAULT; // make compiler happy
|
||||
}
|
||||
}
|
||||
@@ -3285,7 +3292,8 @@ nsCSSDeclaration::RemoveProperty(nsCSSProperty aProperty)
|
||||
case eCSSProperty_background_x_position:
|
||||
case eCSSProperty_background_y_position:
|
||||
case eCSSProperty__moz_background_clip:
|
||||
case eCSSProperty__moz_background_origin: {
|
||||
case eCSSProperty__moz_background_origin:
|
||||
case eCSSProperty__moz_background_inline_policy: {
|
||||
CSS_CHECK(Color) {
|
||||
switch (aProperty) {
|
||||
case eCSSProperty_color: theColor->mColor.Reset(); break;
|
||||
@@ -3297,6 +3305,7 @@ nsCSSDeclaration::RemoveProperty(nsCSSProperty aProperty)
|
||||
case eCSSProperty_background_y_position: theColor->mBackPositionY.Reset(); break;
|
||||
case eCSSProperty__moz_background_clip: theColor->mBackClip.Reset(); break;
|
||||
case eCSSProperty__moz_background_origin: theColor->mBackOrigin.Reset(); break;
|
||||
case eCSSProperty__moz_background_inline_policy: theColor->mBackInlinePolicy.Reset(); break;
|
||||
CSS_BOGUS_DEFAULT; // make compiler happy
|
||||
}
|
||||
}
|
||||
@@ -4117,7 +4126,8 @@ nsCSSDeclaration::GetValue(nsCSSProperty aProperty, nsCSSValue& aValue)
|
||||
case eCSSProperty_background_x_position:
|
||||
case eCSSProperty_background_y_position:
|
||||
case eCSSProperty__moz_background_clip:
|
||||
case eCSSProperty__moz_background_origin: {
|
||||
case eCSSProperty__moz_background_origin:
|
||||
case eCSSProperty__moz_background_inline_policy: {
|
||||
CSS_VARONSTACK_GET(Color);
|
||||
if (nsnull != theColor) {
|
||||
switch (aProperty) {
|
||||
@@ -4130,6 +4140,7 @@ nsCSSDeclaration::GetValue(nsCSSProperty aProperty, nsCSSValue& aValue)
|
||||
case eCSSProperty_background_y_position: aValue = theColor->mBackPositionY; break;
|
||||
case eCSSProperty__moz_background_clip: aValue = theColor->mBackClip; break;
|
||||
case eCSSProperty__moz_background_origin: aValue = theColor->mBackOrigin; break;
|
||||
case eCSSProperty__moz_background_inline_policy: aValue = theColor->mBackInlinePolicy; break;
|
||||
CSS_BOGUS_DEFAULT; // make compiler happy
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user