Bug 1398492: Remove the grid pref. r=mats

MozReview-Commit-ID: 6Qez8NE8oze
This commit is contained in:
Emilio Cobos Álvarez 2017-12-15 23:53:39 +01:00
Родитель 6a04994e12
Коммит dbb3111ff1
16 изменённых файлов: 580 добавлений и 732 удалений

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

@ -9859,78 +9859,6 @@ exports.PREFERENCES = [
"font-variation-settings", "font-variation-settings",
"layout.css.font-variations.enabled" "layout.css.font-variations.enabled"
], ],
[
"grid",
"layout.css.grid.enabled"
],
[
"grid-area",
"layout.css.grid.enabled"
],
[
"grid-auto-columns",
"layout.css.grid.enabled"
],
[
"grid-auto-flow",
"layout.css.grid.enabled"
],
[
"grid-auto-rows",
"layout.css.grid.enabled"
],
[
"grid-column",
"layout.css.grid.enabled"
],
[
"grid-column-end",
"layout.css.grid.enabled"
],
[
"grid-column-gap",
"layout.css.grid.enabled"
],
[
"grid-column-start",
"layout.css.grid.enabled"
],
[
"grid-gap",
"layout.css.grid.enabled"
],
[
"grid-row",
"layout.css.grid.enabled"
],
[
"grid-row-end",
"layout.css.grid.enabled"
],
[
"grid-row-gap",
"layout.css.grid.enabled"
],
[
"grid-row-start",
"layout.css.grid.enabled"
],
[
"grid-template",
"layout.css.grid.enabled"
],
[
"grid-template-areas",
"layout.css.grid.enabled"
],
[
"grid-template-columns",
"layout.css.grid.enabled"
],
[
"grid-template-rows",
"layout.css.grid.enabled"
],
[ [
"initial-letter", "initial-letter",
"layout.css.initial-letter.enabled" "layout.css.initial-letter.enabled"

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

@ -2,9 +2,6 @@
<html> <html>
<head> <head>
<meta charset="UTF-8"> <meta charset="UTF-8">
<!--
user_pref("layout.css.grid.enabled", true);
-->
<script> <script>
function boom() function boom()

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

@ -470,7 +470,7 @@ load 1127198-1.html
load 1140198.html load 1140198.html
load 1143535.html load 1143535.html
load 1153716.html load 1153716.html
pref(layout.css.grid.enabled,true) load 1156588.html load 1156588.html
load 1162813.xul load 1162813.xul
load 1163583.html load 1163583.html
load 1234622-1.html load 1234622-1.html

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

@ -160,7 +160,6 @@ using namespace mozilla::layers;
using namespace mozilla::layout; using namespace mozilla::layout;
using namespace mozilla::gfx; using namespace mozilla::gfx;
#define GRID_ENABLED_PREF_NAME "layout.css.grid.enabled"
#define WEBKIT_PREFIXES_ENABLED_PREF_NAME "layout.css.prefixes.webkit" #define WEBKIT_PREFIXES_ENABLED_PREF_NAME "layout.css.prefixes.webkit"
#define TEXT_ALIGN_UNSAFE_ENABLED_PREF_NAME "layout.css.text-align-unsafe-value.enabled" #define TEXT_ALIGN_UNSAFE_ENABLED_PREF_NAME "layout.css.text-align-unsafe-value.enabled"
#define FLOAT_LOGICAL_VALUES_ENABLED_PREF_NAME "layout.css.float-logical-values.enabled" #define FLOAT_LOGICAL_VALUES_ENABLED_PREF_NAME "layout.css.float-logical-values.enabled"
@ -214,51 +213,6 @@ static ContentMap& GetContentMap() {
return *sContentMap; return *sContentMap;
} }
// When the pref "layout.css.grid.enabled" changes, this function is invoked
// to let us update kDisplayKTable, to selectively disable or restore the
// entries for "grid" and "inline-grid" in that table.
static void
GridEnabledPrefChangeCallback(const char* aPrefName, void* aClosure)
{
MOZ_ASSERT(strncmp(aPrefName, GRID_ENABLED_PREF_NAME,
ArrayLength(GRID_ENABLED_PREF_NAME)) == 0,
"We only registered this callback for a single pref, so it "
"should only be called for that pref");
static int32_t sIndexOfGridInDisplayTable;
static int32_t sIndexOfInlineGridInDisplayTable;
static bool sAreGridKeywordIndicesInitialized; // initialized to false
bool isGridEnabled =
Preferences::GetBool(GRID_ENABLED_PREF_NAME, false);
if (!sAreGridKeywordIndicesInitialized) {
// First run: find the position of "grid" and "inline-grid" in
// kDisplayKTable.
sIndexOfGridInDisplayTable =
nsCSSProps::FindIndexOfKeyword(eCSSKeyword_grid,
nsCSSProps::kDisplayKTable);
MOZ_ASSERT(sIndexOfGridInDisplayTable >= 0,
"Couldn't find grid in kDisplayKTable");
sIndexOfInlineGridInDisplayTable =
nsCSSProps::FindIndexOfKeyword(eCSSKeyword_inline_grid,
nsCSSProps::kDisplayKTable);
MOZ_ASSERT(sIndexOfInlineGridInDisplayTable >= 0,
"Couldn't find inline-grid in kDisplayKTable");
sAreGridKeywordIndicesInitialized = true;
}
// OK -- now, stomp on or restore the "grid" entries in kDisplayKTable,
// depending on whether the grid pref is enabled vs. disabled.
if (sIndexOfGridInDisplayTable >= 0) {
nsCSSProps::kDisplayKTable[sIndexOfGridInDisplayTable].mKeyword =
isGridEnabled ? eCSSKeyword_grid : eCSSKeyword_UNKNOWN;
}
if (sIndexOfInlineGridInDisplayTable >= 0) {
nsCSSProps::kDisplayKTable[sIndexOfInlineGridInDisplayTable].mKeyword =
isGridEnabled ? eCSSKeyword_inline_grid : eCSSKeyword_UNKNOWN;
}
}
// When the pref "layout.css.prefixes.webkit" changes, this function is invoked // When the pref "layout.css.prefixes.webkit" changes, this function is invoked
// to let us update kDisplayKTable, to selectively disable or restore the // to let us update kDisplayKTable, to selectively disable or restore the
// entries for "-webkit-box" and "-webkit-inline-box" in that table. // entries for "-webkit-box" and "-webkit-inline-box" in that table.
@ -8159,8 +8113,6 @@ struct PrefCallbacks
PrefChangedFunc func; PrefChangedFunc func;
}; };
static const PrefCallbacks kPrefCallbacks[] = { static const PrefCallbacks kPrefCallbacks[] = {
{ GRID_ENABLED_PREF_NAME,
GridEnabledPrefChangeCallback },
{ WEBKIT_PREFIXES_ENABLED_PREF_NAME, { WEBKIT_PREFIXES_ENABLED_PREF_NAME,
WebkitPrefixEnabledPrefChangeCallback }, WebkitPrefixEnabledPrefChangeCallback },
{ TEXT_ALIGN_UNSAFE_ENABLED_PREF_NAME, { TEXT_ALIGN_UNSAFE_ENABLED_PREF_NAME,

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

@ -2,11 +2,6 @@
<html> <html>
<head> <head>
<script> <script>
/*
user_pref("layout.css.grid.enabled", true);
*/
function boom() function boom()
{ {
document.getElementById("r").appendChild(document.createTextNode("B")); document.getElementById("r").appendChild(document.createTextNode("B"));

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

@ -2,9 +2,6 @@
<html> <html>
<head> <head>
<meta charset="UTF-8"> <meta charset="UTF-8">
<!--
user_pref("layout.css.grid.enabled", true);
-->
<script> <script>
function boom() function boom()
{ {

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

@ -574,7 +574,7 @@ load 1001233.html
load 1001258-1.html load 1001258-1.html
load 1001994.html load 1001994.html
load 1003441.xul load 1003441.xul
pref(layout.css.grid.enabled,true) load 1015562.html load 1015562.html
asserts(1-2) load 1015563-1.html asserts(1-2) load 1015563-1.html
asserts(1-2) load 1015563-2.html asserts(1-2) load 1015563-2.html
asserts(11) asserts-if(stylo&&Android,274) load 1015844.html # bug 574889, bug 1374479 asserts(11) asserts-if(stylo&&Android,274) load 1015844.html # bug 574889, bug 1374479
@ -600,7 +600,7 @@ load 1146114.html
asserts(0-20) load 1153478.html # bug 1144852 asserts(0-20) load 1153478.html # bug 1144852
load 1153695.html load 1153695.html
load 1156222.html load 1156222.html
pref(layout.css.grid.enabled,true) load 1156257.html load 1156257.html
load 1157011.html load 1157011.html
load 1169420-1.html load 1169420-1.html
load 1169420-2.html load 1169420-2.html
@ -613,9 +613,9 @@ load 1223522.xhtml
load 1223568-1.html load 1223568-1.html
load 1223568-2.html load 1223568-2.html
load 1224230-1.html load 1224230-1.html
pref(layout.css.grid.enabled,true) load 1225118.html load 1225118.html
pref(layout.css.grid.enabled,true) load 1225376.html load 1225376.html
pref(layout.css.grid.enabled,true) load 1225592.html load 1225592.html
load 1229437-1.html load 1229437-1.html
load 1229437-2.html load 1229437-2.html
load details-containing-only-text.html load details-containing-only-text.html

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

@ -1851,7 +1851,7 @@ pref(layout.css.moz-document.content.enabled,false) == 1035091-2.html 1035091-re
== 1050493-1.html 1050493-1-ref.html == 1050493-1.html 1050493-1-ref.html
== 1050788-1.html about:blank == 1050788-1.html about:blank
== 1053035-1-flex.html 1053035-1-ref.html == 1053035-1-flex.html 1053035-1-ref.html
test-pref(layout.css.grid.enabled,true) == 1053035-1-grid.html 1053035-1-ref.html == 1053035-1-grid.html 1053035-1-ref.html
== 1059167-1.html 1059167-1-ref.html == 1059167-1.html 1059167-1-ref.html
== 1059498-1.html 1059498-1-ref.html == 1059498-1.html 1059498-1-ref.html
== 1059498-2.html 1059498-1-ref.html == 1059498-2.html 1059498-1-ref.html

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

@ -1,5 +1,3 @@
default-preferences pref(layout.css.grid.enabled,true)
fails == grid-whitespace-handling-1a.xhtml grid-whitespace-handling-1-ref.xhtml fails == grid-whitespace-handling-1a.xhtml grid-whitespace-handling-1-ref.xhtml
fails == grid-whitespace-handling-1b.xhtml grid-whitespace-handling-1-ref.xhtml fails == grid-whitespace-handling-1b.xhtml grid-whitespace-handling-1-ref.xhtml
== grid-whitespace-handling-2.xhtml grid-whitespace-handling-2-ref.xhtml == grid-whitespace-handling-2.xhtml grid-whitespace-handling-2-ref.xhtml

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

@ -1,6 +1,6 @@
fuzzy-if(OSX,55,4) == numbering-1.html numbering-1-ref.html fuzzy-if(OSX,55,4) == numbering-1.html numbering-1-ref.html
== numbering-2.html numbering-2-ref.html == numbering-2.html numbering-2-ref.html
pref(layout.css.grid.enabled,true) fuzzy-if(OSX,8,1) == numbering-3.html numbering-3-ref.html fuzzy-if(OSX,8,1) == numbering-3.html numbering-3-ref.html
fuzzy-if(OSX,72,2) == numbering-4.html numbering-4-ref.html fuzzy-if(OSX,72,2) == numbering-4.html numbering-4-ref.html
== numbering-5.html numbering-5-ref.html == numbering-5.html numbering-5-ref.html
== ol-reversed-1a.html ol-reversed-1-ref.html == ol-reversed-1a.html ol-reversed-1-ref.html

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

@ -2145,21 +2145,20 @@ CSS_PROP_SHORTHAND(
grid, grid,
Grid, Grid,
CSS_PROPERTY_PARSE_FUNCTION, CSS_PROPERTY_PARSE_FUNCTION,
"layout.css.grid.enabled") "")
CSS_PROP_SHORTHAND( CSS_PROP_SHORTHAND(
grid-area, grid-area,
grid_area, grid_area,
GridArea, GridArea,
CSS_PROPERTY_PARSE_FUNCTION, CSS_PROPERTY_PARSE_FUNCTION,
"layout.css.grid.enabled") "")
CSS_PROP_POSITION( CSS_PROP_POSITION(
grid-auto-columns, grid-auto-columns,
grid_auto_columns, grid_auto_columns,
GridAutoColumns, GridAutoColumns,
CSS_PROPERTY_PARSE_FUNCTION | CSS_PROPERTY_PARSE_FUNCTION |
CSS_PROPERTY_STORES_CALC | CSS_PROPERTY_STORES_CALC,
CSS_PROPERTY_ENABLED_IN_UA_SHEETS, "",
"layout.css.grid.enabled",
0, 0,
kGridTrackBreadthKTable, kGridTrackBreadthKTable,
CSS_PROP_NO_OFFSET, CSS_PROP_NO_OFFSET,
@ -2168,9 +2167,8 @@ CSS_PROP_POSITION(
grid-auto-flow, grid-auto-flow,
grid_auto_flow, grid_auto_flow,
GridAutoFlow, GridAutoFlow,
CSS_PROPERTY_PARSE_FUNCTION | CSS_PROPERTY_PARSE_FUNCTION,
CSS_PROPERTY_ENABLED_IN_UA_SHEETS, "",
"layout.css.grid.enabled",
0, 0,
kGridAutoFlowKTable, kGridAutoFlowKTable,
CSS_PROP_NO_OFFSET, CSS_PROP_NO_OFFSET,
@ -2180,9 +2178,8 @@ CSS_PROP_POSITION(
grid_auto_rows, grid_auto_rows,
GridAutoRows, GridAutoRows,
CSS_PROPERTY_PARSE_FUNCTION | CSS_PROPERTY_PARSE_FUNCTION |
CSS_PROPERTY_STORES_CALC | CSS_PROPERTY_STORES_CALC,
CSS_PROPERTY_ENABLED_IN_UA_SHEETS, "",
"layout.css.grid.enabled",
0, 0,
kGridTrackBreadthKTable, kGridTrackBreadthKTable,
CSS_PROP_NO_OFFSET, CSS_PROP_NO_OFFSET,
@ -2192,13 +2189,13 @@ CSS_PROP_SHORTHAND(
grid_column, grid_column,
GridColumn, GridColumn,
CSS_PROPERTY_PARSE_FUNCTION, CSS_PROPERTY_PARSE_FUNCTION,
"layout.css.grid.enabled") "")
CSS_PROP_POSITION( CSS_PROP_POSITION(
grid-column-end, grid-column-end,
grid_column_end, grid_column_end,
GridColumnEnd, GridColumnEnd,
CSS_PROPERTY_PARSE_FUNCTION, CSS_PROPERTY_PARSE_FUNCTION,
"layout.css.grid.enabled", "",
0, 0,
nullptr, nullptr,
CSS_PROP_NO_OFFSET, CSS_PROP_NO_OFFSET,
@ -2208,9 +2205,8 @@ CSS_PROP_POSITION(
grid_column_gap, grid_column_gap,
GridColumnGap, GridColumnGap,
CSS_PROPERTY_PARSE_VALUE | CSS_PROPERTY_PARSE_VALUE |
CSS_PROPERTY_VALUE_NONNEGATIVE | CSS_PROPERTY_VALUE_NONNEGATIVE,
CSS_PROPERTY_ENABLED_IN_UA_SHEETS, "",
"layout.css.grid.enabled",
VARIANT_HLP | VARIANT_CALC, VARIANT_HLP | VARIANT_CALC,
nullptr, nullptr,
offsetof(nsStylePosition, mGridColumnGap), offsetof(nsStylePosition, mGridColumnGap),
@ -2220,7 +2216,7 @@ CSS_PROP_POSITION(
grid_column_start, grid_column_start,
GridColumnStart, GridColumnStart,
CSS_PROPERTY_PARSE_FUNCTION, CSS_PROPERTY_PARSE_FUNCTION,
"layout.css.grid.enabled", "",
0, 0,
nullptr, nullptr,
CSS_PROP_NO_OFFSET, CSS_PROP_NO_OFFSET,
@ -2230,19 +2226,19 @@ CSS_PROP_SHORTHAND(
grid_gap, grid_gap,
GridGap, GridGap,
CSS_PROPERTY_PARSE_FUNCTION, CSS_PROPERTY_PARSE_FUNCTION,
"layout.css.grid.enabled") "")
CSS_PROP_SHORTHAND( CSS_PROP_SHORTHAND(
grid-row, grid-row,
grid_row, grid_row,
GridRow, GridRow,
CSS_PROPERTY_PARSE_FUNCTION, CSS_PROPERTY_PARSE_FUNCTION,
"layout.css.grid.enabled") "")
CSS_PROP_POSITION( CSS_PROP_POSITION(
grid-row-end, grid-row-end,
grid_row_end, grid_row_end,
GridRowEnd, GridRowEnd,
CSS_PROPERTY_PARSE_FUNCTION, CSS_PROPERTY_PARSE_FUNCTION,
"layout.css.grid.enabled", "",
0, 0,
nullptr, nullptr,
CSS_PROP_NO_OFFSET, CSS_PROP_NO_OFFSET,
@ -2252,9 +2248,8 @@ CSS_PROP_POSITION(
grid_row_gap, grid_row_gap,
GridRowGap, GridRowGap,
CSS_PROPERTY_PARSE_VALUE | CSS_PROPERTY_PARSE_VALUE |
CSS_PROPERTY_VALUE_NONNEGATIVE | CSS_PROPERTY_VALUE_NONNEGATIVE,
CSS_PROPERTY_ENABLED_IN_UA_SHEETS, "",
"layout.css.grid.enabled",
VARIANT_HLP | VARIANT_CALC, VARIANT_HLP | VARIANT_CALC,
nullptr, nullptr,
offsetof(nsStylePosition, mGridRowGap), offsetof(nsStylePosition, mGridRowGap),
@ -2264,7 +2259,7 @@ CSS_PROP_POSITION(
grid_row_start, grid_row_start,
GridRowStart, GridRowStart,
CSS_PROPERTY_PARSE_FUNCTION, CSS_PROPERTY_PARSE_FUNCTION,
"layout.css.grid.enabled", "",
0, 0,
nullptr, nullptr,
CSS_PROP_NO_OFFSET, CSS_PROP_NO_OFFSET,
@ -2274,14 +2269,13 @@ CSS_PROP_SHORTHAND(
grid_template, grid_template,
GridTemplate, GridTemplate,
CSS_PROPERTY_PARSE_FUNCTION, CSS_PROPERTY_PARSE_FUNCTION,
"layout.css.grid.enabled") "")
CSS_PROP_POSITION( CSS_PROP_POSITION(
grid-template-areas, grid-template-areas,
grid_template_areas, grid_template_areas,
GridTemplateAreas, GridTemplateAreas,
CSS_PROPERTY_PARSE_FUNCTION | CSS_PROPERTY_PARSE_FUNCTION,
CSS_PROPERTY_ENABLED_IN_UA_SHEETS, "",
"layout.css.grid.enabled",
0, 0,
nullptr, nullptr,
CSS_PROP_NO_OFFSET, CSS_PROP_NO_OFFSET,
@ -2292,9 +2286,8 @@ CSS_PROP_POSITION(
GridTemplateColumns, GridTemplateColumns,
CSS_PROPERTY_PARSE_FUNCTION | CSS_PROPERTY_PARSE_FUNCTION |
CSS_PROPERTY_STORES_CALC | CSS_PROPERTY_STORES_CALC |
CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH | CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
CSS_PROPERTY_ENABLED_IN_UA_SHEETS, "",
"layout.css.grid.enabled",
0, 0,
kGridTrackBreadthKTable, kGridTrackBreadthKTable,
CSS_PROP_NO_OFFSET, CSS_PROP_NO_OFFSET,
@ -2305,9 +2298,8 @@ CSS_PROP_POSITION(
GridTemplateRows, GridTemplateRows,
CSS_PROPERTY_PARSE_FUNCTION | CSS_PROPERTY_PARSE_FUNCTION |
CSS_PROPERTY_STORES_CALC | CSS_PROPERTY_STORES_CALC |
CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH | CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
CSS_PROPERTY_ENABLED_IN_UA_SHEETS, "",
"layout.css.grid.enabled",
0, 0,
kGridTrackBreadthKTable, kGridTrackBreadthKTable,
CSS_PROP_NO_OFFSET, CSS_PROP_NO_OFFSET,

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

@ -1301,7 +1301,6 @@ KTableEntry nsCSSProps::kDisplayKTable[] = {
{ eCSSKeyword_ruby_base_container, StyleDisplay::RubyBaseContainer }, { eCSSKeyword_ruby_base_container, StyleDisplay::RubyBaseContainer },
{ eCSSKeyword_ruby_text, StyleDisplay::RubyText }, { eCSSKeyword_ruby_text, StyleDisplay::RubyText },
{ eCSSKeyword_ruby_text_container, StyleDisplay::RubyTextContainer }, { eCSSKeyword_ruby_text_container, StyleDisplay::RubyTextContainer },
// The next two entries are controlled by the layout.css.grid.enabled pref.
{ eCSSKeyword_grid, StyleDisplay::Grid }, { eCSSKeyword_grid, StyleDisplay::Grid },
{ eCSSKeyword_inline_grid, StyleDisplay::InlineGrid }, { eCSSKeyword_inline_grid, StyleDisplay::InlineGrid },
// The next 4 entries are controlled by the layout.css.prefixes.webkit pref. // The next 4 entries are controlled by the layout.css.prefixes.webkit pref.

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

@ -407,8 +407,6 @@ nsLayoutStylesheetCache::For(StyleBackendType aType)
// style sheets will be re-parsed. // style sheets will be re-parsed.
// Preferences::RegisterCallback(&DependentPrefChanged, // Preferences::RegisterCallback(&DependentPrefChanged,
// "layout.css.example-pref.enabled"); // "layout.css.example-pref.enabled");
Preferences::RegisterCallback(&DependentPrefChanged,
"layout.css.grid.enabled");
} }
return cache; return cache;
@ -865,7 +863,7 @@ nsLayoutStylesheetCache::DependentPrefChanged(const char* aPref, void* aData)
InvalidateSheet(gStyleCache_Gecko ? &gStyleCache_Gecko->sheet_ : nullptr, \ InvalidateSheet(gStyleCache_Gecko ? &gStyleCache_Gecko->sheet_ : nullptr, \
gStyleCache_Servo ? &gStyleCache_Servo->sheet_ : nullptr); gStyleCache_Servo ? &gStyleCache_Servo->sheet_ : nullptr);
INVALIDATE(mUASheet); // for layout.css.grid.enabled // INVALIDATE(mUASheet); // for layout.css.example-pref.enabled
#undef INVALIDATE #undef INVALIDATE
} }

Разница между файлами не показана из-за своего большого размера Загрузить разницу

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

@ -2012,9 +2012,6 @@ function test_font_weight(prop) {
} }
function test_grid_gap(prop) { function test_grid_gap(prop) {
if (!SpecialPowers.getBoolPref("layout.css.grid.enabled")) {
return;
}
test_length_transition(prop); test_length_transition(prop);
test_length_clamped(prop); test_length_clamped(prop);
test_percent_transition(prop); test_percent_transition(prop);

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

@ -3024,9 +3024,6 @@ pref("layout.css.all-shorthand.enabled", true);
// Is support for CSS overflow-clip-box enabled for non-UA sheets? // Is support for CSS overflow-clip-box enabled for non-UA sheets?
pref("layout.css.overflow-clip-box.enabled", false); pref("layout.css.overflow-clip-box.enabled", false);
// Is support for CSS grid enabled?
pref("layout.css.grid.enabled", true);
// Is support for CSS "grid-template-{columns,rows}: subgrid X" enabled? // Is support for CSS "grid-template-{columns,rows}: subgrid X" enabled?
pref("layout.css.grid-template-subgrid-value.enabled", false); pref("layout.css.grid-template-subgrid-value.enabled", false);