Remove the Timer parameters from timer callbacks
[WebKit-https.git] / Source / WebCore / html / SearchInputType.h
index c130d3c..15ddf92 100644 (file)
@@ -1,5 +1,6 @@
 /*
  * Copyright (C) 2010 Google Inc. All rights reserved.
+ * Copyright (C) 2014 Apple Inc. All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
 #define SearchInputType_h
 
 #include "BaseTextInputType.h"
+#include "Timer.h"
 
 namespace WebCore {
 
-class SearchFieldCancelButtonElement;
 class SearchFieldResultsButtonElement;
 
-class SearchInputType : public BaseTextInputType {
+class SearchInputType final : public BaseTextInputType {
 public:
-    static PassOwnPtr<InputType> create(HTMLInputElement*);
+    explicit SearchInputType(HTMLInputElement&);
 
-protected:
-    virtual void createShadowSubtree();
-    virtual void destroyShadowSubtree();
+    void stopSearchEventTimer();
 
 private:
-    SearchInputType(HTMLInputElement*);
-    virtual const AtomicString& formControlType() const;
-    virtual bool shouldRespectSpeechAttribute();
-    virtual bool isSearchField() const;
-    virtual HTMLElement* innerBlockElement() const { return m_innerBlock; }
-    virtual HTMLElement* resultsButtonElement() const { return m_resultsButton; }
-    virtual HTMLElement* cancelButtonElement() const { return m_cancelButton; }
+    virtual void addSearchResult() override;
+    virtual void maxResultsAttributeChanged() override;
+    virtual RenderPtr<RenderElement> createInputRenderer(PassRef<RenderStyle>) override;
+    virtual const AtomicString& formControlType() const override;
+    virtual bool isSearchField() const override;
+    virtual bool needsContainer() const override;
+    virtual void createShadowSubtree() override;
+    virtual void destroyShadowSubtree() override;
+    virtual HTMLElement* resultsButtonElement() const override;
+    virtual HTMLElement* cancelButtonElement() const override;
+    virtual void handleKeydownEvent(KeyboardEvent*) override;
+    virtual void didSetValueByUserEdit(ValueChangeState) override;
+    virtual bool sizeShouldIncludeDecoration(int defaultSize, int& preferredSize) const override;
+    virtual float decorationWidth() const override;
 
-    HTMLElement* m_innerBlock;
-    HTMLElement* m_resultsButton;
+    void searchEventTimerFired();
+    bool searchEventsShouldBeDispatched() const;
+    void startSearchEventTimer();
+
+    SearchFieldResultsButtonElement* m_resultsButton;
     HTMLElement* m_cancelButton;
+    Timer m_searchEventTimer;
 };
 
 } // namespace WebCore