Title: [176001] trunk/Source
Revision
176001
Author
[email protected]
Date
2014-11-11 20:17:18 -0800 (Tue, 11 Nov 2014)

Log Message

Mark more virtual functions in HTMLInputElement as final
https://bugs.webkit.org/show_bug.cgi?id=138644

Reviewed by Andreas Kling.

Source/WebCore:

Mark more virtual functions in HTMLInputElement as final to help the
compiler optimize better.

No new tests, no behavior change.

* html/HTMLInputElement.h:

Source/WebKit:

Export an additional symbol to fix Windows build.

* WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (176000 => 176001)


--- trunk/Source/WebCore/ChangeLog	2014-11-12 03:13:47 UTC (rev 176000)
+++ trunk/Source/WebCore/ChangeLog	2014-11-12 04:17:18 UTC (rev 176001)
@@ -1,3 +1,17 @@
+2014-11-11  Chris Dumez  <[email protected]>
+
+        Mark more virtual functions in HTMLInputElement as final
+        https://bugs.webkit.org/show_bug.cgi?id=138644
+
+        Reviewed by Andreas Kling.
+
+        Mark more virtual functions in HTMLInputElement as final to help the
+        compiler optimize better.
+
+        No new tests, no behavior change.
+
+        * html/HTMLInputElement.h:
+
 2014-11-11  Gyuyoung Kim  <[email protected]>
 
         Remove IncrementalSweeper::create()

Modified: trunk/Source/WebCore/html/HTMLInputElement.h (176000 => 176001)


--- trunk/Source/WebCore/html/HTMLInputElement.h	2014-11-12 03:13:47 UTC (rev 176000)
+++ trunk/Source/WebCore/html/HTMLInputElement.h	2014-11-12 04:17:18 UTC (rev 176001)
@@ -70,18 +70,18 @@
 
     virtual HTMLInputElement* toInputElement() override final { return this; }
 
-    WEBCORE_EXPORT virtual bool shouldAutocomplete() const override;
+    WEBCORE_EXPORT virtual bool shouldAutocomplete() const override final;
 
     // For ValidityState
-    virtual bool hasBadInput() const override;
-    virtual bool patternMismatch() const override;
-    virtual bool rangeUnderflow() const override;
-    virtual bool rangeOverflow() const override;
-    virtual bool stepMismatch() const override;
-    virtual bool tooLong() const override;
-    virtual bool typeMismatch() const override;
-    virtual bool valueMissing() const override;
-    virtual String validationMessage() const override;
+    virtual bool hasBadInput() const override final;
+    virtual bool patternMismatch() const override final;
+    virtual bool rangeUnderflow() const override final;
+    virtual bool rangeOverflow() const override final;
+    virtual bool stepMismatch() const override final;
+    virtual bool tooLong() const override final;
+    virtual bool typeMismatch() const override final;
+    virtual bool valueMissing() const override final;
+    virtual String validationMessage() const override final;
 
     // Returns the minimum value for type=date, number, or range.  Don't call this for other types.
     double minimum() const;
@@ -151,7 +151,7 @@
     HTMLElement* cancelButtonElement() const;
     HTMLElement* sliderThumbElement() const;
     HTMLElement* sliderTrackElement() const;
-    virtual HTMLElement* placeholderElement() const override;
+    virtual HTMLElement* placeholderElement() const override final;
 
     bool checked() const { return m_isChecked; }
     void setChecked(bool, TextFieldEventBehavior = DispatchNoEvent);
@@ -161,7 +161,7 @@
     void setIndeterminate(bool);
     // shouldAppearChecked is used by the rendering tree/CSS while checked() is used by JS to determine checked state
     bool shouldAppearChecked() const;
-    virtual bool shouldAppearIndeterminate() const override;
+    virtual bool shouldAppearIndeterminate() const override final;
 
     int size() const;
     bool sizeShouldIncludeDecoration(int& preferredSize) const;
@@ -169,7 +169,7 @@
 
     void setType(const AtomicString&);
 
-    virtual String value() const override;
+    virtual String value() const override final;
     void setValue(const String&, ExceptionCode&, TextFieldEventBehavior = DispatchNoEvent);
     WEBCORE_EXPORT void setValue(const String&, TextFieldEventBehavior = DispatchNoEvent);
     WEBCORE_EXPORT void setValueForUser(const String&);
@@ -199,17 +199,17 @@
 
     bool canHaveSelection() const;
 
-    virtual bool rendererIsNeeded(const RenderStyle&) override;
-    virtual RenderPtr<RenderElement> createElementRenderer(PassRef<RenderStyle>) override;
-    virtual void willAttachRenderers() override;
-    virtual void didAttachRenderers() override;
-    virtual void didDetachRenderers() override;
+    virtual bool rendererIsNeeded(const RenderStyle&) override final;
+    virtual RenderPtr<RenderElement> createElementRenderer(PassRef<RenderStyle>) override final;
+    virtual void willAttachRenderers() override final;
+    virtual void didAttachRenderers() override final;
+    virtual void didDetachRenderers() override final;
 
     // FIXME: For isActivatedSubmit and setActivatedSubmit, we should use the NVI-idiom here by making
     // it private virtual in all classes and expose a public method in HTMLFormControlElement to call
     // the private virtual method.
-    virtual bool isActivatedSubmit() const override;
-    virtual void setActivatedSubmit(bool flag) override;
+    virtual bool isActivatedSubmit() const override final;
+    virtual void setActivatedSubmit(bool flag) override final;
 
     String altText() const;
 
@@ -231,7 +231,7 @@
 
     URL src() const;
 
-    virtual int maxLength() const override;
+    virtual int maxLength() const override final;
     void setMaxLength(int, ExceptionCode&);
 
     bool multiple() const;
@@ -297,18 +297,18 @@
     void setHeight(unsigned);
     void setWidth(unsigned);
 
-    virtual void blur() override;
+    virtual void blur() override final;
     void defaultBlur();
 
-    virtual const AtomicString& name() const override;
+    virtual const AtomicString& name() const override final;
 
     void endEditing();
 
     static Vector<FileChooserFileInfo> filesFromFileInputFormControlState(const FormControlState&);
 
-    virtual bool matchesReadWritePseudoClass() const override;
-    virtual void setRangeText(const String& replacement, ExceptionCode&) override;
-    virtual void setRangeText(const String& replacement, unsigned start, unsigned end, const String& selectionMode, ExceptionCode&) override;
+    virtual bool matchesReadWritePseudoClass() const override final;
+    virtual void setRangeText(const String& replacement, ExceptionCode&) override final;
+    virtual void setRangeText(const String& replacement, unsigned start, unsigned end, const String& selectionMode, ExceptionCode&) override final;
 
     HTMLImageLoader* imageLoader() { return m_imageLoader.get(); }
     HTMLImageLoader& ensureImageLoader();
@@ -325,59 +325,59 @@
 private:
     enum AutoCompleteSetting { Uninitialized, On, Off };
 
-    virtual void didAddUserAgentShadowRoot(ShadowRoot*) override;
+    virtual void didAddUserAgentShadowRoot(ShadowRoot*) override final;
 
-    virtual void willChangeForm() override;
-    virtual void didChangeForm() override;
-    virtual InsertionNotificationRequest insertedInto(ContainerNode&) override;
-    virtual void removedFrom(ContainerNode&) override;
-    virtual void didMoveToNewDocument(Document* oldDocument) override;
+    virtual void willChangeForm() override final;
+    virtual void didChangeForm() override final;
+    virtual InsertionNotificationRequest insertedInto(ContainerNode&) override final;
+    virtual void removedFrom(ContainerNode&) override final;
+    virtual void didMoveToNewDocument(Document* oldDocument) override final;
 
-    virtual bool hasCustomFocusLogic() const override;
-    virtual bool isKeyboardFocusable(KeyboardEvent*) const override;
-    virtual bool isMouseFocusable() const override;
-    virtual bool isEnumeratable() const override;
-    virtual bool supportLabels() const override;
-    virtual void updateFocusAppearance(bool restorePreviousSelection) override;
+    virtual bool hasCustomFocusLogic() const override final;
+    virtual bool isKeyboardFocusable(KeyboardEvent*) const override final;
+    virtual bool isMouseFocusable() const override final;
+    virtual bool isEnumeratable() const override final;
+    virtual bool supportLabels() const override final;
+    virtual void updateFocusAppearance(bool restorePreviousSelection) override final;
     virtual bool shouldUseInputMethod() override final;
 
     virtual bool isTextFormControl() const override final { return isTextField(); }
 
-    virtual bool canTriggerImplicitSubmission() const override { return isTextField(); }
+    virtual bool canTriggerImplicitSubmission() const override final { return isTextField(); }
 
-    virtual const AtomicString& formControlType() const override;
+    virtual const AtomicString& formControlType() const override final;
 
-    virtual bool shouldSaveAndRestoreFormControlState() const override;
-    virtual FormControlState saveFormControlState() const override;
-    virtual void restoreFormControlState(const FormControlState&) override;
+    virtual bool shouldSaveAndRestoreFormControlState() const override final;
+    virtual FormControlState saveFormControlState() const override final;
+    virtual void restoreFormControlState(const FormControlState&) override final;
 
-    virtual bool canStartSelection() const override;
+    virtual bool canStartSelection() const override final;
 
-    virtual void accessKeyAction(bool sendMouseEvents) override;
+    virtual void accessKeyAction(bool sendMouseEvents) override final;
 
-    virtual void parseAttribute(const QualifiedName&, const AtomicString&) override;
-    virtual bool isPresentationAttribute(const QualifiedName&) const override;
-    virtual void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStyleProperties&) override;
-    virtual void finishParsingChildren() override;
+    virtual void parseAttribute(const QualifiedName&, const AtomicString&) override final;
+    virtual bool isPresentationAttribute(const QualifiedName&) const override final;
+    virtual void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStyleProperties&) override final;
+    virtual void finishParsingChildren() override final;
 
-    virtual void copyNonAttributePropertiesFromElement(const Element&) override;
+    virtual void copyNonAttributePropertiesFromElement(const Element&) override final;
 
-    virtual bool appendFormData(FormDataList&, bool) override;
+    virtual bool appendFormData(FormDataList&, bool) override final;
 
-    virtual bool isSuccessfulSubmitButton() const override;
+    virtual bool isSuccessfulSubmitButton() const override final;
 
-    virtual void reset() override;
+    virtual void reset() override final;
 
-    virtual bool isURLAttribute(const Attribute&) const override;
-    virtual bool isInRange() const override;
-    virtual bool isOutOfRange() const override;
+    virtual bool isURLAttribute(const Attribute&) const override final;
+    virtual bool isInRange() const override final;
+    virtual bool isOutOfRange() const override final;
 
-    virtual void documentDidResumeFromPageCache() override;
+    virtual void documentDidResumeFromPageCache() override final;
 #if ENABLE(INPUT_TYPE_COLOR)
-    virtual void documentWillSuspendForPageCache() override;
+    virtual void documentWillSuspendForPageCache() override final;
 #endif
 
-    virtual void addSubresourceAttributeURLs(ListHashSet<URL>&) const override;
+    virtual void addSubresourceAttributeURLs(ListHashSet<URL>&) const override final;
 
     bool needsSuspensionCallback();
     void registerForSuspensionCallbackIfNeeded();
@@ -387,20 +387,20 @@
     bool isTextType() const;
     bool tooLong(const String&, NeedsToCheckDirtyFlag) const;
 
-    virtual bool supportsPlaceholder() const override;
-    virtual void updatePlaceholderText() override;
+    virtual bool supportsPlaceholder() const override final;
+    virtual void updatePlaceholderText() override final;
     virtual bool isEmptyValue() const override final;
-    virtual void handleFocusEvent(Node* oldFocusedNode, FocusDirection) override;
-    virtual void handleBlurEvent() override;
+    virtual void handleFocusEvent(Node* oldFocusedNode, FocusDirection) override final;
+    virtual void handleBlurEvent() override final;
 
-    virtual bool isOptionalFormControl() const override { return !isRequiredFormControl(); }
-    virtual bool isRequiredFormControl() const override;
-    virtual bool recalcWillValidate() const override;
-    virtual void requiredAttributeChanged() override;
+    virtual bool isOptionalFormControl() const override final { return !isRequiredFormControl(); }
+    virtual bool isRequiredFormControl() const override final;
+    virtual bool recalcWillValidate() const override final;
+    virtual void requiredAttributeChanged() override final;
 
     void updateType();
     
-    virtual void subtreeHasChanged() override;
+    virtual void subtreeHasChanged() override final;
 
 #if ENABLE(DATALIST_ELEMENT)
     void resetListAttributeTargetObserver();

Modified: trunk/Source/WebKit/ChangeLog (176000 => 176001)


--- trunk/Source/WebKit/ChangeLog	2014-11-12 03:13:47 UTC (rev 176000)
+++ trunk/Source/WebKit/ChangeLog	2014-11-12 04:17:18 UTC (rev 176001)
@@ -1,3 +1,14 @@
+2014-11-11  Chris Dumez  <[email protected]>
+
+        Mark more virtual functions in HTMLInputElement as final
+        https://bugs.webkit.org/show_bug.cgi?id=138644
+
+        Reviewed by Andreas Kling.
+
+        Export an additional symbol to fix Windows build.
+
+        * WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:
+
 2014-11-08  Darin Adler  <[email protected]>
 
         Replace FileThread class with a single function

Modified: trunk/Source/WebKit/WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in (176000 => 176001)


--- trunk/Source/WebKit/WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in	2014-11-12 03:13:47 UTC (rev 176000)
+++ trunk/Source/WebKit/WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in	2014-11-12 04:17:18 UTC (rev 176001)
@@ -297,6 +297,7 @@
         symbolWithPointer(?setSerifFontFamily@Settings@WebCore@@QAEXABVAtomicString@WTF@@W4UScriptCode@@@Z, ?setSerifFontFamily@Settings@WebCore@@QEAAXAEBVAtomicString@WTF@@W4UScriptCode@@@Z)
         symbolWithPointer(?setStandardFontFamily@Settings@WebCore@@QAEXABVAtomicString@WTF@@W4UScriptCode@@@Z, ?setStandardFontFamily@Settings@WebCore@@QEAAXAEBVAtomicString@WTF@@W4UScriptCode@@@Z)
         symbolWithPointer(?setStorageBlockingPolicy@Settings@WebCore@@QAEXW4StorageBlockingPolicy@SecurityOrigin@2@@Z, ?setStorageBlockingPolicy@Settings@WebCore@@QEAAXW4StorageBlockingPolicy@SecurityOrigin@2@@Z)
+        symbolWithPointer(?shouldAutocomplete@HTMLInputElement@WebCore@@UBE_NXZ, ?shouldAutocomplete@HTMLInputElement@WebCore@@UBE_NXZ)
         symbolWithPointer(?setEditingValue@HTMLInputElement@WebCore@@QAEXABVString@WTF@@@Z, ?setEditingValue@HTMLInputElement@WebCore@@QEAAXAEBVString@WTF@@@Z)
         symbolWithPointer(?setPseudo@Element@WebCore@@QAEXABVAtomicString@WTF@@@Z, ?setPseudo@Element@WebCore@@QEAAXAEBVAtomicString@WTF@@@Z)
         symbolWithPointer(?setMediaTypeOverride@Settings@WebCore@@QAEXABVString@WTF@@@Z, ?setMediaTypeOverride@Settings@WebCore@@QEAAXAEBVString@WTF@@@Z)
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to