Changeset 269880 in webkit


Ignore:
Timestamp:
Nov 16, 2020 2:40:26 PM (3 years ago)
Author:
graouts@webkit.org
Message:

Add an experimental <model> element
https://bugs.webkit.org/show_bug.cgi?id=218991

Reviewed by Dean Jackson.

Source/WebCore:

Test: system-preview/model/model-element.html

Add the basis for a new <model> element.

  • CMakeLists.txt:
  • DerivedSources-input.xcfilelist:
  • DerivedSources-output.xcfilelist:
  • DerivedSources.make:
  • Headers.cmake:
  • Sources.txt:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/WebCoreBuiltinNames.h:
  • html/HTMLModelElement.cpp: Added.

(WebCore::HTMLModelElement::HTMLModelElement):
(WebCore::HTMLModelElement::~HTMLModelElement):
(WebCore::HTMLModelElement::create):

  • html/HTMLModelElement.h: Added.
  • html/HTMLModelElement.idl: Added.
  • html/HTMLTagNames.in:

Source/WTF:

Add a new build ENABLE(MODEL_ELEMENT) flag, enabled only on Cocoa platforms, and a new experimental feature
backed by a setting, currently disabled on all platforms except engineering builds and Safari Technology Preview.

  • Scripts/Preferences/WebPreferencesExperimental.yaml:
  • wtf/PlatformEnableCocoa.h:

LayoutTests:

Add a new system-preview/model subdirectory for <model> tests, which we run on macOS and iOS.

  • platform/mac/TestExpectations:
  • system-preview/model/model-element-expected.txt: Added.
  • system-preview/model/model-element.html: Added.
Location:
trunk
Files:
6 added
15 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r269878 r269880  
     12020-11-16  Antoine Quint  <graouts@webkit.org>
     2
     3        Add an experimental <model> element
     4        https://bugs.webkit.org/show_bug.cgi?id=218991
     5
     6        Reviewed by Dean Jackson.
     7
     8        Add a new system-preview/model subdirectory for <model> tests, which we run on macOS and iOS.
     9
     10        * platform/mac/TestExpectations:
     11        * system-preview/model/model-element-expected.txt: Added.
     12        * system-preview/model/model-element.html: Added.
     13
    1142020-11-16  Truitt Savell  <tsavell@apple.com>
    215
  • trunk/LayoutTests/platform/mac/TestExpectations

    r269878 r269880  
    1616fast/scrolling/latching [ Pass ]
    1717media/mac [ Pass ]
     18system-preview/model [ Pass ]
    1819
    1920fast/forms/search/search-padding-cancel-results-buttons.html [ Pass ]
  • trunk/Source/WTF/ChangeLog

    r269867 r269880  
     12020-11-16  Antoine Quint  <graouts@webkit.org>
     2
     3        Add an experimental <model> element
     4        https://bugs.webkit.org/show_bug.cgi?id=218991
     5
     6        Reviewed by Dean Jackson.
     7
     8        Add a new build ENABLE(MODEL_ELEMENT) flag, enabled only on Cocoa platforms, and a new experimental feature
     9        backed by a setting, currently disabled on all platforms except engineering builds and Safari Technology Preview.
     10
     11        * Scripts/Preferences/WebPreferencesExperimental.yaml:
     12        * wtf/PlatformEnableCocoa.h:
     13
    1142020-11-16  Per Arne Vollan  <pvollan@apple.com>
    215
  • trunk/Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml

    r269780 r269880  
    565565      default: false
    566566
     567ModelElementEnabled:
     568  type: bool
     569  humanReadableName: "HTML <model> element"
     570  humanReadableDescription: "HTML <model> element"
     571  condition: ENABLE(MODEL_ELEMENT)
     572  defaultValue:
     573    WebKitLegacy:
     574      default: false
     575    WebKit:
     576      "ENABLE(EXPERIMENTAL_FEATURES)" : true
     577      default: false
     578    WebCore:
     579      default: false
     580
    567581ModernUnprefixedWebAudioEnabled:
    568582  type: bool
  • trunk/Source/WTF/wtf/PlatformEnableCocoa.h

    r269775 r269880  
    349349#endif
    350350
     351#if !defined(ENABLE_MODEL_ELEMENT)
     352#define ENABLE_MODEL_ELEMENT 1
     353#endif
     354
    351355// FIXME: We almost certainly do not need this monospace font exception for watchOS and tvOS.
    352356#if !defined(ENABLE_MONOSPACE_FONT_EXCEPTION) && ((PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED < 101500) || PLATFORM(WATCHOS) || PLATFORM(APPLETV))
  • trunk/Source/WebCore/CMakeLists.txt

    r269830 r269880  
    970970    html/HTMLMeterElement.idl
    971971    html/HTMLModElement.idl
     972    html/HTMLModelElement.idl
    972973    html/HTMLOListElement.idl
    973974    html/HTMLObjectElement.idl
  • trunk/Source/WebCore/ChangeLog

    r269875 r269880  
     12020-11-16  Antoine Quint  <graouts@webkit.org>
     2
     3        Add an experimental <model> element
     4        https://bugs.webkit.org/show_bug.cgi?id=218991
     5
     6        Reviewed by Dean Jackson.
     7
     8        Test: system-preview/model/model-element.html
     9
     10        Add the basis for a new <model> element.
     11
     12        * CMakeLists.txt:
     13        * DerivedSources-input.xcfilelist:
     14        * DerivedSources-output.xcfilelist:
     15        * DerivedSources.make:
     16        * Headers.cmake:
     17        * Sources.txt:
     18        * WebCore.xcodeproj/project.pbxproj:
     19        * bindings/js/WebCoreBuiltinNames.h:
     20        * html/HTMLModelElement.cpp: Added.
     21        (WebCore::HTMLModelElement::HTMLModelElement):
     22        (WebCore::HTMLModelElement::~HTMLModelElement):
     23        (WebCore::HTMLModelElement::create):
     24        * html/HTMLModelElement.h: Added.
     25        * html/HTMLModelElement.idl: Added.
     26        * html/HTMLTagNames.in:
     27
    1282020-11-16  Alex Christensen  <achristensen@webkit.org>
    229
  • trunk/Source/WebCore/DerivedSources-input.xcfilelist

    r269830 r269880  
    899899$(PROJECT_DIR)/html/HTMLMeterElement.idl
    900900$(PROJECT_DIR)/html/HTMLModElement.idl
     901$(PROJECT_DIR)/html/HTMLModelElement.idl
    901902$(PROJECT_DIR)/html/HTMLOListElement.idl
    902903$(PROJECT_DIR)/html/HTMLObjectElement.idl
  • trunk/Source/WebCore/DerivedSources-output.xcfilelist

    r269830 r269880  
    10321032$(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSHTMLModElement.cpp
    10331033$(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSHTMLModElement.h
     1034$(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSHTMLModelElement.cpp
     1035$(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSHTMLModelElement.h
    10341036$(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSHTMLOListElement.cpp
    10351037$(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSHTMLOListElement.h
  • trunk/Source/WebCore/DerivedSources.make

    r269830 r269880  
    845845    $(WebCore)/html/HTMLMeterElement.idl \
    846846    $(WebCore)/html/HTMLModElement.idl \
     847    $(WebCore)/html/HTMLModelElement.idl \
    847848    $(WebCore)/html/HTMLOListElement.idl \
    848849    $(WebCore)/html/HTMLObjectElement.idl \
  • trunk/Source/WebCore/Headers.cmake

    r269785 r269880  
    637637    html/HTMLMetaElement.h
    638638    html/HTMLModElement.h
     639    html/HTMLModelElement.h
    639640    html/HTMLOListElement.h
    640641    html/HTMLObjectElement.h
  • trunk/Source/WebCore/Sources.txt

    r269830 r269880  
    11881188html/HTMLMeterElement.cpp
    11891189html/HTMLModElement.cpp
     1190html/HTMLModelElement.cpp
    11901191html/HTMLNameCollection.cpp
    11911192html/HTMLOListElement.cpp
     
    30513052JSHTMLMeterElement.cpp
    30523053JSHTMLModElement.cpp
     3054JSHTMLModelElement.cpp
    30533055JSHTMLOListElement.cpp
    30543056JSHTMLObjectElement.cpp
  • trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj

    r269873 r269880  
    21512151                7181A16C244F0F40007D8A24 /* DocumentTimelinesController.h in Headers */ = {isa = PBXBuildFile; fileRef = 7181A169244F0F2C007D8A24 /* DocumentTimelinesController.h */; settings = {ATTRIBUTES = (Private, ); }; };
    21522152                71A1B6081DEE5AD70073BCFB /* modern-media-controls-localized-strings.js in Resources */ = {isa = PBXBuildFile; fileRef = 71A1B6061DEE5A820073BCFB /* modern-media-controls-localized-strings.js */; };
     2153                71A3D1812562B85B0064E2A6 /* HTMLModelElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 71A3D17D2562B8240064E2A6 /* HTMLModelElement.h */; settings = {ATTRIBUTES = (Private, ); }; };
     2154                71A3D1842562BE0B0064E2A6 /* JSHTMLModelElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 71A3D1832562BDDB0064E2A6 /* JSHTMLModelElement.h */; };
    21532155                71A57DF2154BE25C0009D120 /* SVGPathUtilities.h in Headers */ = {isa = PBXBuildFile; fileRef = 71A57DF0154BE25C0009D120 /* SVGPathUtilities.h */; };
    21542156                71A58196236F467600D81A24 /* KeyframeEffectStack.h in Headers */ = {isa = PBXBuildFile; fileRef = 71A58193236F466400D81A24 /* KeyframeEffectStack.h */; settings = {ATTRIBUTES = (Private, ); }; };
     
    99319933                7199B94F2552103E00494A57 /* StyleSelfAlignmentData.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = StyleSelfAlignmentData.cpp; sourceTree = "<group>"; };
    99329934                71A1B6071DEE5A820073BCFB /* en */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.javascript; name = en; path = "en.lproj/modern-media-controls-localized-strings.js"; sourceTree = SOURCE_ROOT; };
     9935                71A3D17D2562B8240064E2A6 /* HTMLModelElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HTMLModelElement.h; sourceTree = "<group>"; };
     9936                71A3D17F2562B8240064E2A6 /* HTMLModelElement.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = HTMLModelElement.idl; sourceTree = "<group>"; };
     9937                71A3D1802562B8250064E2A6 /* HTMLModelElement.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = HTMLModelElement.cpp; sourceTree = "<group>"; };
     9938                71A3D1822562BDDB0064E2A6 /* JSHTMLModelElement.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSHTMLModelElement.cpp; sourceTree = "<group>"; };
     9939                71A3D1832562BDDB0064E2A6 /* JSHTMLModelElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSHTMLModelElement.h; sourceTree = "<group>"; };
    99339940                71A57DEF154BE25C0009D120 /* SVGPathUtilities.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SVGPathUtilities.cpp; sourceTree = "<group>"; };
    99349941                71A57DF0154BE25C0009D120 /* SVGPathUtilities.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SVGPathUtilities.h; sourceTree = "<group>"; };
     
    2326123268                                A4544249119B3661009BE912 /* HTMLMeterElement.h */,
    2326223269                                A71A70C911AFB02000989D6D /* HTMLMeterElement.idl */,
     23270                                71A3D1802562B8250064E2A6 /* HTMLModelElement.cpp */,
     23271                                71A3D17D2562B8240064E2A6 /* HTMLModelElement.h */,
     23272                                71A3D17F2562B8240064E2A6 /* HTMLModelElement.idl */,
    2326323273                                A8CFF79F0A156978000A4234 /* HTMLModElement.cpp */,
    2326423274                                A8CFF79D0A156978000A4234 /* HTMLModElement.h */,
     
    2459124601                                A7BBE26411AFB3F20005EA03 /* JSHTMLMeterElement.cpp */,
    2459224602                                A7BBE26511AFB3F20005EA03 /* JSHTMLMeterElement.h */,
     24603                                71A3D1822562BDDB0064E2A6 /* JSHTMLModelElement.cpp */,
     24604                                71A3D1832562BDDB0064E2A6 /* JSHTMLModelElement.h */,
    2459324605                                1AE2AB1F0A1CE63B00B42B25 /* JSHTMLModElement.cpp */,
    2459424606                                1AE2AB200A1CE63B00B42B25 /* JSHTMLModElement.h */,
     
    3206332075                                A871DC240A15205700B12A68 /* HTMLMetaElement.h in Headers */,
    3206432076                                A454424B119B3661009BE912 /* HTMLMeterElement.h in Headers */,
     32077                                71A3D1812562B85B0064E2A6 /* HTMLModelElement.h in Headers */,
    3206532078                                A8CFF7A70A156978000A4234 /* HTMLModElement.h in Headers */,
    3206632079                                A8DF3FD4097FA0FC0052981B /* HTMLNameCollection.h in Headers */,
     
    3269232705                                A80E7A180A19C3D6007FB8C5 /* JSHTMLMetaElement.h in Headers */,
    3269332706                                A7BBE26711AFB3F20005EA03 /* JSHTMLMeterElement.h in Headers */,
     32707                                71A3D1842562BE0B0064E2A6 /* JSHTMLModelElement.h in Headers */,
    3269432708                                1AE2AB2A0A1CE63B00B42B25 /* JSHTMLModElement.h in Headers */,
    3269532709                                BC305C7A0C076BB300CD20F0 /* JSHTMLObjectElement.h in Headers */,
  • trunk/Source/WebCore/bindings/js/WebCoreBuiltinNames.h

    r269830 r269880  
    137137    macro(HTMLDataListElement) \
    138138    macro(HTMLMenuItemElement) \
     139    macro(HTMLModelElement) \
    139140    macro(HTMLKeygenElement) \
    140141    macro(HTMLSlotElement) \
  • trunk/Source/WebCore/html/HTMLTagNames.in

    r269612 r269880  
    8888meta
    8989meter interfaceName=HTMLMeterElement
     90model interfaceName=HTMLModelElement, conditional=MODEL_ELEMENT, settingsConditional=modelElementEnabled
    9091nav interfaceName=HTMLElement
    9192nobr interfaceName=HTMLElement
Note: See TracChangeset for help on using the changeset viewer.