Update HTML*Element class override methods in final classes
authorcommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 15 Jul 2016 02:17:24 +0000 (02:17 +0000)
committercommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 15 Jul 2016 02:17:24 +0000 (02:17 +0000)
https://bugs.webkit.org/show_bug.cgi?id=159456

Patch by Rawinder Singh <rawinder.singh-webkit@cisra.canon.com.au> on 2016-07-14
Reviewed by Youenn Fablet.

Update HTML*Element classes so that overriden methods in final classes are marked final.
Also marked HTMLDivElement overriden methods as final since they are not overridden by derived classes.

* html/HTMLAppletElement.h:
* html/HTMLAreaElement.h:
* html/HTMLAttachmentElement.h:
* html/HTMLAudioElement.h:
* html/HTMLBRElement.h:
* html/HTMLBaseElement.h:
* html/HTMLBodyElement.h:
* html/HTMLButtonElement.h:
* html/HTMLCanvasElement.h:
* html/HTMLDataElement.h:
* html/HTMLDetailsElement.h:
* html/HTMLDivElement.h:
* html/HTMLEmbedElement.h:
* html/HTMLFieldSetElement.h:
* html/HTMLFontElement.h:
* html/HTMLFormElement.h:
* html/HTMLFrameSetElement.h:
* html/HTMLHRElement.h:
* html/HTMLHtmlElement.h:
* html/HTMLKeygenElement.h:
* html/HTMLLIElement.h:
* html/HTMLLabelElement.h:
* html/HTMLLegendElement.h:
* html/HTMLLinkElement.h:
* html/HTMLMapElement.h:
* html/HTMLMarqueeElement.h:
* html/HTMLMetaElement.h:
* html/HTMLMeterElement.h:
* html/HTMLModElement.h:
* html/HTMLOListElement.h:
* html/HTMLObjectElement.h:
* html/HTMLOptGroupElement.h:
* html/HTMLOptionElement.h:
* html/HTMLOutputElement.h:
* html/HTMLParagraphElement.h:
* html/HTMLParamElement.h:
* html/HTMLPreElement.h:
* html/HTMLProgressElement.h:
* html/HTMLQuoteElement.h:
* html/HTMLScriptElement.h:
* html/HTMLSourceElement.h:
* html/HTMLStyleElement.h:
* html/HTMLSummaryElement.h:
* html/HTMLTableCaptionElement.h:
* html/HTMLTableColElement.h:
* html/HTMLTableElement.h:
* html/HTMLTableSectionElement.h:
* html/HTMLTemplateElement.h:
* html/HTMLTextAreaElement.h:
* html/HTMLTitleElement.h:
* html/HTMLUListElement.h:
* html/HTMLUnknownElement.h:
* html/HTMLVideoElement.h:
* html/HTMLWBRElement.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@203264 268f45cc-cd09-0410-ab3c-d52691b4dbfc

55 files changed:
Source/WebCore/ChangeLog
Source/WebCore/html/HTMLAppletElement.h
Source/WebCore/html/HTMLAreaElement.h
Source/WebCore/html/HTMLAttachmentElement.h
Source/WebCore/html/HTMLAudioElement.h
Source/WebCore/html/HTMLBRElement.h
Source/WebCore/html/HTMLBaseElement.h
Source/WebCore/html/HTMLBodyElement.h
Source/WebCore/html/HTMLButtonElement.h
Source/WebCore/html/HTMLCanvasElement.h
Source/WebCore/html/HTMLDataElement.h
Source/WebCore/html/HTMLDetailsElement.h
Source/WebCore/html/HTMLDivElement.h
Source/WebCore/html/HTMLEmbedElement.h
Source/WebCore/html/HTMLFieldSetElement.h
Source/WebCore/html/HTMLFontElement.h
Source/WebCore/html/HTMLFormElement.h
Source/WebCore/html/HTMLFrameSetElement.h
Source/WebCore/html/HTMLHRElement.h
Source/WebCore/html/HTMLHtmlElement.h
Source/WebCore/html/HTMLKeygenElement.h
Source/WebCore/html/HTMLLIElement.h
Source/WebCore/html/HTMLLabelElement.h
Source/WebCore/html/HTMLLegendElement.h
Source/WebCore/html/HTMLLinkElement.h
Source/WebCore/html/HTMLMapElement.h
Source/WebCore/html/HTMLMarqueeElement.h
Source/WebCore/html/HTMLMetaElement.h
Source/WebCore/html/HTMLMeterElement.h
Source/WebCore/html/HTMLModElement.h
Source/WebCore/html/HTMLOListElement.h
Source/WebCore/html/HTMLObjectElement.h
Source/WebCore/html/HTMLOptGroupElement.h
Source/WebCore/html/HTMLOptionElement.h
Source/WebCore/html/HTMLOutputElement.h
Source/WebCore/html/HTMLParagraphElement.h
Source/WebCore/html/HTMLParamElement.h
Source/WebCore/html/HTMLPreElement.h
Source/WebCore/html/HTMLProgressElement.h
Source/WebCore/html/HTMLQuoteElement.h
Source/WebCore/html/HTMLScriptElement.h
Source/WebCore/html/HTMLSourceElement.h
Source/WebCore/html/HTMLStyleElement.h
Source/WebCore/html/HTMLSummaryElement.h
Source/WebCore/html/HTMLTableCaptionElement.h
Source/WebCore/html/HTMLTableColElement.h
Source/WebCore/html/HTMLTableElement.h
Source/WebCore/html/HTMLTableSectionElement.h
Source/WebCore/html/HTMLTemplateElement.h
Source/WebCore/html/HTMLTextAreaElement.h
Source/WebCore/html/HTMLTitleElement.h
Source/WebCore/html/HTMLUListElement.h
Source/WebCore/html/HTMLUnknownElement.h
Source/WebCore/html/HTMLVideoElement.h
Source/WebCore/html/HTMLWBRElement.h

index 02b9d79..c19b449 100644 (file)
@@ -1,3 +1,68 @@
+2016-07-14  Rawinder Singh  <rawinder.singh-webkit@cisra.canon.com.au>
+
+        Update HTML*Element class override methods in final classes
+        https://bugs.webkit.org/show_bug.cgi?id=159456
+
+        Reviewed by Youenn Fablet.
+
+        Update HTML*Element classes so that overriden methods in final classes are marked final.
+        Also marked HTMLDivElement overriden methods as final since they are not overridden by derived classes.
+
+        * html/HTMLAppletElement.h:
+        * html/HTMLAreaElement.h:
+        * html/HTMLAttachmentElement.h:
+        * html/HTMLAudioElement.h:
+        * html/HTMLBRElement.h:
+        * html/HTMLBaseElement.h:
+        * html/HTMLBodyElement.h:
+        * html/HTMLButtonElement.h:
+        * html/HTMLCanvasElement.h:
+        * html/HTMLDataElement.h:
+        * html/HTMLDetailsElement.h:
+        * html/HTMLDivElement.h:
+        * html/HTMLEmbedElement.h:
+        * html/HTMLFieldSetElement.h:
+        * html/HTMLFontElement.h:
+        * html/HTMLFormElement.h:
+        * html/HTMLFrameSetElement.h:
+        * html/HTMLHRElement.h:
+        * html/HTMLHtmlElement.h:
+        * html/HTMLKeygenElement.h:
+        * html/HTMLLIElement.h:
+        * html/HTMLLabelElement.h:
+        * html/HTMLLegendElement.h:
+        * html/HTMLLinkElement.h:
+        * html/HTMLMapElement.h:
+        * html/HTMLMarqueeElement.h:
+        * html/HTMLMetaElement.h:
+        * html/HTMLMeterElement.h:
+        * html/HTMLModElement.h:
+        * html/HTMLOListElement.h:
+        * html/HTMLObjectElement.h:
+        * html/HTMLOptGroupElement.h:
+        * html/HTMLOptionElement.h:
+        * html/HTMLOutputElement.h:
+        * html/HTMLParagraphElement.h:
+        * html/HTMLParamElement.h:
+        * html/HTMLPreElement.h:
+        * html/HTMLProgressElement.h:
+        * html/HTMLQuoteElement.h:
+        * html/HTMLScriptElement.h:
+        * html/HTMLSourceElement.h:
+        * html/HTMLStyleElement.h:
+        * html/HTMLSummaryElement.h:
+        * html/HTMLTableCaptionElement.h:
+        * html/HTMLTableColElement.h:
+        * html/HTMLTableElement.h:
+        * html/HTMLTableSectionElement.h:
+        * html/HTMLTemplateElement.h:
+        * html/HTMLTextAreaElement.h:
+        * html/HTMLTitleElement.h:
+        * html/HTMLUListElement.h:
+        * html/HTMLUnknownElement.h:
+        * html/HTMLVideoElement.h:
+        * html/HTMLWBRElement.h:
+
 2016-07-14  Chris Dumez  <cdumez@apple.com>
 
         Modernize GlyphMetricsMap
index 7f74d11..9299ba4 100644 (file)
@@ -34,13 +34,13 @@ public:
 private:
     HTMLAppletElement(const QualifiedName&, Document&, bool createdByParser);
 
-    void parseAttribute(const QualifiedName&, const AtomicString&) override;
+    void parseAttribute(const QualifiedName&, const AtomicString&) final;
     
-    bool rendererIsNeeded(const RenderStyle&) override;
-    RenderPtr<RenderElement> createElementRenderer(RenderStyle&&, const RenderTreePosition&) override;
+    bool rendererIsNeeded(const RenderStyle&) final;
+    RenderPtr<RenderElement> createElementRenderer(RenderStyle&&, const RenderTreePosition&) final;
 
-    RenderWidget* renderWidgetLoadingPlugin() const override;
-    void updateWidget(PluginCreationOption) override;
+    RenderWidget* renderWidgetLoadingPlugin() const final;
+    void updateWidget(PluginCreationOption) final;
 
     bool canEmbedJava() const;
 };
index 436c287..934dd43 100644 (file)
@@ -52,14 +52,14 @@ public:
 private:
     HTMLAreaElement(const QualifiedName&, Document&);
 
-    void parseAttribute(const QualifiedName&, const AtomicString&) override;
-    bool supportsFocus() const override;
-    String target() const override;
-    bool isKeyboardFocusable(KeyboardEvent*) const override;
-    bool isMouseFocusable() const override;
-    bool isFocusable() const override;
-    void updateFocusAppearance(SelectionRestorationMode, SelectionRevealMode) override;
-    void setFocus(bool) override;
+    void parseAttribute(const QualifiedName&, const AtomicString&) final;
+    bool supportsFocus() const final;
+    String target() const final;
+    bool isKeyboardFocusable(KeyboardEvent*) const final;
+    bool isMouseFocusable() const final;
+    bool isFocusable() const final;
+    void updateFocusAppearance(SelectionRestorationMode, SelectionRevealMode) final;
+    void setFocus(bool) final;
 
     enum Shape { Default, Poly, Rect, Circle, Unknown };
     Path getRegion(const LayoutSize&) const;
index 71ef99e..9ac6b6a 100644 (file)
@@ -50,17 +50,17 @@ private:
     HTMLAttachmentElement(const QualifiedName&, Document&);
     virtual ~HTMLAttachmentElement();
 
-    RenderPtr<RenderElement> createElementRenderer(RenderStyle&&, const RenderTreePosition&) override;
+    RenderPtr<RenderElement> createElementRenderer(RenderStyle&&, const RenderTreePosition&) final;
 
-    bool shouldSelectOnMouseDown() override {
+    bool shouldSelectOnMouseDown() final {
 #if PLATFORM(IOS)
         return false;
 #else
         return true;
 #endif
     }
-    bool canContainRangeEndPoint() const override { return false; }
-    void parseAttribute(const QualifiedName&, const AtomicString&) override;
+    bool canContainRangeEndPoint() const final { return false; }
+    void parseAttribute(const QualifiedName&, const AtomicString&) final;
     
     RefPtr<File> m_file;
 };
index f8e8011..31f7c96 100644 (file)
@@ -42,7 +42,7 @@ public:
 private:
     HTMLAudioElement(const QualifiedName&, Document&, bool);
 
-    PlatformMediaSession::MediaType presentationType() const override { return PlatformMediaSession::Audio; }
+    PlatformMediaSession::MediaType presentationType() const final { return PlatformMediaSession::Audio; }
 };
 
 } // namespace WebCore
index fda90a7..656c0c0 100644 (file)
@@ -33,15 +33,15 @@ public:
     static Ref<HTMLBRElement> create(Document&);
     static Ref<HTMLBRElement> create(const QualifiedName&, Document&);
 
-    bool canContainRangeEndPoint() const override { return false; }
+    bool canContainRangeEndPoint() const final { return false; }
 
 private:
     HTMLBRElement(const QualifiedName&, Document&);
 
-    bool isPresentationAttribute(const QualifiedName&) const override;
-    void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStyleProperties&) override;
+    bool isPresentationAttribute(const QualifiedName&) const final;
+    void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStyleProperties&) final;
 
-    RenderPtr<RenderElement> createElementRenderer(RenderStyle&&, const RenderTreePosition&) override;
+    RenderPtr<RenderElement> createElementRenderer(RenderStyle&&, const RenderTreePosition&) final;
 };
 
 } // namespace
index a37c949..b02a345 100644 (file)
@@ -37,11 +37,11 @@ public:
 private:
     HTMLBaseElement(const QualifiedName&, Document&);
 
-    String target() const override;
-    bool isURLAttribute(const Attribute&) const override;
-    void parseAttribute(const QualifiedName&, const AtomicString&) override;
-    InsertionNotificationRequest insertedInto(ContainerNode&) override;
-    void removedFrom(ContainerNode&) override;
+    String target() const final;
+    bool isURLAttribute(const Attribute&) const final;
+    void parseAttribute(const QualifiedName&, const AtomicString&) final;
+    InsertionNotificationRequest insertedInto(ContainerNode&) final;
+    void removedFrom(ContainerNode&) final;
 };
 
 } // namespace
index eec886e..e7a6f7c 100644 (file)
@@ -41,26 +41,26 @@ private:
 
     bool isFirstBodyElementOfDocument() const;
 
-    void parseAttribute(const QualifiedName&, const AtomicString&) override;
-    bool isPresentationAttribute(const QualifiedName&) const override;
-    void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStyleProperties&) override;
+    void parseAttribute(const QualifiedName&, const AtomicString&) final;
+    bool isPresentationAttribute(const QualifiedName&) const final;
+    void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStyleProperties&) final;
 
-    InsertionNotificationRequest insertedInto(ContainerNode&) override;
+    InsertionNotificationRequest insertedInto(ContainerNode&) final;
 
-    bool isURLAttribute(const Attribute&) const override;
+    bool isURLAttribute(const Attribute&) const final;
     
-    bool supportsFocus() const override;
+    bool supportsFocus() const final;
 
-    int scrollLeft() override;
-    void setScrollLeft(int) override;
+    int scrollLeft() final;
+    void setScrollLeft(int) final;
     
-    int scrollTop() override;
-    void setScrollTop(int) override;
+    int scrollTop() final;
+    void setScrollTop(int) final;
     
-    int scrollHeight() override;
-    int scrollWidth() override;
+    int scrollHeight() final;
+    int scrollWidth() final;
     
-    void addSubresourceAttributeURLs(ListHashSet<URL>&) const override;
+    void addSubresourceAttributeURLs(ListHashSet<URL>&) const final;
 
     static EventHandlerNameMap createWindowEventHandlerNameMap();
 };
index c83ec3b..cd2213e 100644 (file)
@@ -37,7 +37,7 @@ public:
     
     const AtomicString& value() const;
 
-    bool willRespondToMouseClickEvents() override;
+    bool willRespondToMouseClickEvents() final;
 
     RenderButton* renderer() const;
 
@@ -46,34 +46,34 @@ private:
 
     enum Type { SUBMIT, RESET, BUTTON };
 
-    const AtomicString& formControlType() const override;
+    const AtomicString& formControlType() const final;
 
-    RenderPtr<RenderElement> createElementRenderer(RenderStyle&&, const RenderTreePosition&) override;
+    RenderPtr<RenderElement> createElementRenderer(RenderStyle&&, const RenderTreePosition&) final;
 
     // HTMLFormControlElement always creates one, but buttons don't need it.
-    bool alwaysCreateUserAgentShadowRoot() const override { return false; }
+    bool alwaysCreateUserAgentShadowRoot() const final { return false; }
 
-    void parseAttribute(const QualifiedName&, const AtomicString&) override;
-    bool isPresentationAttribute(const QualifiedName&) const override;
-    void defaultEventHandler(Event*) override;
+    void parseAttribute(const QualifiedName&, const AtomicString&) final;
+    bool isPresentationAttribute(const QualifiedName&) const final;
+    void defaultEventHandler(Event*) final;
 
-    bool appendFormData(FormDataList&, bool) override;
+    bool appendFormData(FormDataList&, bool) final;
 
-    bool isEnumeratable() const override { return true; }
-    bool supportLabels() const override { return true; }
+    bool isEnumeratable() const final { return true; }
+    bool supportLabels() const final { return true; }
 
-    bool isSuccessfulSubmitButton() const override;
-    bool matchesDefaultPseudoClass() const override;
-    bool isActivatedSubmit() const override;
-    void setActivatedSubmit(bool flag) override;
+    bool isSuccessfulSubmitButton() const final;
+    bool matchesDefaultPseudoClass() const final;
+    bool isActivatedSubmit() const final;
+    void setActivatedSubmit(bool flag) final;
 
-    void accessKeyAction(bool sendMouseEvents) override;
-    bool isURLAttribute(const Attribute&) const override;
+    void accessKeyAction(bool sendMouseEvents) final;
+    bool isURLAttribute(const Attribute&) const final;
 
-    bool canStartSelection() const override { return false; }
+    bool canStartSelection() const final { return false; }
 
-    bool isOptionalFormControl() const override { return true; }
-    bool computeWillValidate() const override;
+    bool isOptionalFormControl() const final { return true; }
+    bool computeWillValidate() const final;
 
     Type m_type;
     bool m_isActivatedSubmit;
index 92f269c..10ea943 100644 (file)
@@ -141,11 +141,11 @@ public:
 private:
     HTMLCanvasElement(const QualifiedName&, Document&);
 
-    void parseAttribute(const QualifiedName&, const AtomicString&) override;
-    RenderPtr<RenderElement> createElementRenderer(RenderStyle&&, const RenderTreePosition&) override;
+    void parseAttribute(const QualifiedName&, const AtomicString&) final;
+    RenderPtr<RenderElement> createElementRenderer(RenderStyle&&, const RenderTreePosition&) final;
 
-    bool canContainRangeEndPoint() const override;
-    bool canStartSelection() const override;
+    bool canContainRangeEndPoint() const final;
+    bool canStartSelection() const final;
 
     void reset();
 
index aa1afa2..d2ecc31 100644 (file)
@@ -30,7 +30,7 @@
 
 namespace WebCore {
 
-class HTMLDataElement : public HTMLElement {
+class HTMLDataElement final : public HTMLElement {
 public:
     static Ref<HTMLDataElement> create(const QualifiedName&, Document&);
 
index f3d6b74..ec50521 100644 (file)
@@ -38,10 +38,10 @@ public:
 private:
     HTMLDetailsElement(const QualifiedName&, Document&);
 
-    RenderPtr<RenderElement> createElementRenderer(RenderStyle&&, const RenderTreePosition&) override;
-    void parseAttribute(const QualifiedName&, const AtomicString&) override;
+    RenderPtr<RenderElement> createElementRenderer(RenderStyle&&, const RenderTreePosition&) final;
+    void parseAttribute(const QualifiedName&, const AtomicString&) final;
 
-    void didAddUserAgentShadowRoot(ShadowRoot*) override;
+    void didAddUserAgentShadowRoot(ShadowRoot*) final;
     bool hasCustomFocusLogic() const final { return true; }
 
     bool m_isOpen { false };
index d96f870..c9727c2 100644 (file)
@@ -36,8 +36,8 @@ protected:
     HTMLDivElement(const QualifiedName&, Document&);
 
 private:
-    bool isPresentationAttribute(const QualifiedName&) const override;
-    void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStyleProperties&) override;
+    bool isPresentationAttribute(const QualifiedName&) const final;
+    void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStyleProperties&) final;
 };
 
 } // namespace WebCore
index 78d163a..73209ce 100644 (file)
@@ -34,20 +34,20 @@ public:
 private:
     HTMLEmbedElement(const QualifiedName&, Document&, bool createdByParser);
 
-    void parseAttribute(const QualifiedName&, const AtomicString&) override;
-    bool isPresentationAttribute(const QualifiedName&) const override;
-    void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStyleProperties&) override;
+    void parseAttribute(const QualifiedName&, const AtomicString&) final;
+    bool isPresentationAttribute(const QualifiedName&) const final;
+    void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStyleProperties&) final;
 
-    bool rendererIsNeeded(const RenderStyle&) override;
+    bool rendererIsNeeded(const RenderStyle&) final;
 
-    bool isURLAttribute(const Attribute&) const override;
-    const AtomicString& imageSourceURL() const override;
+    bool isURLAttribute(const Attribute&) const final;
+    const AtomicString& imageSourceURL() const final;
 
-    RenderWidget* renderWidgetLoadingPlugin() const override;
+    RenderWidget* renderWidgetLoadingPlugin() const final;
 
-    void updateWidget(PluginCreationOption) override;
+    void updateWidget(PluginCreationOption) final;
 
-    void addSubresourceAttributeURLs(ListHashSet<URL>&) const override;
+    void addSubresourceAttributeURLs(ListHashSet<URL>&) const final;
 
     void parametersForPlugin(Vector<String>& paramNames, Vector<String>& paramValues);
 };
index ce7add1..435ab0f 100644 (file)
@@ -53,18 +53,18 @@ private:
     HTMLFieldSetElement(const QualifiedName&, Document&, HTMLFormElement*);
     ~HTMLFieldSetElement();
 
-    bool isEnumeratable() const override { return true; }
-    bool supportsFocus() const override;
-    RenderPtr<RenderElement> createElementRenderer(RenderStyle&&, const RenderTreePosition&) override;
-    const AtomicString& formControlType() const override;
-    bool computeWillValidate() const override { return false; }
-    void disabledAttributeChanged() override;
-    void disabledStateChanged() override;
-    void childrenChanged(const ChildChange&) override;
-    void didMoveToNewDocument(Document* oldDocument) override;
-
-    bool matchesValidPseudoClass() const override;
-    bool matchesInvalidPseudoClass() const override;
+    bool isEnumeratable() const final { return true; }
+    bool supportsFocus() const final;
+    RenderPtr<RenderElement> createElementRenderer(RenderStyle&&, const RenderTreePosition&) final;
+    const AtomicString& formControlType() const final;
+    bool computeWillValidate() const final { return false; }
+    void disabledAttributeChanged() final;
+    void disabledStateChanged() final;
+    void childrenChanged(const ChildChange&) final;
+    void didMoveToNewDocument(Document* oldDocument) final;
+
+    bool matchesValidPseudoClass() const final;
+    bool matchesInvalidPseudoClass() const final;
 
     void updateAssociatedElements() const;
 
index db403d5..a60c39f 100644 (file)
@@ -37,8 +37,8 @@ public:
 private:
     HTMLFontElement(const QualifiedName&, Document&);
 
-    bool isPresentationAttribute(const QualifiedName&) const override;
-    void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStyleProperties&) override;
+    bool isPresentationAttribute(const QualifiedName&) const final;
+    void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStyleProperties&) final;
 };
 
 } // namespace
index b7b7c7b..28a66cd 100644 (file)
@@ -111,7 +111,7 @@ public:
     String method() const;
     void setMethod(const String&);
 
-    String target() const override;
+    String target() const final;
 
     bool wasUserSubmitted() const;
 
@@ -144,21 +144,21 @@ public:
 private:
     HTMLFormElement(const QualifiedName&, Document&);
 
-    bool rendererIsNeeded(const RenderStyle&) override;
-    InsertionNotificationRequest insertedInto(ContainerNode&) override;
-    void removedFrom(ContainerNode&) override;
-    void finishParsingChildren() override;
+    bool rendererIsNeeded(const RenderStyle&) final;
+    InsertionNotificationRequest insertedInto(ContainerNode&) final;
+    void removedFrom(ContainerNode&) final;
+    void finishParsingChildren() final;
 
-    void handleLocalEvents(Event&) override;
+    void handleLocalEvents(Event&) final;
 
-    void parseAttribute(const QualifiedName&, const AtomicString&) override;
-    bool isURLAttribute(const Attribute&) const override;
+    void parseAttribute(const QualifiedName&, const AtomicString&) final;
+    bool isURLAttribute(const Attribute&) const final;
 
-    void resumeFromDocumentSuspension() override;
+    void resumeFromDocumentSuspension() final;
 
-    void didMoveToNewDocument(Document* oldDocument) override;
+    void didMoveToNewDocument(Document* oldDocument) final;
 
-    void copyNonAttributePropertiesFromElement(const Element&) override;
+    void copyNonAttributePropertiesFromElement(const Element&) final;
 
     void submit(Event*, bool activateSubmitButton, bool processingUserGesture, FormSubmissionTrigger);
 
@@ -178,8 +178,8 @@ private:
     void assertItemCanBeInPastNamesMap(FormNamedItem*) const;
     void removeFromPastNamesMap(FormNamedItem*);
 
-    bool matchesValidPseudoClass() const override;
-    bool matchesInvalidPseudoClass() const override;
+    bool matchesValidPseudoClass() const final;
+    bool matchesInvalidPseudoClass() const final;
 
     typedef HashMap<RefPtr<AtomicStringImpl>, FormNamedItem*> PastNamesMap;
 
index 113da2d..d3d2e87 100644 (file)
@@ -50,20 +50,20 @@ public:
 private:
     HTMLFrameSetElement(const QualifiedName&, Document&);
 
-    void parseAttribute(const QualifiedName&, const AtomicString&) override;
-    bool isPresentationAttribute(const QualifiedName&) const override;
-    void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStyleProperties&) override;
+    void parseAttribute(const QualifiedName&, const AtomicString&) final;
+    bool isPresentationAttribute(const QualifiedName&) const final;
+    void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStyleProperties&) final;
 
-    void willAttachRenderers() override;
-    bool rendererIsNeeded(const RenderStyle&) override;
-    RenderPtr<RenderElement> createElementRenderer(RenderStyle&&, const RenderTreePosition&) override;
+    void willAttachRenderers() final;
+    bool rendererIsNeeded(const RenderStyle&) final;
+    RenderPtr<RenderElement> createElementRenderer(RenderStyle&&, const RenderTreePosition&) final;
     
-    void defaultEventHandler(Event*) override;
+    void defaultEventHandler(Event*) final;
 
-    bool willRecalcStyle(Style::Change) override;
+    bool willRecalcStyle(Style::Change) final;
 
-    InsertionNotificationRequest insertedInto(ContainerNode&) override;
-    void removedFrom(ContainerNode&) override;
+    InsertionNotificationRequest insertedInto(ContainerNode&) final;
+    void removedFrom(ContainerNode&) final;
 
     std::unique_ptr<Length[]> m_rowLengths;
     std::unique_ptr<Length[]> m_colLengths;
index fcfe987..c686e1d 100644 (file)
@@ -35,9 +35,9 @@ public:
 private:
     HTMLHRElement(const QualifiedName&, Document&);
 
-    bool isPresentationAttribute(const QualifiedName&) const override;
-    void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStyleProperties&) override;
-    bool canContainRangeEndPoint() const override;
+    bool isPresentationAttribute(const QualifiedName&) const final;
+    void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStyleProperties&) final;
+    bool canContainRangeEndPoint() const final;
 };
 
 } // namespace WebCore
index 2cc219f..53fc064 100644 (file)
@@ -38,7 +38,7 @@ public:
 private:
     HTMLHtmlElement(const QualifiedName&, Document&);
 
-    bool isURLAttribute(const Attribute&) const override;
+    bool isURLAttribute(const Attribute&) const final;
 };
 
 } // namespace
index e3b3330..3cdf42e 100644 (file)
@@ -40,20 +40,20 @@ public:
 private:
     HTMLKeygenElement(const QualifiedName&, Document&, HTMLFormElement*);
 
-    bool computeWillValidate() const override { return false; }
-    bool canStartSelection() const override { return false; }
+    bool computeWillValidate() const final { return false; }
+    bool canStartSelection() const final { return false; }
 
-    void parseAttribute(const QualifiedName&, const AtomicString&) override;
+    void parseAttribute(const QualifiedName&, const AtomicString&) final;
 
-    bool appendFormData(FormDataList&, bool) override;
-    const AtomicString& formControlType() const override;
-    bool isOptionalFormControl() const override { return false; }
+    bool appendFormData(FormDataList&, bool) final;
+    const AtomicString& formControlType() const final;
+    bool isOptionalFormControl() const final { return false; }
 
-    bool isEnumeratable() const override { return true; }
-    bool supportLabels() const override { return true; }
+    bool isEnumeratable() const final { return true; }
+    bool supportLabels() const final { return true; }
 
-    void reset() override;
-    bool shouldSaveAndRestoreFormControlState() const override;
+    void reset() final;
+    bool shouldSaveAndRestoreFormControlState() const final;
 
     bool isKeytypeRSA() const;
 
index 06d392f..fe3d8ea 100644 (file)
@@ -35,11 +35,11 @@ public:
 private:
     HTMLLIElement(const QualifiedName&, Document&);
 
-    void parseAttribute(const QualifiedName&, const AtomicString&) override;
-    bool isPresentationAttribute(const QualifiedName&) const override;
-    void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStyleProperties&) override;
+    void parseAttribute(const QualifiedName&, const AtomicString&) final;
+    bool isPresentationAttribute(const QualifiedName&) const final;
+    void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStyleProperties&) final;
 
-    void didAttachRenderers() override;
+    void didAttachRenderers() final;
 
     void parseValue(const AtomicString&);
 };
index 255edd1..0bf03a7 100644 (file)
@@ -36,23 +36,23 @@ public:
     LabelableElement* control();
     HTMLFormElement* form() const;
 
-    bool willRespondToMouseClickEvents() override;
+    bool willRespondToMouseClickEvents() final;
 
 private:
     HTMLLabelElement(const QualifiedName&, Document&);
 
-    bool isFocusable() const override;
+    bool isFocusable() const final;
 
-    void accessKeyAction(bool sendMouseEvents) override;
+    void accessKeyAction(bool sendMouseEvents) final;
 
     // Overridden to update the hover/active state of the corresponding control.
-    void setActive(bool = true, bool pause = false) override;
-    void setHovered(bool = true) override;
+    void setActive(bool = true, bool pause = false) final;
+    void setHovered(bool = true) final;
 
     // Overridden to either click() or focus() the corresponding control.
-    void defaultEventHandler(Event*) override;
+    void defaultEventHandler(Event*) final;
 
-    void focus(bool restorePreviousSelection, FocusDirection) override;
+    void focus(bool restorePreviousSelection, FocusDirection) final;
 };
 
 } //namespace
index 5521641..70898a5 100644 (file)
@@ -40,9 +40,9 @@ private:
     // Control in the legend's fieldset that gets focus and access key.
     HTMLFormControlElement* associatedControl();
 
-    void accessKeyAction(bool sendMouseEvents) override;
-    void focus(bool restorePreviousSelection, FocusDirection) override;
-    HTMLFormElement* virtualForm() const override;
+    void accessKeyAction(bool sendMouseEvents) final;
+    void focus(bool restorePreviousSelection, FocusDirection) final;
+    HTMLFormElement* virtualForm() const final;
 };
 
 } //namespace
index 1b1b1ce..63e5fe9 100644 (file)
@@ -50,7 +50,7 @@ public:
     URL href() const;
     const AtomicString& rel() const;
 
-    String target() const override;
+    String target() const final;
 
     const AtomicString& type() const;
 
@@ -76,39 +76,39 @@ public:
     DOMTokenList& relList();
 
 private:
-    void parseAttribute(const QualifiedName&, const AtomicString&) override;
+    void parseAttribute(const QualifiedName&, const AtomicString&) final;
 
-    bool shouldLoadLink() override;
+    bool shouldLoadLink() final;
     void process();
     static void processCallback(Node*);
     void clearSheet();
 
-    InsertionNotificationRequest insertedInto(ContainerNode&) override;
-    void removedFrom(ContainerNode&) override;
+    InsertionNotificationRequest insertedInto(ContainerNode&) final;
+    void removedFrom(ContainerNode&) final;
 
     // from CachedResourceClient
-    void setCSSStyleSheet(const String& href, const URL& baseURL, const String& charset, const CachedCSSStyleSheet* sheet) override;
-    bool sheetLoaded() override;
-    void notifyLoadedSheetAndAllCriticalSubresources(bool errorOccurred) override;
-    void startLoadingDynamicSheet() override;
+    void setCSSStyleSheet(const String& href, const URL& baseURL, const String& charset, const CachedCSSStyleSheet*) final;
+    bool sheetLoaded() final;
+    void notifyLoadedSheetAndAllCriticalSubresources(bool errorOccurred) final;
+    void startLoadingDynamicSheet() final;
 
-    void linkLoaded() override;
-    void linkLoadingErrored() override;
+    void linkLoaded() final;
+    void linkLoadingErrored() final;
 
     bool isAlternate() const { return m_disabledState == Unset && m_relAttribute.isAlternate; }
     
     void setDisabledState(bool);
 
-    bool isURLAttribute(const Attribute&) const override;
+    bool isURLAttribute(const Attribute&) const final;
 
-    void defaultEventHandler(Event*) override;
+    void defaultEventHandler(Event*) final;
     void handleClick(Event&);
 
     HTMLLinkElement(const QualifiedName&, Document&, bool createdByParser);
 
-    void addSubresourceAttributeURLs(ListHashSet<URL>&) const override;
+    void addSubresourceAttributeURLs(ListHashSet<URL>&) const final;
 
-    void finishParsingChildren() override;
+    void finishParsingChildren() final;
 
     enum PendingSheetType { Unknown, ActiveSheet, InactiveSheet };
     void addPendingSheet(PendingSheetType);
index 6ab6082..c662674 100644 (file)
@@ -46,10 +46,10 @@ public:
 private:
     HTMLMapElement(const QualifiedName&, Document&);
 
-    void parseAttribute(const QualifiedName&, const AtomicString&) override;
+    void parseAttribute(const QualifiedName&, const AtomicString&) final;
 
-    InsertionNotificationRequest insertedInto(ContainerNode&) override;
-    void removedFrom(ContainerNode&) override;
+    InsertionNotificationRequest insertedInto(ContainerNode&) final;
+    void removedFrom(ContainerNode&) final;
 
     AtomicString m_name;
 };
index 21ef68a..8701c65 100644 (file)
@@ -39,7 +39,7 @@ public:
     // DOM Functions
 
     void start();
-    void stop() override;
+    void stop() final;
     
     unsigned scrollAmount() const;
     void setScrollAmount(unsigned);
@@ -53,14 +53,14 @@ public:
 private:
     HTMLMarqueeElement(const QualifiedName&, Document&);
 
-    bool isPresentationAttribute(const QualifiedName&) const override;
-    void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStyleProperties&) override;
+    bool isPresentationAttribute(const QualifiedName&) const final;
+    void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStyleProperties&) final;
 
     // ActiveDOMObject
-    bool canSuspendForDocumentSuspension() const override;
-    void suspend(ReasonForSuspension) override;
-    void resume() override;
-    const char* activeDOMObjectName() const override { return "HTMLMarqueeElement"; }
+    bool canSuspendForDocumentSuspension() const final;
+    void suspend(ReasonForSuspension) final;
+    void resume() final;
+    const char* activeDOMObjectName() const final { return "HTMLMarqueeElement"; }
 
     RenderMarquee* renderMarquee() const;
 };
index 718d584..531d5c5 100644 (file)
@@ -38,8 +38,8 @@ public:
 private:
     HTMLMetaElement(const QualifiedName&, Document&);
 
-    void parseAttribute(const QualifiedName&, const AtomicString&) override;
-    InsertionNotificationRequest insertedInto(ContainerNode&) override;
+    void parseAttribute(const QualifiedName&, const AtomicString&) final;
+    InsertionNotificationRequest insertedInto(ContainerNode&) final;
 
     void process();
 };
index ad1ce0e..1c1830c 100644 (file)
@@ -60,7 +60,7 @@ public:
     double valueRatio() const;
     GaugeRegion gaugeRegion() const;
 
-    bool canContainRangeEndPoint() const override { return false; }
+    bool canContainRangeEndPoint() const final { return false; }
 
 private:
     HTMLMeterElement(const QualifiedName&, Document&);
@@ -68,14 +68,14 @@ private:
 
     RenderMeter* renderMeter() const;
 
-    bool supportLabels() const override { return true; }
+    bool supportLabels() const final { return true; }
 
-    RenderPtr<RenderElement> createElementRenderer(RenderStyle&&, const RenderTreePosition&) override;
-    bool childShouldCreateRenderer(const Node&) const override;
-    void parseAttribute(const QualifiedName&, const AtomicString&) override;
+    RenderPtr<RenderElement> createElementRenderer(RenderStyle&&, const RenderTreePosition&) final;
+    bool childShouldCreateRenderer(const Node&) const final;
+    void parseAttribute(const QualifiedName&, const AtomicString&) final;
 
     void didElementStateChange();
-    void didAddUserAgentShadowRoot(ShadowRoot*) override;
+    void didAddUserAgentShadowRoot(ShadowRoot*) final;
 
     RefPtr<MeterValueElement> m_value;
 };
index 9b68d49..7fab4ab 100644 (file)
@@ -35,7 +35,7 @@ public:
 private:
     HTMLModElement(const QualifiedName&, Document&);
 
-    bool isURLAttribute(const Attribute&) const override;
+    bool isURLAttribute(const Attribute&) const final;
 };
 
 } //namespace
index 3d3c989..59f48db 100644 (file)
@@ -54,9 +54,9 @@ private:
 
     void recalculateItemCount();
 
-    void parseAttribute(const QualifiedName&, const AtomicString&) override;
-    bool isPresentationAttribute(const QualifiedName&) const override;
-    void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStyleProperties&) override;
+    void parseAttribute(const QualifiedName&, const AtomicString&) final;
+    bool isPresentationAttribute(const QualifiedName&) const final;
+    void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStyleProperties&) final;
 
     Optional<int> m_start;
     unsigned m_itemCount;
index f8407be..1136d20 100644 (file)
@@ -39,16 +39,16 @@ public:
     bool containsJavaApplet() const;
 
     bool hasFallbackContent() const;
-    bool useFallbackContent() const override { return m_useFallbackContent; }
+    bool useFallbackContent() const final { return m_useFallbackContent; }
     void renderFallbackContent();
 
-    bool willValidate() const override { return false; }
+    bool willValidate() const final { return false; }
 
     // Implementation of constraint validation API.
     // Note that the object elements are always barred from constraint validation.
     static bool checkValidity() { return true; }
-    void setCustomValidity(const String&) override { }
-    String validationMessage() const override { return String(); }
+    void setCustomValidity(const String&) final { }
+    String validationMessage() const final { return String(); }
 
     using HTMLPlugInImageElement::ref;
     using HTMLPlugInImageElement::deref;
@@ -58,26 +58,26 @@ public:
 private:
     HTMLObjectElement(const QualifiedName&, Document&, HTMLFormElement*, bool createdByParser);
 
-    void parseAttribute(const QualifiedName&, const AtomicString&) override;
-    bool isPresentationAttribute(const QualifiedName&) const override;
-    void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStyleProperties&) override;
+    void parseAttribute(const QualifiedName&, const AtomicString&) final;
+    bool isPresentationAttribute(const QualifiedName&) const final;
+    void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStyleProperties&) final;
 
-    InsertionNotificationRequest insertedInto(ContainerNode&) override;
+    InsertionNotificationRequest insertedInto(ContainerNode&) final;
     void finishedInsertingSubtree() final;
-    void removedFrom(ContainerNode&) override;
+    void removedFrom(ContainerNode&) final;
 
-    void didMoveToNewDocument(Document* oldDocument) override;
+    void didMoveToNewDocument(Document* oldDocument) final;
 
-    void childrenChanged(const ChildChange&) override;
+    void childrenChanged(const ChildChange&) final;
 
-    bool isURLAttribute(const Attribute&) const override;
-    const AtomicString& imageSourceURL() const override;
+    bool isURLAttribute(const Attribute&) const final;
+    const AtomicString& imageSourceURL() const final;
 
-    RenderWidget* renderWidgetLoadingPlugin() const override;
+    RenderWidget* renderWidgetLoadingPlugin() const final;
 
-    void addSubresourceAttributeURLs(ListHashSet<URL>&) const override;
+    void addSubresourceAttributeURLs(ListHashSet<URL>&) const final;
 
-    void updateWidget(PluginCreationOption) override;
+    void updateWidget(PluginCreationOption) final;
     void updateDocNamedItem();
 
     // FIXME: This function should not deal with url or serviceType
@@ -88,20 +88,20 @@ private:
     bool hasValidClassId();
     void clearUseFallbackContent() { m_useFallbackContent = false; }
 
-    void refFormAssociatedElement() override { ref(); }
-    void derefFormAssociatedElement() override { deref(); }
-    HTMLFormElement* virtualForm() const override;
+    void refFormAssociatedElement() final { ref(); }
+    void derefFormAssociatedElement() final { deref(); }
+    HTMLFormElement* virtualForm() const final;
 
-    FormNamedItem* asFormNamedItem() override { return this; }
-    HTMLObjectElement& asHTMLElement() override { return *this; }
-    const HTMLObjectElement& asHTMLElement() const override { return *this; }
+    FormNamedItem* asFormNamedItem() final { return this; }
+    HTMLObjectElement& asHTMLElement() final { return *this; }
+    const HTMLObjectElement& asHTMLElement() const final { return *this; }
 
-    bool isFormControlElement() const override { return false; }
+    bool isFormControlElement() const final { return false; }
 
-    bool isEnumeratable() const override { return true; }
-    bool appendFormData(FormDataList&, bool) override;
+    bool isEnumeratable() const final { return true; }
+    bool appendFormData(FormDataList&, bool) final;
 
-    bool canContainRangeEndPoint() const override;
+    bool canContainRangeEndPoint() const final;
 
     bool m_docNamedItem : 1;
     bool m_useFallbackContent : 1;
index e38d13d..6163398 100644 (file)
@@ -34,7 +34,7 @@ class HTMLOptGroupElement final : public HTMLElement {
 public:
     static Ref<HTMLOptGroupElement> create(const QualifiedName&, Document&);
 
-    bool isDisabledFormControl() const override;
+    bool isDisabledFormControl() const final;
     HTMLSelectElement* ownerSelectElement() const;
     
     WEBCORE_EXPORT String groupLabelText() const;
@@ -43,13 +43,13 @@ private:
     HTMLOptGroupElement(const QualifiedName&, Document&);
 
     const AtomicString& formControlType() const;
-    bool isFocusable() const override;
-    void parseAttribute(const QualifiedName&, const AtomicString&) override;
-    bool rendererIsNeeded(const RenderStyle&) override { return false; }
+    bool isFocusable() const final;
+    void parseAttribute(const QualifiedName&, const AtomicString&) final;
+    bool rendererIsNeeded(const RenderStyle&) final { return false; }
 
-    void childrenChanged(const ChildChange&) override;
+    void childrenChanged(const ChildChange&) final;
 
-    void accessKeyAction(bool sendMouseEvents) override;
+    void accessKeyAction(bool sendMouseEvents) final;
 
     void recalcSelectOptions();
 };
index 93f1ffd..cde1342 100644 (file)
@@ -60,7 +60,7 @@ public:
 
     bool ownElementDisabled() const { return m_disabled; }
 
-    bool isDisabledFormControl() const override;
+    bool isDisabledFormControl() const final;
 
     String textIndentedToRespectGroupLabel() const;
 
@@ -69,18 +69,18 @@ public:
 private:
     HTMLOptionElement(const QualifiedName&, Document&);
 
-    bool isFocusable() const override;
-    bool rendererIsNeeded(const RenderStyle&) override { return false; }
-    bool matchesDefaultPseudoClass() const override;
+    bool isFocusable() const final;
+    bool rendererIsNeeded(const RenderStyle&) final { return false; }
+    bool matchesDefaultPseudoClass() const final;
 
-    void parseAttribute(const QualifiedName&, const AtomicString&) override;
+    void parseAttribute(const QualifiedName&, const AtomicString&) final;
 
-    InsertionNotificationRequest insertedInto(ContainerNode&) override;
-    void accessKeyAction(bool) override;
+    InsertionNotificationRequest insertedInto(ContainerNode&) final;
+    void accessKeyAction(bool) final;
 
-    void childrenChanged(const ChildChange&) override;
+    void childrenChanged(const ChildChange&) final;
 
-    void willResetComputedStyle() override;
+    void willResetComputedStyle() final;
 
     String collectOptionInnerText() const;
 
index 24db783..ce5d121 100644 (file)
@@ -46,19 +46,19 @@ public:
     void setDefaultValue(const String&);
     DOMTokenList& htmlFor();
     
-    bool canContainRangeEndPoint() const override { return false; }
+    bool canContainRangeEndPoint() const final { return false; }
 
 private:
     HTMLOutputElement(const QualifiedName&, Document&, HTMLFormElement*);
 
-    bool computeWillValidate() const override { return false; }
-    void parseAttribute(const QualifiedName&, const AtomicString&) override;
-    const AtomicString& formControlType() const override;
-    bool isEnumeratable() const override { return true; }
-    bool supportLabels() const override { return true; }
-    bool supportsFocus() const override;
-    void childrenChanged(const ChildChange&) override;
-    void reset() override;
+    bool computeWillValidate() const final { return false; }
+    void parseAttribute(const QualifiedName&, const AtomicString&) final;
+    const AtomicString& formControlType() const final;
+    bool isEnumeratable() const final { return true; }
+    bool supportLabels() const final { return true; }
+    bool supportsFocus() const final;
+    void childrenChanged(const ChildChange&) final;
+    void reset() final;
 
     void setTextContentInternal(const String&);
 
index b6a77af..faa4ee7 100644 (file)
@@ -35,8 +35,8 @@ public:
 private:
     HTMLParagraphElement(const QualifiedName&, Document&);
 
-    bool isPresentationAttribute(const QualifiedName&) const override;
-    void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStyleProperties&) override;
+    bool isPresentationAttribute(const QualifiedName&) const final;
+    void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStyleProperties&) final;
 };
 
 } // namespace WebCore
index a14717a..49f1705 100644 (file)
@@ -39,8 +39,8 @@ public:
 private:
     HTMLParamElement(const QualifiedName&, Document&);
 
-    bool isURLAttribute(const Attribute&) const override;
-    void addSubresourceAttributeURLs(ListHashSet<URL>&) const override;
+    bool isURLAttribute(const Attribute&) const final;
+    void addSubresourceAttributeURLs(ListHashSet<URL>&) const final;
 };
 
 } // namespace WebCore
index 9cb2860..93f0a1c 100644 (file)
@@ -34,8 +34,8 @@ public:
 private:
     HTMLPreElement(const QualifiedName&, Document&);
 
-    bool isPresentationAttribute(const QualifiedName&) const override;
-    void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStyleProperties&) override;
+    bool isPresentationAttribute(const QualifiedName&) const final;
+    void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStyleProperties&) final;
 };
 
 } // namespace WebCore
index 4fb5f06..1382320 100644 (file)
@@ -43,25 +43,25 @@ public:
 
     double position() const;
 
-    bool canContainRangeEndPoint() const override { return false; }
+    bool canContainRangeEndPoint() const final { return false; }
 
 private:
     HTMLProgressElement(const QualifiedName&, Document&);
     virtual ~HTMLProgressElement();
 
-    bool shouldAppearIndeterminate() const override;
-    bool supportLabels() const override { return true; }
+    bool shouldAppearIndeterminate() const final;
+    bool supportLabels() const final { return true; }
 
-    RenderPtr<RenderElement> createElementRenderer(RenderStyle&&, const RenderTreePosition&) override;
-    bool childShouldCreateRenderer(const Node&) const override;
+    RenderPtr<RenderElement> createElementRenderer(RenderStyle&&, const RenderTreePosition&) final;
+    bool childShouldCreateRenderer(const Node&) const final;
     RenderProgress* renderProgress() const;
 
-    void parseAttribute(const QualifiedName&, const AtomicString&) override;
+    void parseAttribute(const QualifiedName&, const AtomicString&) final;
 
-    void didAttachRenderers() override;
+    void didAttachRenderers() final;
 
     void didElementStateChange();
-    void didAddUserAgentShadowRoot(ShadowRoot*) override;
+    void didAddUserAgentShadowRoot(ShadowRoot*) final;
     bool isDeterminate() const;
 
     ProgressValueElement* m_value;
index 23a7532..3bff1a5 100644 (file)
@@ -36,7 +36,7 @@ public:
 private:
     HTMLQuoteElement(const QualifiedName&, Document&);
 
-    bool isURLAttribute(const Attribute&) const override;
+    bool isURLAttribute(const Attribute&) const final;
 };
 
 } //namespace
index aa1b67e..8d3d347 100644 (file)
@@ -47,28 +47,28 @@ public:
 private:
     HTMLScriptElement(const QualifiedName&, Document&, bool wasInsertedByParser, bool alreadyStarted);
 
-    void parseAttribute(const QualifiedName&, const AtomicString&) override;
-    InsertionNotificationRequest insertedInto(ContainerNode&) override;
-    void finishedInsertingSubtree() override;
-    void childrenChanged(const ChildChange&) override;
+    void parseAttribute(const QualifiedName&, const AtomicString&) final;
+    InsertionNotificationRequest insertedInto(ContainerNode&) final;
+    void finishedInsertingSubtree() final;
+    void childrenChanged(const ChildChange&) final;
 
-    bool isURLAttribute(const Attribute&) const override;
+    bool isURLAttribute(const Attribute&) const final;
 
-    void addSubresourceAttributeURLs(ListHashSet<URL>&) const override;
+    void addSubresourceAttributeURLs(ListHashSet<URL>&) const final;
 
-    String sourceAttributeValue() const override;
-    String charsetAttributeValue() const override;
-    String typeAttributeValue() const override;
-    String languageAttributeValue() const override;
-    String forAttributeValue() const override;
-    String eventAttributeValue() const override;
-    bool asyncAttributeValue() const override;
-    bool deferAttributeValue() const override;
-    bool hasSourceAttribute() const override;
+    String sourceAttributeValue() const final;
+    String charsetAttributeValue() const final;
+    String typeAttributeValue() const final;
+    String languageAttributeValue() const final;
+    String forAttributeValue() const final;
+    String eventAttributeValue() const final;
+    bool asyncAttributeValue() const final;
+    bool deferAttributeValue() const final;
+    bool hasSourceAttribute() const final;
 
-    void dispatchLoadEvent() override;
+    void dispatchLoadEvent() final;
 
-    Ref<Element> cloneElementWithoutAttributesAndChildren(Document&) override;
+    Ref<Element> cloneElementWithoutAttributesAndChildren(Document&) final;
 };
 
 } //namespace
index 54cd776..3877fea 100644 (file)
@@ -50,18 +50,18 @@ public:
 private:
     HTMLSourceElement(const QualifiedName&, Document&);
     
-    InsertionNotificationRequest insertedInto(ContainerNode&) override;
-    void removedFrom(ContainerNode&) override;
-    bool isURLAttribute(const Attribute&) const override;
+    InsertionNotificationRequest insertedInto(ContainerNode&) final;
+    void removedFrom(ContainerNode&) final;
+    bool isURLAttribute(const Attribute&) const final;
 
     // ActiveDOMObject.
-    const char* activeDOMObjectName() const override;
-    bool canSuspendForDocumentSuspension() const override;
-    void suspend(ReasonForSuspension) override;
-    void resume() override;
-    void stop() override;
+    const char* activeDOMObjectName() const final;
+    bool canSuspendForDocumentSuspension() const final;
+    void suspend(ReasonForSuspension) final;
+    void resume() final;
+    void stop() final;
 
-    void parseAttribute(const QualifiedName&, const AtomicString&) override;
+    void parseAttribute(const QualifiedName&, const AtomicString&) final;
 
     void errorEventTimerFired();
 
index 761c8b2..a41f0b9 100644 (file)
@@ -51,19 +51,19 @@ private:
     HTMLStyleElement(const QualifiedName&, Document&, bool createdByParser);
 
     // overload from HTMLElement
-    void parseAttribute(const QualifiedName&, const AtomicString&) override;
-    InsertionNotificationRequest insertedInto(ContainerNode&) override;
-    void removedFrom(ContainerNode&) override;
-    void childrenChanged(const ChildChange&) override;
+    void parseAttribute(const QualifiedName&, const AtomicString&) final;
+    InsertionNotificationRequest insertedInto(ContainerNode&) final;
+    void removedFrom(ContainerNode&) final;
+    void childrenChanged(const ChildChange&) final;
 
-    void finishParsingChildren() override;
+    void finishParsingChildren() final;
 
     bool isLoading() const { return m_styleSheetOwner.isLoading(); }
-    bool sheetLoaded() override { return m_styleSheetOwner.sheetLoaded(*this); }
-    void notifyLoadedSheetAndAllCriticalSubresources(bool errorOccurred) override;
-    void startLoadingDynamicSheet() override { m_styleSheetOwner.startLoadingDynamicSheet(*this); }
+    bool sheetLoaded() final { return m_styleSheetOwner.sheetLoaded(*this); }
+    void notifyLoadedSheetAndAllCriticalSubresources(bool errorOccurred) final;
+    void startLoadingDynamicSheet() final { m_styleSheetOwner.startLoadingDynamicSheet(*this); }
 
-    void addSubresourceAttributeURLs(ListHashSet<URL>&) const override;
+    void addSubresourceAttributeURLs(ListHashSet<URL>&) const final;
 
     InlineStyleSheetOwner m_styleSheetOwner;
     bool m_firedLoad;
index 717827f..ac416eb 100644 (file)
@@ -32,21 +32,21 @@ public:
     static Ref<HTMLSummaryElement> create(const QualifiedName&, Document&);
 
     bool isActiveSummary() const;
-    bool willRespondToMouseClickEvents() override;
+    bool willRespondToMouseClickEvents() final;
 
 private:
     HTMLSummaryElement(const QualifiedName&, Document&);
 
-    RenderPtr<RenderElement> createElementRenderer(RenderStyle&&, const RenderTreePosition&) override;
-    void defaultEventHandler(Event*) override;
+    RenderPtr<RenderElement> createElementRenderer(RenderStyle&&, const RenderTreePosition&) final;
+    void defaultEventHandler(Event*) final;
 
-    void didAddUserAgentShadowRoot(ShadowRoot*) override;
+    void didAddUserAgentShadowRoot(ShadowRoot*) final;
 
     bool hasCustomFocusLogic() const final { return true; }
 
     HTMLDetailsElement* detailsElement() const;
 
-    bool supportsFocus() const override;
+    bool supportsFocus() const final;
 };
 
 }
index 5a69202..48bc60e 100644 (file)
@@ -37,8 +37,8 @@ public:
 private:
     HTMLTableCaptionElement(const QualifiedName&, Document&);
 
-    bool isPresentationAttribute(const QualifiedName&) const override;
-    void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStyleProperties&) override;
+    bool isPresentationAttribute(const QualifiedName&) const final;
+    void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStyleProperties&) final;
 };
 
 } // namespace
index 9f9d96c..cf404b4 100644 (file)
@@ -42,10 +42,10 @@ public:
 private:
     HTMLTableColElement(const QualifiedName& tagName, Document&);
 
-    void parseAttribute(const QualifiedName&, const AtomicString&) override;
-    bool isPresentationAttribute(const QualifiedName&) const override;
-    void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStyleProperties&) override;
-    const StyleProperties* additionalPresentationAttributeStyle() const override;
+    void parseAttribute(const QualifiedName&, const AtomicString&) final;
+    bool isPresentationAttribute(const QualifiedName&) const final;
+    void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStyleProperties&) final;
+    const StyleProperties* additionalPresentationAttributeStyle() const final;
 
     unsigned m_span;
 };
index 12b7601..2a647eb 100644 (file)
@@ -72,15 +72,15 @@ public:
 private:
     HTMLTableElement(const QualifiedName&, Document&);
 
-    void parseAttribute(const QualifiedName&, const AtomicString&) override;
-    bool isPresentationAttribute(const QualifiedName&) const override;
-    void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStyleProperties&) override;
-    bool isURLAttribute(const Attribute&) const override;
+    void parseAttribute(const QualifiedName&, const AtomicString&) final;
+    bool isPresentationAttribute(const QualifiedName&) const final;
+    void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStyleProperties&) final;
+    bool isURLAttribute(const Attribute&) const final;
 
     // Used to obtain either a solid or outset border decl and to deal with the frame and rules attributes.
-    const StyleProperties* additionalPresentationAttributeStyle() const override;
+    const StyleProperties* additionalPresentationAttributeStyle() const final;
 
-    void addSubresourceAttributeURLs(ListHashSet<URL>&) const override;
+    void addSubresourceAttributeURLs(ListHashSet<URL>&) const final;
 
     enum TableRules { UnsetRules, NoneRules, GroupsRules, RowsRules, ColsRules, AllRules };
     enum CellBorders { NoBorders, SolidBorders, InsetBorders, SolidBordersColsOnly, SolidBordersRowsOnly };
index 6131811..064d9f3 100644 (file)
@@ -58,7 +58,7 @@ public:
 private:
     HTMLTableSectionElement(const QualifiedName& tagName, Document&);
 
-    const StyleProperties* additionalPresentationAttributeStyle() const override;
+    const StyleProperties* additionalPresentationAttributeStyle() const final;
 };
 
 } // namespace WebCore
index 74975da..35b559e 100644 (file)
@@ -48,8 +48,8 @@ public:
 private:
     HTMLTemplateElement(const QualifiedName&, Document&);
 
-    Ref<Node> cloneNodeInternal(Document&, CloningOperation) override;
-    void didMoveToNewDocument(Document* oldDocument) override;
+    Ref<Node> cloneNodeInternal(Document&, CloningOperation) final;
+    void didMoveToNewDocument(Document* oldDocument) final;
 
     mutable RefPtr<TemplateContentDocumentFragment> m_content;
 };
index ca2ec9a..b3612a0 100644 (file)
@@ -40,7 +40,7 @@ public:
 
     bool shouldWrapText() const { return m_wrap != NoWrap; }
 
-    WEBCORE_EXPORT String value() const override;
+    WEBCORE_EXPORT String value() const final;
     WEBCORE_EXPORT void setValue(const String&);
     String defaultValue() const;
     void setDefaultValue(const String&);
@@ -48,20 +48,20 @@ public:
     int maxLengthForBindings() const { return m_maxLength; }
     int effectiveMaxLength() const { return m_maxLength; }
     // For ValidityState
-    String validationMessage() const override;
-    bool valueMissing() const override;
-    bool tooLong() const override;
+    String validationMessage() const final;
+    bool valueMissing() const final;
+    bool tooLong() const final;
     bool isValidValue(const String&) const;
     
-    TextControlInnerTextElement* innerTextElement() const override;
-    RenderStyle createInnerTextStyle(const RenderStyle&) const override;
+    TextControlInnerTextElement* innerTextElement() const final;
+    RenderStyle createInnerTextStyle(const RenderStyle&) const final;
 
     void rendererWillBeDestroyed();
 
     void setCols(unsigned);
     void setRows(unsigned);
 
-    bool willRespondToMouseClickEvents() override;
+    bool willRespondToMouseClickEvents() final;
 
     RenderTextControlMultiLine* renderer() const;
 
@@ -70,7 +70,7 @@ private:
 
     enum WrapMethod { NoWrap, SoftWrap, HardWrap };
 
-    void didAddUserAgentShadowRoot(ShadowRoot*) override;
+    void didAddUserAgentShadowRoot(ShadowRoot*) final;
 
     void maxLengthAttributeChanged(const AtomicString& newValue);
 
@@ -80,44 +80,44 @@ private:
     void setNonDirtyValue(const String&);
     void setValueCommon(const String&);
 
-    bool supportsPlaceholder() const override { return true; }
-    HTMLElement* placeholderElement() const override;
-    void updatePlaceholderText() override;
-    bool isEmptyValue() const override { return value().isEmpty(); }
+    bool supportsPlaceholder() const final { return true; }
+    HTMLElement* placeholderElement() const final;
+    void updatePlaceholderText() final;
+    bool isEmptyValue() const final { return value().isEmpty(); }
 
-    bool isOptionalFormControl() const override { return !isRequiredFormControl(); }
-    bool isRequiredFormControl() const override { return isRequired(); }
+    bool isOptionalFormControl() const final { return !isRequiredFormControl(); }
+    bool isRequiredFormControl() const final { return isRequired(); }
 
-    void defaultEventHandler(Event*) override;
+    void defaultEventHandler(Event*) final;
     
-    void subtreeHasChanged() override;
+    void subtreeHasChanged() final;
 
-    bool isEnumeratable() const override { return true; }
-    bool supportLabels() const override { return true; }
+    bool isEnumeratable() const final { return true; }
+    bool supportLabels() const final { return true; }
 
-    const AtomicString& formControlType() const override;
+    const AtomicString& formControlType() const final;
 
-    FormControlState saveFormControlState() const override;
-    void restoreFormControlState(const FormControlState&) override;
+    FormControlState saveFormControlState() const final;
+    void restoreFormControlState(const FormControlState&) final;
 
-    bool isTextFormControl() const override { return true; }
+    bool isTextFormControl() const final { return true; }
 
-    void childrenChanged(const ChildChange&) override;
-    void parseAttribute(const QualifiedName&, const AtomicString&) override;
-    bool isPresentationAttribute(const QualifiedName&) const override;
-    void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStyleProperties&) override;
-    RenderPtr<RenderElement> createElementRenderer(RenderStyle&&, const RenderTreePosition&) override;
-    bool appendFormData(FormDataList&, bool) override;
-    void reset() override;
-    bool hasCustomFocusLogic() const override;
-    bool isMouseFocusable() const override;
-    bool isKeyboardFocusable(KeyboardEvent*) const override;
-    void updateFocusAppearance(SelectionRestorationMode, SelectionRevealMode) override;
+    void childrenChanged(const ChildChange&) final;
+    void parseAttribute(const QualifiedName&, const AtomicString&) final;
+    bool isPresentationAttribute(const QualifiedName&) const final;
+    void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStyleProperties&) final;
+    RenderPtr<RenderElement> createElementRenderer(RenderStyle&&, const RenderTreePosition&) final;
+    bool appendFormData(FormDataList&, bool) final;
+    void reset() final;
+    bool hasCustomFocusLogic() const final;
+    bool isMouseFocusable() const final;
+    bool isKeyboardFocusable(KeyboardEvent*) const final;
+    void updateFocusAppearance(SelectionRestorationMode, SelectionRevealMode) final;
 
-    void accessKeyAction(bool sendMouseEvents) override;
+    void accessKeyAction(bool sendMouseEvents) final;
 
-    bool shouldUseInputMethod() override;
-    bool matchesReadWritePseudoClass() const override;
+    bool shouldUseInputMethod() final;
+    bool matchesReadWritePseudoClass() const final;
 
     bool valueMissing(const String& value) const { return isRequiredFormControl() && !isDisabledOrReadOnly() && value.isEmpty(); }
     bool tooLong(const String&, NeedsToCheckDirtyFlag) const;
index 49c2bfa..71cb19f 100644 (file)
@@ -39,9 +39,9 @@ public:
 private:
     HTMLTitleElement(const QualifiedName&, Document&);
 
-    InsertionNotificationRequest insertedInto(ContainerNode&) override;
-    void removedFrom(ContainerNode&) override;
-    void childrenChanged(const ChildChange&) override;
+    InsertionNotificationRequest insertedInto(ContainerNode&) final;
+    void removedFrom(ContainerNode&) final;
+    void childrenChanged(const ChildChange&) final;
 
     StringWithDirection computedTextWithDirection();
 
index 06995a9..795c49c 100644 (file)
@@ -35,8 +35,8 @@ public:
 private:
     HTMLUListElement(const QualifiedName&, Document&);
 
-    bool isPresentationAttribute(const QualifiedName&) const override;
-    void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStyleProperties&) override;
+    bool isPresentationAttribute(const QualifiedName&) const final;
+    void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStyleProperties&) final;
 };
 
 } //namespace
index f390acf..497871d 100644 (file)
@@ -47,7 +47,7 @@ private:
     {
     }
 
-    bool isHTMLUnknownElement() const override { return true; }
+    bool isHTMLUnknownElement() const final { return true; }
 };
 
 } // namespace
index 145eeb3..a8f2b26 100644 (file)
@@ -47,7 +47,7 @@ public:
     bool webkitSupportsFullscreen();
     bool webkitDisplayingFullscreen();
 
-    void ancestorWillEnterFullscreen() override;
+    void ancestorWillEnterFullscreen() final;
     
     // FIXME: Maintain "FullScreen" capitalization scheme for backwards compatibility.
     // https://bugs.webkit.org/show_bug.cgi?id=36081
@@ -76,7 +76,7 @@ public:
     bool shouldDisplayPosterImage() const { return displayMode() == Poster || displayMode() == PosterWaitingForVideo; }
 
     URL posterImageURL() const;
-    RenderPtr<RenderElement> createElementRenderer(RenderStyle&&, const RenderTreePosition&) override;
+    RenderPtr<RenderElement> createElementRenderer(RenderStyle&&, const RenderTreePosition&) final;
 
 #if ENABLE(VIDEO_PRESENTATION_MODE)
     enum class VideoPresentationMode { Fullscreen, PictureInPicture, Inline };
@@ -84,7 +84,7 @@ public:
     void webkitSetPresentationMode(VideoPresentationMode);
     VideoPresentationMode webkitPresentationMode() const;
     void setFullscreenMode(VideoFullscreenMode);
-    void fullscreenModeChanged(VideoFullscreenMode) override;
+    void fullscreenModeChanged(VideoFullscreenMode) final;
 #endif
 
 #if PLATFORM(MAC) && ENABLE(VIDEO_PRESENTATION_MODE)
@@ -96,25 +96,25 @@ public:
 private:
     HTMLVideoElement(const QualifiedName&, Document&, bool createdByParser);
 
-    void scheduleResizeEvent() override;
-    void scheduleResizeEventIfSizeChanged() override;
-    bool rendererIsNeeded(const RenderStyle&) override;
-    void didAttachRenderers() override;
-    void parseAttribute(const QualifiedName&, const AtomicString&) override;
-    bool isPresentationAttribute(const QualifiedName&) const override;
-    void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStyleProperties&) override;
-    bool isVideo() const override { return true; }
-    bool hasVideo() const override { return player() && player()->hasVideo(); }
-    bool supportsFullscreen(HTMLMediaElementEnums::VideoFullscreenMode) const override;
-    bool isURLAttribute(const Attribute&) const override;
-    const AtomicString& imageSourceURL() const override;
+    void scheduleResizeEvent() final;
+    void scheduleResizeEventIfSizeChanged() final;
+    bool rendererIsNeeded(const RenderStyle&) final;
+    void didAttachRenderers() final;
+    void parseAttribute(const QualifiedName&, const AtomicString&) final;
+    bool isPresentationAttribute(const QualifiedName&) const final;
+    void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStyleProperties&) final;
+    bool isVideo() const final { return true; }
+    bool hasVideo() const final { return player() && player()->hasVideo(); }
+    bool supportsFullscreen(HTMLMediaElementEnums::VideoFullscreenMode) const final;
+    bool isURLAttribute(const Attribute&) const final;
+    const AtomicString& imageSourceURL() const final;
 
     bool hasAvailableVideoFrame() const;
-    void updateDisplayState() override;
-    void didMoveToNewDocument(Document* oldDocument) override;
-    void setDisplayMode(DisplayMode) override;
+    void updateDisplayState() final;
+    void didMoveToNewDocument(Document* oldDocument) final;
+    void setDisplayMode(DisplayMode) final;
 
-    PlatformMediaSession::MediaType presentationType() const override { return PlatformMediaSession::Video; }
+    PlatformMediaSession::MediaType presentationType() const final { return PlatformMediaSession::Video; }
 
     std::unique_ptr<HTMLImageLoader> m_imageLoader;
 
index 47d22b0..da815f4 100644 (file)
@@ -40,7 +40,7 @@ public:
 private:
     HTMLWBRElement(const QualifiedName&, Document&);
 
-    RenderPtr<RenderElement> createElementRenderer(RenderStyle&&, const RenderTreePosition&) override;
+    RenderPtr<RenderElement> createElementRenderer(RenderStyle&&, const RenderTreePosition&) final;
 };
 
 } // namespace WebCore