1{ 2// This file specifies fields in ComputedStyle that we would like to 3// generate, but are not CSS properties. 4 5 parameters: { 6 // If true, we do not include this field in ComputedStyleBase::InheritFrom 7 // and ComputedStyleBase::CopyNonInheritedFromCached. 8 custom_copy: { 9 default: false, 10 }, 11 12 // If true, we do not include this field in ComputedStyleBase::InheritedEqual 13 // and ComputedStyleBase::NonInheritedEqual. 14 custom_compare: { 15 default: false, 16 }, 17 18 // Controls whether the field has the "mutable" C++ keyword. 19 mutable: { 20 default: false, 21 }, 22 23 // The rest is the same as css_properties.json5, but the only relevant ones in 24 // this file are: 25 // name, field_template, include_paths, default_value, type_name, keyword, 26 // inherited 27 }, 28 29 data: [ 30 { 31 name: "IsLink", 32 field_template: "monotonic_flag", 33 default_value: "false", 34 custom_copy: true, 35 custom_compare: true, 36 }, 37 { 38 name: "Display", 39 field_template: "keyword", 40 type_name: "EDisplay", 41 keywords: [ 42 "inline", "block", "list-item", "inline-block", "table", "inline-table", 43 "table-row-group", "table-header-group", "table-footer-group", 44 "table-row", "table-column-group", "table-column", "table-cell", 45 "table-caption", "-webkit-box", "-webkit-inline-box", "flex", 46 "inline-flex", "grid", "inline-grid", "contents", "flow-root", "none", 47 "layout-custom", "inline-layout-custom", "math", "block math" 48 ], 49 default_value: "inline", 50 }, 51 { 52 name: "DisplayLayoutCustomName", 53 field_template: "external", 54 field_group: "*", 55 type_name: "AtomicString", 56 include_paths: ["third_party/blink/renderer/platform/wtf/text/atomic_string.h"], 57 default_value: "g_null_atom", 58 }, 59 { 60 name: "DisplayLayoutCustomParentName", 61 field_template: "external", 62 field_group: "*", 63 type_name: "AtomicString", 64 include_paths: ["third_party/blink/renderer/platform/wtf/text/atomic_string.h"], 65 default_value: "g_null_atom", 66 }, 67 { 68 name: "OriginalDisplay", 69 field_template: "keyword", 70 type_name: "EDisplay", 71 keywords: [ 72 "inline", "block", "list-item", "inline-block", "table", "inline-table", 73 "table-row-group", "table-header-group", "table-footer-group", 74 "table-row", "table-column-group", "table-column", "table-cell", 75 "table-caption", "-webkit-box", "-webkit-inline-box", "flex", 76 "inline-flex", "grid", "inline-grid", "contents", "flow-root", "none", 77 "layout-custom", "inline-layout-custom", "math", "block math" 78 ], 79 default_value: "inline", 80 }, 81 { 82 name: "InsideLink", 83 field_template: "keyword", 84 default_value: "not-inside-link", 85 keywords: ["not-inside-link", "inside-unvisited-link", "inside-visited-link"], 86 inherited: true, 87 }, 88 // Whether we're inside an NG block fragmentation context. 89 { 90 name: "InsideNGFragmentationContext", 91 field_template: "primitive", 92 default_value: "false", 93 type_name: "bool", 94 inherited: true, 95 }, 96 // Style has content property with attr() values. 97 { 98 name: "HasAttrContent", 99 field_template: "monotonic_flag", 100 default_value: "false", 101 custom_copy: true, 102 custom_compare: true, 103 }, 104 // Style has applied a non-inherited -internal-light-dark() value from a UA 105 // stylesheet. Since such values have a dependency on the used color-scheme, 106 // we cannot use the MatchedPropertyCache when this flag is set. 107 { 108 name: "HasNonInheritedLightDarkValue", 109 field_template: "monotonic_flag", 110 default_value: "false", 111 custom_copy: true, 112 custom_compare: true, 113 }, 114 // Whether this style is affected by these pseudo-classes. 115 { 116 name: "AffectedByFocusWithin", 117 field_template: "monotonic_flag", 118 default_value: "false", 119 custom_copy: true, 120 custom_compare: true, 121 }, 122 { 123 name: "AffectedByHover", 124 field_template: "monotonic_flag", 125 default_value: "false", 126 custom_copy: true, 127 custom_compare: true, 128 }, 129 { 130 name: "AffectedByActive", 131 field_template: "monotonic_flag", 132 default_value: "false", 133 custom_copy: true, 134 custom_compare: true, 135 }, 136 { 137 name: "AffectedByDrag", 138 field_template: "monotonic_flag", 139 default_value: "false", 140 custom_copy: true, 141 custom_compare: true, 142 }, 143 // A non-inherited property references a variable or @apply is used 144 { 145 name: "HasVariableReferenceFromNonInheritedProperty", 146 field_template: "monotonic_flag", 147 default_value: "false", 148 custom_copy: true, 149 custom_compare: true, 150 }, 151 // A property references a variable that needs to be resolved 152 { 153 name: "HasVariableReference", 154 field_template: "monotonic_flag", 155 default_value: "false", 156 custom_compare: true, 157 }, 158 // A property which value consists of a custom property declaration. 159 { 160 name: "HasVariableDeclaration", 161 field_template: "monotonic_flag", 162 default_value: "false", 163 custom_compare: true, 164 }, 165 // Set on parent style when a child explicitly inherits a 166 // non-inherited property 167 { 168 name: "ChildHasExplicitInheritance", 169 field_template: "monotonic_flag", 170 default_value: "false", 171 custom_copy: true, 172 custom_compare: true, 173 mutable: true, 174 }, 175 // Explicitly inherits a non-inherited property 176 { 177 name: "HasExplicitInheritance", 178 field_template: "monotonic_flag", 179 default_value: "false", 180 }, 181 // These are set if we used viewport or rem units when resolving a length. 182 // FIXME: HasViewportUnits should be a monotonic_flag. 183 { 184 name: "HasViewportUnits", 185 field_template: "primitive", 186 default_value: "false", 187 type_name: "bool", 188 custom_compare: true, 189 }, 190 { 191 name: "HasRemUnits", 192 field_template: "monotonic_flag", 193 default_value: "false", 194 custom_compare: true, 195 }, 196 { 197 name: "HasEmUnits", 198 field_template: "monotonic_flag", 199 default_value: "false", 200 custom_compare: true, 201 }, 202 // Whether we used a length unit that must be resolved against the measure 203 // of a certain glyph in some font. 204 { 205 name: "HasGlyphRelativeUnits", 206 field_template: "monotonic_flag", 207 default_value: "false", 208 custom_compare: true, 209 }, 210 // These properties only have generated storage, and their methods are handwritten in ComputedStyle. 211 { 212 name: "StyleType", 213 field_template: "primitive", 214 field_size: 6, 215 default_value: "PseudoId::kPseudoIdNone", 216 type_name: "unsigned", 217 custom_copy: true, 218 custom_compare: true, 219 computed_style_custom_functions: ["getter", "setter"], 220 }, 221 { 222 name: "PseudoBits", 223 field_template: "primitive", 224 field_size: 9, 225 default_value: "kPseudoIdNone", 226 type_name: "unsigned", 227 custom_copy: true, 228 custom_compare: true, 229 computed_style_custom_functions: ["getter", "setter"], 230 }, 231 // True if 'underline solid' is the only text decoration on this element. 232 { 233 name: "HasSimpleUnderline", 234 field_template: "primitive", 235 default_value: "false", 236 type_name: "bool", 237 inherited: true, 238 computed_style_custom_functions: ["getter", "setter"], 239 }, 240 // FIXME: vertical align is actually a CSS property, but since we don't support union fields 241 // which can be either a keyword or Length, this is specified in this file for now. Remove this 242 // once we can support union fields. 243 { 244 name: "VerticalAlign", 245 field_template: "primitive", 246 field_size: 4, 247 type_name: "unsigned", 248 default_value: "static_cast<unsigned>(EVerticalAlign::kBaseline)", 249 computed_style_custom_functions: ["initial", "getter", "setter"], 250 }, 251 { 252 name: "VerticalAlignLength", 253 field_template: "external", 254 default_value: "Length()", 255 include_paths: ["third_party/blink/renderer/platform/geometry/length.h"], 256 type_name: "Length", 257 field_group: "box", 258 getter: "GetVerticalAlignLength", 259 computed_style_custom_functions: ["setter"], 260 }, 261 { 262 name: "border-image", 263 field_template: "external", 264 include_paths: ["third_party/blink/renderer/core/style/nine_piece_image.h"], 265 type_name: "NinePieceImage", 266 field_group: "surround", 267 default_value: "NinePieceImage()", 268 }, 269 { 270 name: "Background", 271 field_template: "external", 272 include_paths: ["third_party/blink/renderer/core/style/fill_layer.h"], 273 type_name: "FillLayer", 274 default_value: "FillLayer(EFillLayerType::kBackground, true)", 275 field_group: "background", 276 computed_style_custom_functions: ["getter", "setter"], 277 }, 278 { 279 name: "HasAutoClip", 280 field_template: "primitive", 281 type_name: "bool", 282 default_value: "true", 283 field_group: "visual", 284 computed_style_custom_functions: ["setter"], 285 }, 286 { 287 name: "HasAutoZIndex", 288 field_template: "primitive", 289 type_name: "bool", 290 field_group: "box", 291 default_value: "true", 292 computed_style_custom_functions: ["setter"], 293 }, 294 { 295 name: "font", 296 field_template: "external", 297 include_paths: ["third_party/blink/renderer/platform/fonts/font.h"], 298 type_name: "Font", 299 field_group: "inherited->font", 300 inherited: true, 301 default_value: "Font()", 302 computed_style_custom_functions: ["getter", "setter"], 303 }, 304 { 305 name: "TextAutosizingMultiplier", 306 inherited: true, 307 field_template: "primitive", 308 type_name: "float", 309 field_group: "inherited", 310 default_value: "1.0", 311 computed_style_custom_functions: ["setter"], 312 }, 313 { 314 name: "CursorData", 315 inherited: true, 316 field_template: "external", 317 type_name: "CursorList", 318 include_paths: ["third_party/blink/renderer/core/style/cursor_list.h"], 319 default_value: "nullptr", 320 wrapper_pointer_name: "Persistent", 321 field_group: "*", 322 computed_style_custom_functions: ["getter", "setter"], 323 }, 324 { 325 name: "EffectiveZoom", 326 inherited: true, 327 field_template: "primitive", 328 type_name: "float", 329 default_value: "1.0f", 330 field_group: "*", 331 computed_style_custom_functions: ["setter"], 332 }, 333 { 334 name: "TextEmphasisFill", 335 inherited: true, 336 field_template: "keyword", 337 type_name: "TextEmphasisFill", 338 default_value: "filled", 339 keywords: ["filled", "open"], 340 field_group: "*", 341 }, 342 { 343 name: "TextEmphasisMark", 344 inherited: true, 345 field_template: "keyword", 346 type_name: "TextEmphasisMark", 347 default_value: "none", 348 keywords: ["none", "auto", "dot", "circle", "double-circle", "triangle", "sesame", "custom"], 349 field_group: "*", 350 computed_style_custom_functions: ["getter", "setter"], 351 }, 352 { 353 name: "TextIndentLine", 354 inherited: true, 355 field_template: "keyword", 356 type_name: "TextIndentLine", 357 keywords: ["first-line", "each-line"], 358 default_value: "first-line", 359 field_group: "*", 360 }, 361 { 362 name: "TextIndentType", 363 inherited: true, 364 field_template: "keyword", 365 type_name: "TextIndentType", 366 keywords: ["normal", "hanging"], 367 default_value: "normal", 368 field_group: "*", 369 }, 370 // Though will-change is not itself an inherited property, the intent 371 // expressed by 'will-change: contents' includes descendants. 372 { 373 name: "SubtreeWillChangeContents", 374 inherited: true, 375 field_template: "primitive", 376 type_name: "bool", 377 default_value: "false", 378 field_group: "*", 379 }, 380 { 381 name: "SelfOrAncestorHasDirAutoAttribute", 382 inherited: true, 383 field_template: "primitive", 384 type_name: "bool", 385 default_value: "false", 386 field_group: "*", 387 }, 388 // Though position: sticky is not itself an inherited property, being a 389 // descendent of a sticky element changes some document lifecycle logic. 390 { 391 name: "SubtreeIsSticky", 392 inherited: true, 393 field_template: "primitive", 394 type_name: "bool", 395 default_value: "false", 396 field_group: "*", 397 }, 398 { 399 name: "HyphenationLimitBefore", 400 inherited: true, 401 field_template: "primitive", 402 type_name: "short", 403 default_value: "-1", 404 field_group: "*", 405 computed_style_custom_functions: ["getter", "setter"], 406 }, 407 { 408 name: "HyphenationLimitAfter", 409 inherited: true, 410 field_template: "primitive", 411 type_name: "short", 412 default_value: "-1", 413 field_group: "*", 414 computed_style_custom_functions: ["getter", "setter"], 415 }, 416 { 417 name: "HyphenationLimitLines", 418 inherited: true, 419 field_template: "primitive", 420 type_name: "short", 421 default_value: "-1", 422 field_group: "*", 423 computed_style_custom_functions: ["getter", "setter"], 424 }, 425 { 426 name: "EffectiveTouchAction", 427 inherited: true, 428 field_template: "primitive", 429 include_paths: ["third_party/blink/renderer/platform/graphics/touch_action.h"], 430 type_name: "TouchAction", 431 field_size: 7, 432 default_value: "TouchAction::kAuto", 433 field_group: "*", 434 computed_style_custom_functions: ["getter", "setter"], 435 }, 436 { 437 name: "EffectiveAppearance", 438 field_group: "*", 439 field_size: 5, 440 field_template: "primitive", 441 default_value: "kNoControlPart", 442 type_name: "ControlPart", 443 }, 444 { 445 name: "TextEmphasisCustomMark", 446 inherited: true, 447 field_template: "external", 448 type_name: "AtomicString", 449 include_paths: ["third_party/blink/renderer/platform/wtf/text/atomic_string.h"], 450 default_value: "AtomicString()", 451 field_group: "*", 452 }, 453 { 454 name: "AppliedTextDecorations", 455 inherited: true, 456 field_template: "external", 457 type_name: "AppliedTextDecorationList", 458 include_paths: ["third_party/blink/renderer/core/style/applied_text_decoration_list.h"], 459 default_value: "nullptr", 460 wrapper_pointer_name: "scoped_refptr", 461 field_group: "*", 462 computed_style_custom_functions: ["getter", "setter"], 463 }, 464 { 465 name: "InheritedVariables", 466 inherited: true, 467 semi_independent_variable: true, 468 field_template: "external", 469 type_name: "StyleInheritedVariables", 470 include_paths: ["third_party/blink/renderer/core/style/style_inherited_variables.h"], 471 default_value: "nullptr", 472 wrapper_pointer_name: "scoped_refptr", 473 field_group: "InheritedVariables", 474 computed_style_custom_functions: ["getter", "setter"], 475 }, 476 { 477 name: "InitialData", 478 inherited: true, 479 field_template: "external", 480 type_name: "StyleInitialData", 481 include_paths: ["third_party/blink/renderer/core/style/style_initial_data.h"], 482 default_value: "nullptr", 483 wrapper_pointer_name: "scoped_refptr", 484 field_group: "*", 485 computed_style_custom_functions: ["getter", "setter"], 486 }, 487 { 488 name: "Mask", 489 field_template: "external", 490 type_name: "FillLayer", 491 field_group: "*", 492 default_value: "FillLayer(EFillLayerType::kMask, true)", 493 computed_style_custom_functions: ["getter", "setter"], 494 }, 495 { 496 name: "CounterDirectives", 497 field_template: "external", 498 type_name: "CounterDirectiveMap", 499 field_group: "*", 500 default_value: "nullptr", 501 wrapper_pointer_name: "std::unique_ptr", 502 include_paths: ["third_party/blink/renderer/core/style/counter_directives.h"], 503 computed_style_custom_functions: ["getter", "setter"], 504 }, 505 { 506 name: "Animations", 507 field_template: "external", 508 type_name: "CSSAnimationData", 509 field_group: "*", 510 default_value: "nullptr", 511 wrapper_pointer_name: "std::unique_ptr", 512 include_paths: ["third_party/blink/renderer/core/animation/css/css_animation_data.h"], 513 computed_style_custom_functions: ["getter", "setter"], 514 }, 515 { 516 name: "Transitions", 517 field_template: "external", 518 type_name: "CSSTransitionData", 519 field_group: "*", 520 default_value: "nullptr", 521 wrapper_pointer_name: "std::unique_ptr", 522 include_paths: ["third_party/blink/renderer/core/animation/css/css_transition_data.h"], 523 computed_style_custom_functions: ["getter", "setter"], 524 }, 525 { 526 name: "MaskBoxImage", 527 field_template: "external", 528 type_name: "NinePieceImage", 529 field_group: "*", 530 default_value: "NinePieceImage::MaskDefaults()", 531 include_paths: ["third_party/blink/renderer/core/style/nine_piece_image.h"], 532 computed_style_custom_functions: ["getter", "setter"], 533 }, 534 { 535 name: "PageSize", 536 field_template: "external", 537 type_name: "FloatSize", 538 field_group: "*", 539 default_value: "FloatSize()", 540 include_paths: ["third_party/blink/renderer/platform/geometry/float_size.h"], 541 }, 542 { 543 name: "OutlineStyleIsAuto", 544 field_template: "primitive", 545 type_name: "bool", 546 default_value: "false", 547 field_group: "*", 548 }, 549 { 550 name: "CallbackSelectors", 551 field_template: "external", 552 type_name: "Vector<String>", 553 field_group: "*", 554 default_value: "Vector<String>()", 555 include_paths: ["third_party/blink/renderer/platform/wtf/vector.h", 556 "third_party/blink/renderer/platform/wtf/text/wtf_string.h"], 557 computed_style_custom_functions: ["setter"], 558 }, 559 { 560 name: "PaintImages", 561 field_template: "external", 562 type_name: "PaintImages", 563 field_group: "*", 564 default_value: "nullptr", 565 wrapper_pointer_name: "std::unique_ptr", 566 custom_compare: true, 567 include_paths: ["third_party/blink/renderer/core/style/paint_images.h"], 568 computed_style_custom_functions: ["getter", "setter"], 569 }, 570 { 571 name: "NonInheritedVariables", 572 field_template: "external", 573 type_name: "StyleNonInheritedVariables", 574 field_group: "*", 575 default_value: "nullptr", 576 wrapper_pointer_name: "std::unique_ptr", 577 include_paths: ["third_party/blink/renderer/core/style/style_non_inherited_variables.h"], 578 computed_style_custom_functions: ["getter", "setter"], 579 }, 580 { 581 name: "PageSizeType", 582 field_template: "primitive", 583 field_group: "*", 584 type_name: "PageSizeType", 585 field_size: 2, 586 default_value: "PageSizeType::kAuto", 587 include_paths: ["third_party/blink/public/common/css/page_size_type.h"], 588 }, 589 { 590 name: "HasCurrentOpacityAnimation", 591 field_template: "primitive", 592 type_name: "bool", 593 field_group: "*", 594 default_value: "false", 595 }, 596 { 597 name: "HasCurrentTransformAnimation", 598 field_template: "primitive", 599 type_name: "bool", 600 field_group: "*", 601 default_value: "false", 602 }, 603 { 604 name: "HasCurrentFilterAnimation", 605 field_template: "primitive", 606 type_name: "bool", 607 field_group: "*", 608 default_value: "false", 609 }, 610 { 611 name: "HasCurrentBackdropFilterAnimation", 612 field_template: "primitive", 613 type_name: "bool", 614 field_group: "*", 615 default_value: "false", 616 }, 617 { 618 name: "IsRunningOpacityAnimationOnCompositor", 619 field_template: "primitive", 620 type_name: "bool", 621 field_group: "*", 622 // This field just affects how changes of animatable values are handled, 623 // so it doesn't contribute to style differences. 624 custom_compare: true, 625 default_value: "false", 626 }, 627 { 628 name: "IsRunningTransformAnimationOnCompositor", 629 field_template: "primitive", 630 type_name: "bool", 631 field_group: "*", 632 // This field just affects how changes of animatable values are handled, 633 // so it doesn't contribute to style differences. 634 custom_compare: true, 635 default_value: "false", 636 }, 637 { 638 name: "IsRunningFilterAnimationOnCompositor", 639 field_template: "primitive", 640 type_name: "bool", 641 field_group: "*", 642 // This field just affects how changes of animatable values are handled, 643 // so it doesn't contribute to style differences. 644 custom_compare: true, 645 default_value: "false", 646 }, 647 { 648 name: "IsRunningBackdropFilterAnimationOnCompositor", 649 field_template: "primitive", 650 type_name: "bool", 651 field_group: "*", 652 // This field just affects how changes of animatable values are handled, 653 // so it doesn't contribute to style differences. 654 custom_compare: true, 655 default_value: "false", 656 }, 657 // A stacking context is painted atomically and defines a stacking order, 658 // whereas a containing stacking context defines in which order the stacking 659 // contexts below are painted. 660 // See CSS 2.1, Appendix E (https://www.w3.org/TR/CSS21/zindex.html) for more 661 // details. Note that this field does _not_ consider paint or layout 662 // containment, since it depends on the type of layout object created. 663 { 664 name: "IsStackingContextWithoutContainment", 665 field_template: "primitive", 666 type_name: "bool", 667 field_group: "*", 668 default_value: "false", 669 }, 670 // Plugins require accelerated compositing for reasons external to blink. 671 // In which case, we need to update the ComputedStyle on the 672 // LayoutEmbeddedObject, so store this bit so that the style actually changes 673 // when the plugin becomes composited. 674 { 675 name: "RequiresAcceleratedCompositingForExternalReasons", 676 field_template: "primitive", 677 type_name: "bool", 678 field_group: "*", 679 default_value: "false", 680 }, 681 // Style adjustment for appearance is disabled when certain properties are set. 682 { 683 name: "HasAuthorBackground", 684 field_template: "monotonic_flag", 685 default_value: "false", 686 }, 687 { 688 name: "HasAuthorBorder", 689 field_template: "monotonic_flag", 690 default_value: "false", 691 }, 692 { 693 name: "WillChangeProperties", 694 field_template: "external", 695 type_name: "Vector<CSSPropertyID>", 696 field_group: "*->will-change", 697 default_value: "Vector<CSSPropertyID>()", 698 include_paths: ["third_party/blink/renderer/platform/wtf/vector.h", 699 "third_party/blink/renderer/core/css/css_property_names.h"], 700 }, 701 { 702 name: "WillChangeContents", 703 field_template: "primitive", 704 type_name: "bool", 705 field_group: "*->will-change", 706 default_value: "false", 707 }, 708 { 709 name: "WillChangeScrollPosition", 710 field_template: "primitive", 711 type_name: "bool", 712 field_group: "*->will-change", 713 default_value: "false", 714 }, 715 { 716 name: "HasAutoColumnWidth", 717 field_template: "primitive", 718 type_name: "bool", 719 field_group: "*->multi-col", 720 default_value: "true", 721 computed_style_custom_functions: ["setter"], 722 }, 723 { 724 name: "HasAutoColumnCount", 725 field_template: "primitive", 726 type_name: "bool", 727 field_group: "*->multi-col", 728 default_value: "true", 729 computed_style_custom_functions: ["setter"], 730 }, 731 { 732 name: "NamedGridColumnLines", 733 field_template: "external", 734 type_name: "NamedGridLinesMap", 735 field_group: "*->grid", 736 default_value: "NamedGridLinesMap()", 737 include_paths: ["third_party/blink/renderer/core/style/named_grid_lines_map.h"], 738 }, 739 { 740 name: "NamedGridRowLines", 741 field_template: "external", 742 type_name: "NamedGridLinesMap", 743 field_group: "*->grid", 744 default_value: "NamedGridLinesMap()", 745 include_paths: ["third_party/blink/renderer/core/style/named_grid_lines_map.h"], 746 }, 747 { 748 name: "OrderedNamedGridColumnLines", 749 field_template: "external", 750 type_name: "OrderedNamedGridLines", 751 field_group: "*->grid", 752 default_value: "OrderedNamedGridLines()", 753 include_paths: ["third_party/blink/renderer/core/style/ordered_named_grid_lines.h"], 754 }, 755 { 756 name: "OrderedNamedGridRowLines", 757 field_template: "external", 758 type_name: "OrderedNamedGridLines", 759 field_group: "*->grid", 760 default_value: "OrderedNamedGridLines()", 761 include_paths: ["third_party/blink/renderer/core/style/ordered_named_grid_lines.h"], 762 }, 763 { 764 name: "AutoRepeatNamedGridColumnLines", 765 field_template: "external", 766 type_name: "NamedGridLinesMap", 767 field_group: "*->grid", 768 default_value: "NamedGridLinesMap()", 769 include_paths: ["third_party/blink/renderer/core/style/named_grid_lines_map.h"], 770 }, 771 { 772 name: "AutoRepeatNamedGridRowLines", 773 field_template: "external", 774 type_name: "NamedGridLinesMap", 775 field_group: "*->grid", 776 default_value: "NamedGridLinesMap()", 777 include_paths: ["third_party/blink/renderer/core/style/named_grid_lines_map.h"], 778 }, 779 { 780 name: "AutoRepeatOrderedNamedGridColumnLines", 781 field_template: "external", 782 type_name: "OrderedNamedGridLines", 783 field_group: "*->grid", 784 default_value: "OrderedNamedGridLines()", 785 include_paths: ["third_party/blink/renderer/core/style/ordered_named_grid_lines.h"], 786 }, 787 { 788 name: "AutoRepeatOrderedNamedGridRowLines", 789 field_template: "external", 790 type_name: "OrderedNamedGridLines", 791 field_group: "*->grid", 792 default_value: "OrderedNamedGridLines()", 793 include_paths: ["third_party/blink/renderer/core/style/ordered_named_grid_lines.h"], 794 }, 795 { 796 name: "ImplicitNamedGridColumnLines", 797 field_template: "external", 798 type_name: "NamedGridLinesMap", 799 field_group: "*->grid", 800 default_value: "NamedGridLinesMap()", 801 include_paths: ["third_party/blink/renderer/core/style/named_grid_lines_map.h"], 802 }, 803 { 804 name: "ImplicitNamedGridRowLines", 805 field_template: "external", 806 type_name: "NamedGridLinesMap", 807 field_group: "*->grid", 808 default_value: "NamedGridLinesMap()", 809 include_paths: ["third_party/blink/renderer/core/style/named_grid_lines_map.h"], 810 }, 811 { 812 name: "NamedGridArea", 813 field_template: "external", 814 type_name: "NamedGridAreaMap", 815 field_group: "*->grid", 816 default_value: "NamedGridAreaMap()", 817 include_paths: ["third_party/blink/renderer/core/style/grid_area.h"] 818 }, 819 { 820 name: "NamedGridAreaRowCount", 821 field_template: "primitive", 822 type_name: "size_t", 823 field_group: "*->grid", 824 default_value: "0", 825 }, 826 { 827 name: "NamedGridAreaColumnCount", 828 field_template: "primitive", 829 type_name: "size_t", 830 field_group: "*->grid", 831 default_value: "0", 832 }, 833 { 834 name: "GridAutoRepeatColumns", 835 field_template: "external", 836 type_name: "Vector<GridTrackSize>", 837 field_group: "*->grid", 838 default_value: "Vector<GridTrackSize>()", 839 include_paths: ["third_party/blink/renderer/platform/wtf/vector.h", 840 "third_party/blink/renderer/core/style/grid_track_size.h"], 841 }, 842 { 843 name: "GridAutoRepeatRows", 844 field_template: "external", 845 type_name: "Vector<GridTrackSize>", 846 field_group: "*->grid", 847 default_value: "Vector<GridTrackSize>()", 848 include_paths: ["third_party/blink/renderer/platform/wtf/vector.h", 849 "third_party/blink/renderer/core/style/grid_track_size.h"], 850 }, 851 { 852 name: "GridAutoRepeatColumnsInsertionPoint", 853 field_template: "primitive", 854 type_name: "size_t", 855 field_group: "*->grid", 856 default_value: "0", 857 }, 858 { 859 name: "GridAutoRepeatRowsInsertionPoint", 860 field_template: "primitive", 861 type_name: "size_t", 862 field_group: "*->grid", 863 default_value: "0", 864 }, 865 { 866 name: "GridAutoRepeatColumnsType", 867 field_template: "keyword", 868 type_name: "AutoRepeatType", 869 field_group: "*->grid", 870 keywords: ["no-auto-repeat", "auto-fill", "auto-fit"], 871 default_value: "no-auto-repeat", 872 }, 873 { 874 name: "GridAutoRepeatRowsType", 875 field_template: "keyword", 876 type_name: "AutoRepeatType", 877 field_group: "*->grid", 878 keywords: ["no-auto-repeat", "auto-fill", "auto-fit"], 879 default_value: "no-auto-repeat", 880 }, 881 // We only create and store ComputedStyle objects for elements in 882 // display:none subtrees if we need it for e.g. getComputedStyle. This flag 883 // is true for such ComputedStyle objects. 884 { 885 name: "IsEnsuredInDisplayNone", 886 field_template: "monotonic_flag", 887 default_value: "false", 888 custom_compare: true, 889 }, 890 { 891 name: "MayHaveMargin", 892 field_template: "monotonic_flag", 893 default_value: "false", 894 custom_compare: true, 895 }, 896 { 897 name: "MayHavePadding", 898 field_template: "monotonic_flag", 899 default_value: "false", 900 custom_compare: true, 901 }, 902 { 903 name: "DarkColorScheme", 904 field_template: "primitive", 905 type_name: "bool", 906 default_value: "false", 907 custom_compare: true, 908 inherited: true, 909 }, 910 { 911 name: "IsInBlockifyingDisplay", 912 field_template: "monotonic_flag", 913 default_value: "false", 914 custom_compare: true, 915 }, 916 { 917 name: "IsFlexOrGridOrCustomItem", 918 field_template: "monotonic_flag", 919 default_value: "false", 920 custom_compare: true, 921 }, 922 { 923 name: "IsFlexOrGridItem", 924 field_template: "monotonic_flag", 925 default_value: "false", 926 custom_compare: true, 927 }, 928 { 929 name: "ListStyleType", 930 inherited: true, 931 field_template: "keyword", 932 type_name: "EListStyleType", 933 keywords: [ 934 "disc", "circle", "square", "decimal", "decimal-leading-zero", 935 "arabic-indic", "bengali", "cambodian", "khmer", "devanagari", 936 "gujarati", "gurmukhi", "kannada", "lao", "malayalam", "mongolian", 937 "myanmar", "oriya", "persian", "urdu", "telugu", "tibetan", "thai", 938 "lower-roman", "upper-roman", "lower-greek", "lower-alpha", 939 "lower-latin", "upper-alpha", "upper-latin", "cjk-earthly-branch", 940 "cjk-heavenly-stem", "ethiopic-halehame", "ethiopic-halehame-am", 941 "ethiopic-halehame-ti-er", "ethiopic-halehame-ti-et", "hangul", 942 "hangul-consonant", "korean-hangul-formal", "korean-hanja-formal", 943 "korean-hanja-informal", "hebrew", "armenian", "lower-armenian", 944 "upper-armenian", "georgian", "cjk-ideographic", "simp-chinese-formal", 945 "simp-chinese-informal", "trad-chinese-formal", "trad-chinese-informal", 946 "hiragana", "katakana", "hiragana-iroha", "katakana-iroha", "none", 947 "string", 948 ], 949 default_value: "disc", 950 }, 951 { 952 name: "ListStyleStringValue", 953 inherited: true, 954 field_template: "external", 955 field_group: "*", 956 type_name: "AtomicString", 957 include_paths: ["third_party/blink/renderer/platform/wtf/text/atomic_string.h"], 958 default_value: "g_null_atom", 959 }, 960 { 961 name: "IsEnsuredOutsideFlatTree", 962 field_template: "monotonic_flag", 963 default_value: "false", 964 custom_compare: true, 965 inherited: true, 966 }, 967 { 968 name: "IsInsideListElement", 969 field_template: "monotonic_flag", 970 default_value: "false", 971 custom_compare: true, 972 inherited: true, 973 }, 974 975 // This field disables the 'overflow' check in |LayoutBlock:: 976 // InlineBlockBaseline()|. For 'inline-block', CSS says that the baseline 977 // is the bottom margin edge if 'overflow' is not visible. But some 978 // elements want to ignore this condition. 979 { 980 name: "ShouldIgnoreOverflowPropertyForInlineBlockBaseline", 981 field_template: "monotonic_flag", 982 default_value: "false", 983 inherited: false, 984 }, 985 { 986 name: "MathBaseline", 987 field_template: "external", 988 default_value: "Length()", 989 include_paths: ["third_party/blink/renderer/platform/geometry/length.h"], 990 type_name: "Length", 991 field_group: "*", 992 getter: "GetMathBaseline", 993 }, 994 { 995 name: "MathFractionBarThickness", 996 field_template: "external", 997 default_value: "Length()", 998 include_paths: ["third_party/blink/renderer/platform/geometry/length.h"], 999 type_name: "Length", 1000 field_group: "*", 1001 getter: "GetMathFractionBarThickness", 1002 }, 1003 { 1004 name: "MathLSpace", 1005 field_template: "external", 1006 default_value: "Length()", 1007 include_paths: ["third_party/blink/renderer/platform/geometry/length.h"], 1008 type_name: "Length", 1009 field_group: "*", 1010 getter: "GetMathLSpace", 1011 }, 1012 { 1013 name: "MathRSpace", 1014 field_template: "external", 1015 default_value: "Length()", 1016 include_paths: ["third_party/blink/renderer/platform/geometry/length.h"], 1017 type_name: "Length", 1018 field_group: "*", 1019 getter: "GetMathRSpace", 1020 }, 1021 { 1022 name: "MathPaddedVOffset", 1023 field_template: "external", 1024 default_value: "Length()", 1025 include_paths: ["third_party/blink/renderer/platform/geometry/length.h"], 1026 type_name: "Length", 1027 field_group: "*", 1028 getter: "GetMathPaddedVOffset", 1029 }, 1030 { 1031 name: "MathPaddedDepth", 1032 field_template: "external", 1033 default_value: "Length()", 1034 include_paths: ["third_party/blink/renderer/platform/geometry/length.h"], 1035 type_name: "Length", 1036 field_group: "*", 1037 getter: "GetMathPaddedDepth", 1038 }, 1039 1040 { 1041 name: "MathMinSize", 1042 field_template: "external", 1043 default_value: "Length()", 1044 include_paths: ["third_party/blink/renderer/platform/geometry/length.h"], 1045 type_name: "Length", 1046 field_group: "*", 1047 getter: "GetMathMinSize", 1048 }, 1049 { 1050 name: "MathMaxSize", 1051 field_template: "external", 1052 default_value: "Length()", 1053 include_paths: ["third_party/blink/renderer/platform/geometry/length.h"], 1054 type_name: "Length", 1055 field_group: "*", 1056 getter: "GetMathMaxSize", 1057 }, 1058 { 1059 name: "EffectiveZIndexZero", 1060 field_template: "primitive", 1061 type_name: "bool", 1062 field_group: "*", 1063 default_value: "false", 1064 }, 1065 ], 1066} 1067