Upstream version 5.34.104.0
[platform/framework/web/crosswalk.git] / src / third_party / WebKit / Source / core / frame / UseCounter.h
index bfce74a..994e91e 100644 (file)
@@ -59,251 +59,259 @@ public:
     ~UseCounter();
 
     enum Feature {
-        PageDestruction,
-        LegacyNotifications,
-        MultipartMainResource,
-        PrefixedIndexedDB,
-        WorkerStart,
-        SharedWorkerStart,
-        LegacyWebAudio,
-        WebAudioStart,
-        PrefixedContentSecurityPolicy,
-        UnprefixedIndexedDB,
-        OpenWebDatabase,
-        REMOVEDLegacyHTMLNotifications,
-        LegacyTextNotifications,
-        UnprefixedRequestAnimationFrame,
-        PrefixedRequestAnimationFrame,
-        ContentSecurityPolicy,
-        ContentSecurityPolicyReportOnly,
-        PrefixedContentSecurityPolicyReportOnly,
-        PrefixedTransitionEndEvent,
-        UnprefixedTransitionEndEvent,
-        PrefixedAndUnprefixedTransitionEndEvent,
-        AutoFocusAttribute,
-        REMOVEDAutoSaveAttribute,
-        DataListElement,
-        FormAttribute,
-        IncrementalAttribute,
-        InputTypeColor,
-        InputTypeDate,
-        InputTypeDateTime,
-        InputTypeDateTimeFallback,
-        InputTypeDateTimeLocal,
-        InputTypeEmail,
-        InputTypeMonth,
-        InputTypeNumber,
-        InputTypeRange,
-        InputTypeSearch,
-        InputTypeTel,
-        InputTypeTime,
-        InputTypeURL,
-        InputTypeWeek,
-        InputTypeWeekFallback,
-        ListAttribute,
-        MaxAttribute,
-        MinAttribute,
-        PatternAttribute,
-        PlaceholderAttribute,
-        PrecisionAttribute,
-        PrefixedDirectoryAttribute,
-        PrefixedSpeechAttribute,
-        RequiredAttribute,
-        ResultsAttribute,
-        StepAttribute,
-        PageVisits,
-        HTMLMarqueeElement,
-        REMOVEDCSSOverflowMarquee,
-        Reflection,
-        REMOVEDCursorVisibility,
-        PrefixedStorageInfo,
-        XFrameOptions,
-        XFrameOptionsSameOrigin,
-        XFrameOptionsSameOriginWithBadAncestorChain,
-        DeprecatedFlexboxWebContent,
-        DeprecatedFlexboxChrome,
-        DeprecatedFlexboxChromeExtension,
-        REMOVEDSVGTRefElement,
-        UnprefixedPerformanceTimeline,
-        PrefixedPerformanceTimeline,
-        UnprefixedUserTiming,
-        REMOVEDPrefixedUserTiming,
-        WindowEvent,
-        ContentSecurityPolicyWithBaseElement,
-        PrefixedMediaAddKey,
-        PrefixedMediaGenerateKeyRequest,
-        REMOVEDWebAudioLooping,
-        DocumentClear,
-        REMOVEDPrefixedTransitionMediaFeature,
-        SVGFontElement,
-        XMLDocument,
-        XSLProcessingInstruction,
-        XSLTProcessor,
-        SVGSwitchElement,
-        REMOVEDPrefixedDocumentRegister,
-        HTMLShadowElementOlderShadowRoot,
-        DocumentAll,
-        FormElement,
-        DemotedFormElement,
-        CaptureAttributeAsEnum,
-        ShadowDOMPrefixedPseudo,
-        ShadowDOMPrefixedCreateShadowRoot,
-        ShadowDOMPrefixedShadowRoot,
-        SVGAnimationElement,
-        KeyboardEventKeyLocation,
-        CaptureEvents,
-        ReleaseEvents,
-        CSSDisplayRunIn,
-        CSSDisplayCompact,
-        LineClamp,
-        SubFrameBeforeUnloadRegistered,
-        SubFrameBeforeUnloadFired,
-        CSSPseudoElementPrefixedDistributed,
-        TextReplaceWholeText,
-        PrefixedShadowRootConstructor,
-        ConsoleMarkTimeline,
-        CSSPseudoElementUserAgentCustomPseudo,
-        DocumentTypeEntities, // Removed from DOM4.
-        DocumentTypeInternalSubset, // Removed from DOM4.
-        DocumentTypeNotations, // Removed from DOM4.
-        ElementGetAttributeNode, // Removed from DOM4.
-        ElementSetAttributeNode, // Removed from DOM4.
-        ElementRemoveAttributeNode, // Removed from DOM4.
-        ElementGetAttributeNodeNS, // Removed from DOM4.
-        DocumentCreateAttribute, // Removed from DOM4.
-        DocumentCreateAttributeNS, // Removed from DOM4.
-        DocumentCreateCDATASection, // Removed from DOM4.
-        DocumentInputEncoding, // Removed from DOM4.
-        DocumentXMLEncoding, // Removed from DOM4.
-        DocumentXMLStandalone, // Removed from DOM4.
-        DocumentXMLVersion, // Removed from DOM4.
-        NodeIsSameNode, // Removed from DOM4.
-        NodeIsSupported, // Removed from DOM4.
-        NodeNamespaceURI, // Removed from DOM4.
-        REMOVEDNodePrefix,
-        NodeLocalName, // Removed from DOM4.
-        NavigatorProductSub,
-        NavigatorVendor,
-        NavigatorVendorSub,
-        FileError,
-        DocumentCharset, // Documented as IE extensions, from KHTML days.
-        PrefixedAnimationEndEvent,
-        UnprefixedAnimationEndEvent,
-        PrefixedAndUnprefixedAnimationEndEvent,
-        PrefixedAnimationStartEvent,
-        UnprefixedAnimationStartEvent,
-        PrefixedAndUnprefixedAnimationStartEvent,
-        PrefixedAnimationIterationEvent,
-        UnprefixedAnimationIterationEvent,
-        PrefixedAndUnprefixedAnimationIterationEvent,
-        EventReturnValue, // Legacy IE extension.
-        SVGSVGElement,
-        InsertAdjacentText,
-        InsertAdjacentElement,
-        HasAttributes, // Removed from DOM4.
-        DOMSubtreeModifiedEvent,
-        DOMNodeInsertedEvent,
-        DOMNodeRemovedEvent,
-        DOMNodeRemovedFromDocumentEvent,
-        DOMNodeInsertedIntoDocumentEvent,
-        DOMCharacterDataModifiedEvent,
-        DocumentAllTags,
-        DocumentAllLegacyCall,
-        HTMLAppletElementLegacyCall,
-        HTMLEmbedElementLegacyCall,
-        HTMLObjectElementLegacyCall,
-        BeforeLoadEvent,
-        GetMatchedCSSRules,
-        SVGFontInCSS,
-        ScrollTopBodyNotQuirksMode,
-        ScrollLeftBodyNotQuirksMode,
-        REMOVEDAttributeIsId,
-        REMOVEDAttributeOwnerElement,
-        REMOVEDAttributeSetPrefix,
-        AttributeSpecified, // Removed in DOM4.
-        BeforeLoadEventInIsolatedWorld,
-        PrefixedAudioDecodedByteCount,
-        PrefixedVideoDecodedByteCount,
-        PrefixedVideoSupportsFullscreen,
-        PrefixedVideoDisplayingFullscreen,
-        PrefixedVideoEnterFullscreen,
-        PrefixedVideoExitFullscreen,
-        PrefixedVideoEnterFullScreen,
-        PrefixedVideoExitFullScreen,
-        PrefixedVideoDecodedFrameCount,
-        PrefixedVideoDroppedFrameCount,
-        SourceElementCandidate,
-        SourceElementNonMatchingMedia,
-        PrefixedElementRequestFullscreen,
-        PrefixedElementRequestFullScreen,
-        BarPropLocationbar,
-        BarPropMenubar,
-        BarPropPersonalbar,
-        BarPropScrollbars,
-        BarPropStatusbar,
-        BarPropToolbar,
-        InputTypeEmailMultiple,
-        InputTypeEmailMaxLength,
-        InputTypeEmailMultipleMaxLength,
-        TextTrackCueConstructor,
-        CSSStyleDeclarationPropertyName, // Removed in CSSOM.
-        CSSStyleDeclarationFloatPropertyName, // Pending removal in CSSOM.
-        InputTypeText,
-        InputTypeTextMaxLength,
-        InputTypePassword,
-        InputTypePasswordMaxLength,
-        SVGInstanceRoot,
-        ShowModalDialog,
-        PrefixedPageVisibility,
-        HTMLFrameElementLocation,
-        CSSStyleSheetInsertRuleOptionalArg, // Inconsistent with the specification and other browsers.
-        CSSWebkitRegionAtRule, // @region rule changed to ::region()
-        DocumentBeforeUnloadRegistered,
-        DocumentBeforeUnloadFired,
-        DocumentUnloadRegistered,
-        DocumentUnloadFired,
-        SVGLocatableNearestViewportElement,
-        SVGLocatableFarthestViewportElement,
-        IsIndexElement,
-        HTMLHeadElementProfile,
-        OverflowChangedEvent,
-        SVGPointMatrixTransform,
-        HTMLHtmlElementManifest,
-        DOMFocusInOutEvent,
-        FileGetLastModifiedDate,
-        HTMLElementInnerText,
-        HTMLElementOuterText,
-        ReplaceDocumentViaJavaScriptURL,
-        ElementSetAttributeNodeNS, // Removed from DOM4.
-        ElementPrefixedMatchesSelector,
-        DOMImplementationCreateCSSStyleSheet,
-        CSSStyleSheetRules,
-        CSSStyleSheetAddRule,
-        CSSStyleSheetRemoveRule,
-        InitMessageEvent,
-        PrefixedInitMessageEvent,
-        ElementSetPrefix, // Element.prefix is readonly in DOM4.
-        CSSStyleDeclarationGetPropertyCSSValue,
-        SVGElementGetPresentationAttribute,
-        REMOVEDAttrUsedAsNodeParameter,
-        REMOVEDAttrUsedAsNodeReceiver,
-        PrefixedMediaCancelKeyRequest,
-        DOMImplementationHasFeature,
-        DOMImplementationHasFeatureReturnFalse,
-        CanPlayTypeKeySystem,
-        PrefixedDevicePixelRatioMediaFeature,
-        PrefixedMaxDevicePixelRatioMediaFeature,
-        PrefixedMinDevicePixelRatioMediaFeature,
-        PrefixedTransform2dMediaFeature,
-        PrefixedTransform3dMediaFeature,
-        PrefixedAnimationMediaFeature,
-        PrefixedViewModeMediaFeature,
-        PrefixedStorageQuota,
-        ContentSecurityPolicyReportOnlyInMeta,
-        PrefixedMediaSourceOpen,
-        ResetReferrerPolicy,
-        CaseInsensitiveAttrSelectorMatch, // Case-insensitivity dropped from specification.
-        CaptureAttributeAsBoolean,
+        // Do not change assigned numbers of existing items: add new features
+        // to the end of the list.
+        PageDestruction = 0,
+        LegacyNotifications = 1,
+        MultipartMainResource = 2,
+        PrefixedIndexedDB = 3,
+        WorkerStart = 4,
+        SharedWorkerStart = 5,
+        LegacyWebAudio = 6,
+        WebAudioStart = 7,
+        UnprefixedIndexedDB = 9,
+        OpenWebDatabase = 10,
+        LegacyTextNotifications = 12,
+        UnprefixedRequestAnimationFrame = 13,
+        PrefixedRequestAnimationFrame = 14,
+        ContentSecurityPolicy = 15,
+        ContentSecurityPolicyReportOnly = 16,
+        PrefixedTransitionEndEvent = 18,
+        UnprefixedTransitionEndEvent = 19,
+        PrefixedAndUnprefixedTransitionEndEvent = 20,
+        AutoFocusAttribute = 21,
+        DataListElement = 23,
+        FormAttribute = 24,
+        IncrementalAttribute = 25,
+        InputTypeColor = 26,
+        InputTypeDate = 27,
+        InputTypeDateTime = 28,
+        InputTypeDateTimeFallback = 29,
+        InputTypeDateTimeLocal = 30,
+        InputTypeEmail = 31,
+        InputTypeMonth = 32,
+        InputTypeNumber = 33,
+        InputTypeRange = 34,
+        InputTypeSearch = 35,
+        InputTypeTel = 36,
+        InputTypeTime = 37,
+        InputTypeURL = 38,
+        InputTypeWeek = 39,
+        InputTypeWeekFallback = 40,
+        ListAttribute = 41,
+        MaxAttribute = 42,
+        MinAttribute = 43,
+        PatternAttribute = 44,
+        PlaceholderAttribute = 45,
+        PrecisionAttribute = 46,
+        PrefixedDirectoryAttribute = 47,
+        PrefixedSpeechAttribute = 48,
+        RequiredAttribute = 49,
+        ResultsAttribute = 50,
+        StepAttribute = 51,
+        PageVisits = 52,
+        HTMLMarqueeElement = 53,
+        Reflection = 55,
+        PrefixedStorageInfo = 57,
+        XFrameOptions = 58,
+        XFrameOptionsSameOrigin = 59,
+        XFrameOptionsSameOriginWithBadAncestorChain = 60,
+        DeprecatedFlexboxWebContent = 61,
+        DeprecatedFlexboxChrome = 62,
+        DeprecatedFlexboxChromeExtension = 63,
+        UnprefixedPerformanceTimeline = 65,
+        PrefixedPerformanceTimeline = 66,
+        UnprefixedUserTiming = 67,
+        WindowEvent = 69,
+        ContentSecurityPolicyWithBaseElement = 70,
+        PrefixedMediaAddKey = 71,
+        PrefixedMediaGenerateKeyRequest = 72,
+        DocumentClear = 74,
+        SVGFontElement = 76,
+        XMLDocument = 77,
+        XSLProcessingInstruction = 78,
+        XSLTProcessor = 79,
+        SVGSwitchElement = 80,
+        HTMLShadowElementOlderShadowRoot = 82,
+        DocumentAll = 83,
+        FormElement = 84,
+        DemotedFormElement = 85,
+        CaptureAttributeAsEnum = 86,
+        ShadowDOMPrefixedPseudo = 87,
+        ShadowDOMPrefixedCreateShadowRoot = 88,
+        ShadowDOMPrefixedShadowRoot = 89,
+        SVGAnimationElement = 90,
+        KeyboardEventKeyLocation = 91,
+        CaptureEvents = 92,
+        ReleaseEvents = 93,
+        CSSDisplayRunIn = 94,
+        CSSDisplayCompact = 95,
+        LineClamp = 96,
+        SubFrameBeforeUnloadRegistered = 97,
+        SubFrameBeforeUnloadFired = 98,
+        CSSPseudoElementPrefixedDistributed = 99,
+        TextReplaceWholeText = 100,
+        PrefixedShadowRootConstructor = 101,
+        ConsoleMarkTimeline = 102,
+        CSSPseudoElementUserAgentCustomPseudo = 103,
+        DocumentTypeEntities = 104, // Removed from DOM4.
+        DocumentTypeInternalSubset = 105, // Removed from DOM4.
+        DocumentTypeNotations = 106, // Removed from DOM4.
+        ElementGetAttributeNode = 107, // Removed from DOM4.
+        ElementSetAttributeNode = 108, // Removed from DOM4.
+        ElementRemoveAttributeNode = 109, // Removed from DOM4.
+        ElementGetAttributeNodeNS = 110, // Removed from DOM4.
+        DocumentCreateAttribute = 111, // Removed from DOM4.
+        DocumentCreateCDATASection = 113, // Removed from DOM4.
+        DocumentInputEncoding = 114, // Removed from DOM4.
+        DocumentXMLEncoding = 115, // Removed from DOM4.
+        DocumentXMLStandalone = 116, // Removed from DOM4.
+        DocumentXMLVersion = 117, // Removed from DOM4.
+        NodeIsSameNode = 118, // Removed from DOM4.
+        NodeIsSupported = 119, // Removed from DOM4.
+        NodeNamespaceURI = 120, // Removed from DOM4.
+        NodeLocalName = 122, // Removed from DOM4.
+        NavigatorProductSub = 123,
+        NavigatorVendor = 124,
+        NavigatorVendorSub = 125,
+        FileError = 126,
+        DocumentCharset = 127, // Documented as IE extensions = 0, from KHTML days.
+        PrefixedAnimationEndEvent = 128,
+        UnprefixedAnimationEndEvent = 129,
+        PrefixedAndUnprefixedAnimationEndEvent = 130,
+        PrefixedAnimationStartEvent = 131,
+        UnprefixedAnimationStartEvent = 132,
+        PrefixedAndUnprefixedAnimationStartEvent = 133,
+        PrefixedAnimationIterationEvent = 134,
+        UnprefixedAnimationIterationEvent = 135,
+        PrefixedAndUnprefixedAnimationIterationEvent = 136,
+        EventReturnValue = 137, // Legacy IE extension.
+        SVGSVGElement = 138,
+        SVGAnimateColorElement = 139,
+        InsertAdjacentText = 140,
+        InsertAdjacentElement = 141,
+        HasAttributes = 142, // Removed from DOM4.
+        DOMSubtreeModifiedEvent = 143,
+        DOMNodeInsertedEvent = 144,
+        DOMNodeRemovedEvent = 145,
+        DOMNodeRemovedFromDocumentEvent = 146,
+        DOMNodeInsertedIntoDocumentEvent = 147,
+        DOMCharacterDataModifiedEvent = 148,
+        DocumentAllLegacyCall = 150,
+        HTMLAppletElementLegacyCall = 151,
+        HTMLEmbedElementLegacyCall = 152,
+        HTMLObjectElementLegacyCall = 153,
+        BeforeLoadEvent = 154,
+        GetMatchedCSSRules = 155,
+        SVGFontInCSS = 156,
+        ScrollTopBodyNotQuirksMode = 157,
+        ScrollLeftBodyNotQuirksMode = 158,
+        AttributeSpecified = 162, // Removed in DOM4.
+        BeforeLoadEventInIsolatedWorld = 163,
+        PrefixedAudioDecodedByteCount = 164,
+        PrefixedVideoDecodedByteCount = 165,
+        PrefixedVideoSupportsFullscreen = 166,
+        PrefixedVideoDisplayingFullscreen = 167,
+        PrefixedVideoEnterFullscreen = 168,
+        PrefixedVideoExitFullscreen = 169,
+        PrefixedVideoEnterFullScreen = 170,
+        PrefixedVideoExitFullScreen = 171,
+        PrefixedVideoDecodedFrameCount = 172,
+        PrefixedVideoDroppedFrameCount = 173,
+        PrefixedElementRequestFullscreen = 176,
+        PrefixedElementRequestFullScreen = 177,
+        BarPropLocationbar = 178,
+        BarPropMenubar = 179,
+        BarPropPersonalbar = 180,
+        BarPropScrollbars = 181,
+        BarPropStatusbar = 182,
+        BarPropToolbar = 183,
+        InputTypeEmailMultiple = 184,
+        InputTypeEmailMaxLength = 185,
+        InputTypeEmailMultipleMaxLength = 186,
+        TextTrackCueConstructor = 187,
+        CSSStyleDeclarationPropertyName = 188, // Removed in CSSOM.
+        CSSStyleDeclarationFloatPropertyName = 189, // Pending removal in CSSOM.
+        InputTypeText = 190,
+        InputTypeTextMaxLength = 191,
+        InputTypePassword = 192,
+        InputTypePasswordMaxLength = 193,
+        SVGInstanceRoot = 194,
+        ShowModalDialog = 195,
+        PrefixedPageVisibility = 196,
+        HTMLFrameElementLocation = 197,
+        CSSStyleSheetInsertRuleOptionalArg = 198, // Inconsistent with the specification and other browsers.
+        DocumentBeforeUnloadRegistered = 200,
+        DocumentBeforeUnloadFired = 201,
+        DocumentUnloadRegistered = 202,
+        DocumentUnloadFired = 203,
+        SVGLocatableNearestViewportElement = 204,
+        SVGLocatableFarthestViewportElement = 205,
+        IsIndexElement = 206,
+        HTMLHeadElementProfile = 207,
+        OverflowChangedEvent = 208,
+        SVGPointMatrixTransform = 209,
+        HTMLHtmlElementManifest = 210,
+        DOMFocusInOutEvent = 211,
+        FileGetLastModifiedDate = 212,
+        HTMLElementInnerText = 213,
+        HTMLElementOuterText = 214,
+        ReplaceDocumentViaJavaScriptURL = 215,
+        ElementPrefixedMatchesSelector = 217,
+        DOMImplementationCreateCSSStyleSheet = 218,
+        CSSStyleSheetRules = 219,
+        CSSStyleSheetAddRule = 220,
+        CSSStyleSheetRemoveRule = 221,
+        InitMessageEvent = 222,
+        PrefixedInitMessageEvent = 223,
+        ElementSetPrefix = 224, // Element.prefix is readonly in DOM4.
+        CSSStyleDeclarationGetPropertyCSSValue = 225,
+        SVGElementGetPresentationAttribute = 226,
+        PrefixedMediaCancelKeyRequest = 229,
+        DOMImplementationHasFeature = 230,
+        DOMImplementationHasFeatureReturnFalse = 231,
+        CanPlayTypeKeySystem = 232,
+        PrefixedDevicePixelRatioMediaFeature = 233,
+        PrefixedMaxDevicePixelRatioMediaFeature = 234,
+        PrefixedMinDevicePixelRatioMediaFeature = 235,
+        PrefixedTransform2dMediaFeature = 236,
+        PrefixedTransform3dMediaFeature = 237,
+        PrefixedAnimationMediaFeature = 238,
+        PrefixedViewModeMediaFeature = 239,
+        PrefixedStorageQuota = 240,
+        ContentSecurityPolicyReportOnlyInMeta = 241,
+        PrefixedMediaSourceOpen = 242,
+        ResetReferrerPolicy = 243,
+        CaseInsensitiveAttrSelectorMatch = 244, // Case-insensitivity dropped from specification.
+        CaptureAttributeAsBoolean = 245,
+        FormNameAccessForImageElement = 246,
+        FormNameAccessForPastNamesMap = 247,
+        FormAssociationByParser = 248,
+        HTMLSourceElementMedia = 249,
+        SVGSVGElementInDocument = 250,
+        SVGDocumentRootElement = 251,
+        DocumentCreateEventOptionalArgument = 252,
+        MediaErrorEncrypted = 253,
+        EventSourceURL = 254,
+        WebSocketURL = 255,
+        UnsafeEvalBlocksCSSOM = 256,
+        WorkerSubjectToCSP = 257,
+        WorkerAllowedByChildBlockedByScript = 258,
+        HTMLMediaElementControllerNotNull = 259,
+        DeprecatedWebKitGradient = 260,
+        DeprecatedWebKitLinearGradient = 261,
+        DeprecatedWebKitRepeatingLinearGradient = 262,
+        DeprecatedWebKitRadialGradient = 263,
+        DeprecatedWebKitRepeatingRadialGradient = 264,
+        PrefixedGetImageDataHD = 265,
+        PrefixedPutImageDataHD = 266,
+        PrefixedImageSmoothingEnabled = 267,
+        UnprefixedImageSmoothingEnabled = 268,
+        ShadowRootApplyAuthorStyles = 269,
+        PromiseConstructor = 270,
+        PromiseCast = 271,
+        PromiseReject = 272,
+        PromiseResolve = 273,
         // Add new features immediately above this line. Don't change assigned
         // numbers of any item, and don't reuse removed slots.
         NumberOfFeatures, // This enum value must be last.