Title: [91014] trunk/Source/WebCore
Revision
91014
Author
[email protected]
Date
2011-07-14 10:45:04 -0700 (Thu, 14 Jul 2011)

Log Message

Move subtreeHasChanged from RenderTextControl to HTMLTextFormControlElement
https://bugs.webkit.org/show_bug.cgi?id=64476

Reviewed by Kent Tamura.

Moved subtreeHasChanged from RenderTextControl, RenderTextControlSingleLine, and
RenderTextControlMultiLine to HTMLTextFormControlElement, HTMLInputElement, and
HTMLTextAreaElement. Also moved m_searchEventTimer and related functions from
RenderTextSingleLine to SearchInputType.

* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::subtreeHasChanged): Moved from RenderTextControlSingleLine.
(WebCore::HTMLInputElement::onSearch): Calls stopSearchEventTimer.
* html/HTMLInputElement.h:
* html/HTMLTextAreaElement.cpp:
(WebCore::HTMLTextAreaElement::subtreeHasChanged): Moved from RenderTextMultiLine.
* html/HTMLTextAreaElement.h:
* html/HTMLTextFormControlElement.cpp:
(WebCore::HTMLTextFormControlElement::defaultEventHandler): Calls subtreeHasChanged.
(WebCore::HTMLTextFormControlElement::subtreeHasChanged): Added; calls respondToChangeByUser.
* html/HTMLTextFormControlElement.h:
* html/SearchInputType.cpp:
(WebCore::SearchInputType::SearchInputType): Initializes m_searchEventTimer.
(WebCore::SearchInputType::startSearchEventTimer): Moved from RenderTextControlSingleLine.
(WebCore::SearchInputType::stopSearchEventTimer): Ditto.
(WebCore::SearchInputType::searchEventTimerFired): Ditto.
* html/SearchInputType.h:
* html/TextFieldInputType.cpp:
(WebCore::TextFieldInputType::handleBeforeTextInsertedEvent): Updated comment.
* rendering/RenderTextControl.cpp:
* rendering/RenderTextControl.h:
(WebCore::RenderTextControl::respondToChangeByUser): Renamed from subtreeHasChanged.
* rendering/RenderTextControlMultiLine.cpp:
* rendering/RenderTextControlMultiLine.h:
* rendering/RenderTextControlSingleLine.cpp:
(WebCore::RenderTextControlSingleLine::RenderTextControlSingleLine): No longer initializes
m_searchEventTimer.
* rendering/RenderTextControlSingleLine.h:

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (91013 => 91014)


--- trunk/Source/WebCore/ChangeLog	2011-07-14 17:44:29 UTC (rev 91013)
+++ trunk/Source/WebCore/ChangeLog	2011-07-14 17:45:04 UTC (rev 91014)
@@ -1,3 +1,44 @@
+2011-07-14  Ryosuke Niwa  <[email protected]>
+
+        Move subtreeHasChanged from RenderTextControl to HTMLTextFormControlElement
+        https://bugs.webkit.org/show_bug.cgi?id=64476
+
+        Reviewed by Kent Tamura.
+
+        Moved subtreeHasChanged from RenderTextControl, RenderTextControlSingleLine, and
+        RenderTextControlMultiLine to HTMLTextFormControlElement, HTMLInputElement, and
+        HTMLTextAreaElement. Also moved m_searchEventTimer and related functions from
+        RenderTextSingleLine to SearchInputType.
+
+        * html/HTMLInputElement.cpp:
+        (WebCore::HTMLInputElement::subtreeHasChanged): Moved from RenderTextControlSingleLine.
+        (WebCore::HTMLInputElement::onSearch): Calls stopSearchEventTimer.
+        * html/HTMLInputElement.h:
+        * html/HTMLTextAreaElement.cpp:
+        (WebCore::HTMLTextAreaElement::subtreeHasChanged): Moved from RenderTextMultiLine.
+        * html/HTMLTextAreaElement.h:
+        * html/HTMLTextFormControlElement.cpp:
+        (WebCore::HTMLTextFormControlElement::defaultEventHandler): Calls subtreeHasChanged.
+        (WebCore::HTMLTextFormControlElement::subtreeHasChanged): Added; calls respondToChangeByUser.
+        * html/HTMLTextFormControlElement.h:
+        * html/SearchInputType.cpp:
+        (WebCore::SearchInputType::SearchInputType): Initializes m_searchEventTimer.
+        (WebCore::SearchInputType::startSearchEventTimer): Moved from RenderTextControlSingleLine.
+        (WebCore::SearchInputType::stopSearchEventTimer): Ditto.
+        (WebCore::SearchInputType::searchEventTimerFired): Ditto.
+        * html/SearchInputType.h:
+        * html/TextFieldInputType.cpp:
+        (WebCore::TextFieldInputType::handleBeforeTextInsertedEvent): Updated comment.
+        * rendering/RenderTextControl.cpp:
+        * rendering/RenderTextControl.h:
+        (WebCore::RenderTextControl::respondToChangeByUser): Renamed from subtreeHasChanged.
+        * rendering/RenderTextControlMultiLine.cpp:
+        * rendering/RenderTextControlMultiLine.h:
+        * rendering/RenderTextControlSingleLine.cpp:
+        (WebCore::RenderTextControlSingleLine::RenderTextControlSingleLine): No longer initializes
+        m_searchEventTimer.
+        * rendering/RenderTextControlSingleLine.h:
+
 2011-07-14  Vsevolod Vlasov  <[email protected]>
 
         Move XML errors handling out from XMLDocumentParser (refactoring).

Modified: trunk/Source/WebCore/html/HTMLInputElement.cpp (91013 => 91014)


--- trunk/Source/WebCore/html/HTMLInputElement.cpp	2011-07-14 17:44:29 UTC (rev 91013)
+++ trunk/Source/WebCore/html/HTMLInputElement.cpp	2011-07-14 17:45:04 UTC (rev 91014)
@@ -55,6 +55,7 @@
 #include "RenderTextControlSingleLine.h"
 #include "RenderTheme.h"
 #include "RuntimeEnabledFeatures.h"
+#include "SearchInputType.h"
 #include "ScriptEventListener.h"
 #include "WheelEvent.h"
 #include <wtf/MathExtras.h>
@@ -614,6 +615,45 @@
     notifyFormStateChanged();
 }
 
+void HTMLInputElement::subtreeHasChanged()
+{
+    ASSERT(isTextField());
+    ASSERT(renderer());
+    RenderTextControlSingleLine* renderTextControl = toRenderTextControlSingleLine(renderer());
+
+    HTMLTextFormControlElement::subtreeHasChanged();
+
+    bool wasChanged = wasChangedSinceLastFormControlChangeEvent();
+    setChangedSinceLastFormControlChangeEvent(true);
+
+    // We don't need to call sanitizeUserInputValue() function here because
+    // HTMLInputElement::handleBeforeTextInsertedEvent() has already called
+    // sanitizeUserInputValue().
+    // sanitizeValue() is needed because IME input doesn't dispatch BeforeTextInsertedEvent.
+    String value = toRenderTextControl(renderer())->text();
+    if (isAcceptableValue(value))
+        setValueFromRenderer(sanitizeValue(convertFromVisibleValue(value)));
+    // Recalc for :invalid and hasUnacceptableValue() change.
+    setNeedsStyleRecalc();
+
+    if (cancelButtonElement())
+        renderTextControl->updateCancelButtonVisibility();
+
+    // If the incremental attribute is set, then dispatch the search event
+    if (searchEventsShouldBeDispatched() && isSearchField() && m_inputType)
+        static_cast<SearchInputType*>(m_inputType.get())->startSearchEventTimer();
+
+    if (!wasChanged && focused()) {
+        if (Frame* frame = document()->frame())
+            frame->editor()->textFieldDidBeginEditing(this);
+    }
+
+    if (focused()) {
+        if (Frame* frame = document()->frame())
+            frame->editor()->textDidChangeInTextField(this);
+    }
+}
+
 const AtomicString& HTMLInputElement::formControlType() const
 {
     return m_inputType->formControlType();
@@ -1373,8 +1413,8 @@
 void HTMLInputElement::onSearch()
 {
     ASSERT(isSearchField());
-    if (renderer())
-        toRenderTextControlSingleLine(renderer())->stopSearchEventTimer();
+    if (m_inputType)
+        static_cast<SearchInputType*>(m_inputType.get())->stopSearchEventTimer();
     dispatchEvent(Event::create(eventNames().searchEvent, true, false));
 }
 

Modified: trunk/Source/WebCore/html/HTMLInputElement.h (91013 => 91014)


--- trunk/Source/WebCore/html/HTMLInputElement.h	2011-07-14 17:44:29 UTC (rev 91013)
+++ trunk/Source/WebCore/html/HTMLInputElement.h	2011-07-14 17:45:04 UTC (rev 91014)
@@ -315,6 +315,8 @@
     virtual bool recalcWillValidate() const;
 
     void updateType();
+    
+    virtual void subtreeHasChanged();
 
     bool getAllowedValueStepWithDecimalPlaces(AnyStepHandling, double*, unsigned*) const;
 

Modified: trunk/Source/WebCore/html/HTMLTextAreaElement.cpp (91013 => 91014)


--- trunk/Source/WebCore/html/HTMLTextAreaElement.cpp	2011-07-14 17:44:29 UTC (rev 91013)
+++ trunk/Source/WebCore/html/HTMLTextAreaElement.cpp	2011-07-14 17:45:04 UTC (rev 91014)
@@ -242,6 +242,21 @@
     HTMLTextFormControlElement::defaultEventHandler(event);
 }
 
+void HTMLTextAreaElement::subtreeHasChanged()
+{
+    HTMLTextFormControlElement::subtreeHasChanged();
+
+    setChangedSinceLastFormControlChangeEvent(true);
+    setFormControlValueMatchesRenderer(false);
+    setNeedsValidityCheck();
+
+    if (!focused())
+        return;
+
+    if (Frame* frame = document()->frame())
+        frame->editor()->textDidChangeInTextArea(this);
+}
+
 void HTMLTextAreaElement::handleBeforeTextInsertedEvent(BeforeTextInsertedEvent* event) const
 {
     ASSERT(event);

Modified: trunk/Source/WebCore/html/HTMLTextAreaElement.h (91013 => 91014)


--- trunk/Source/WebCore/html/HTMLTextAreaElement.h	2011-07-14 17:44:29 UTC (rev 91013)
+++ trunk/Source/WebCore/html/HTMLTextAreaElement.h	2011-07-14 17:45:04 UTC (rev 91014)
@@ -82,6 +82,8 @@
     virtual bool isRequiredFormControl() const { return required(); }
 
     virtual void defaultEventHandler(Event*);
+    
+    virtual void subtreeHasChanged();
 
     virtual bool isEnumeratable() const { return true; }
 

Modified: trunk/Source/WebCore/html/HTMLTextFormControlElement.cpp (91013 => 91014)


--- trunk/Source/WebCore/html/HTMLTextFormControlElement.cpp	2011-07-14 17:44:29 UTC (rev 91013)
+++ trunk/Source/WebCore/html/HTMLTextFormControlElement.cpp	2011-07-14 17:45:04 UTC (rev 91014)
@@ -82,7 +82,7 @@
 void HTMLTextFormControlElement::defaultEventHandler(Event* event)
 {
     if (event->type() == eventNames().webkitEditableContentChangedEvent && renderer() && renderer()->isTextControl()) {
-        toRenderTextControl(renderer())->subtreeHasChanged();
+        subtreeHasChanged();
         return;
     }
 
@@ -96,6 +96,11 @@
     innerTextElement()->defaultEventHandler(event);
 }
 
+void HTMLTextFormControlElement::subtreeHasChanged()
+{
+    toRenderTextControl(renderer())->respondToChangeByUser();
+}
+
 String HTMLTextFormControlElement::strippedPlaceholder() const
 {
     // According to the HTML5 specification, we need to remove CR and LF from

Modified: trunk/Source/WebCore/html/HTMLTextFormControlElement.h (91013 => 91014)


--- trunk/Source/WebCore/html/HTMLTextFormControlElement.h	2011-07-14 17:44:29 UTC (rev 91013)
+++ trunk/Source/WebCore/html/HTMLTextFormControlElement.h	2011-07-14 17:45:04 UTC (rev 91014)
@@ -88,6 +88,7 @@
     bool hasCachedSelectionEnd() const { return m_cachedSelectionEnd >= 0; }
 
     virtual void defaultEventHandler(Event*);
+    virtual void subtreeHasChanged();
 
 private:
     int computeSelectionStart() const;

Modified: trunk/Source/WebCore/html/SearchInputType.cpp (91013 => 91014)


--- trunk/Source/WebCore/html/SearchInputType.cpp	2011-07-14 17:44:29 UTC (rev 91013)
+++ trunk/Source/WebCore/html/SearchInputType.cpp	2011-07-14 17:45:04 UTC (rev 91014)
@@ -32,6 +32,7 @@
 #include "SearchInputType.h"
 
 #include "HTMLInputElement.h"
+#include "RenderTextControlSingleLine.h"
 #include "ShadowRoot.h"
 #include "TextControlInnerElements.h"
 #include <wtf/PassOwnPtr.h>
@@ -40,6 +41,7 @@
 
 inline SearchInputType::SearchInputType(HTMLInputElement* element)
     : BaseTextInputType(element)
+    , m_searchEventTimer(this, &SearchInputType::searchEventTimerFired)
 {
 }
 
@@ -104,5 +106,31 @@
     m_cancelButton.clear();
 }
 
+void SearchInputType::startSearchEventTimer()
+{
+    ASSERT(element()->renderer());
+    unsigned length = toRenderTextControlSingleLine(element()->renderer())->text().length();
 
+    if (!length) {
+        stopSearchEventTimer();
+        element()->onSearch();
+        return;
+    }
+
+    // After typing the first key, we wait 0.5 seconds.
+    // After the second key, 0.4 seconds, then 0.3, then 0.2 from then on.
+    m_searchEventTimer.startOneShot(max(0.2, 0.6 - 0.1 * length));
+}
+
+void SearchInputType::stopSearchEventTimer()
+{
+    m_searchEventTimer.stop();
+}
+
+void SearchInputType::searchEventTimerFired(Timer<SearchInputType>*)
+{
+    element()->onSearch();
+}
+
+
 } // namespace WebCore

Modified: trunk/Source/WebCore/html/SearchInputType.h (91013 => 91014)


--- trunk/Source/WebCore/html/SearchInputType.h	2011-07-14 17:44:29 UTC (rev 91013)
+++ trunk/Source/WebCore/html/SearchInputType.h	2011-07-14 17:45:04 UTC (rev 91014)
@@ -32,6 +32,7 @@
 #define SearchInputType_h
 
 #include "BaseTextInputType.h"
+#include "Timer.h"
 
 namespace WebCore {
 
@@ -42,6 +43,9 @@
 public:
     static PassOwnPtr<InputType> create(HTMLInputElement*);
 
+    void startSearchEventTimer();
+    void stopSearchEventTimer();
+
 private:
     SearchInputType(HTMLInputElement*);
     virtual const AtomicString& formControlType() const;
@@ -53,8 +57,11 @@
     virtual HTMLElement* resultsButtonElement() const;
     virtual HTMLElement* cancelButtonElement() const;
 
+    void searchEventTimerFired(Timer<SearchInputType>*);
+
     RefPtr<HTMLElement> m_resultsButton;
     RefPtr<HTMLElement> m_cancelButton;
+    Timer<SearchInputType> m_searchEventTimer;
 };
 
 } // namespace WebCore

Modified: trunk/Source/WebCore/html/TextFieldInputType.cpp (91013 => 91014)


--- trunk/Source/WebCore/html/TextFieldInputType.cpp	2011-07-14 17:44:29 UTC (rev 91013)
+++ trunk/Source/WebCore/html/TextFieldInputType.cpp	2011-07-14 17:45:04 UTC (rev 91014)
@@ -279,7 +279,7 @@
 
     // We use RenderTextControlSingleLine::text() instead of InputElement::value()
     // because they can be mismatched by sanitizeValue() in
-    // RenderTextControlSingleLine::subtreeHasChanged() in some cases.
+    // HTMLInputElement::subtreeHasChanged() in some cases.
     unsigned oldLength = numGraphemeClusters(toRenderTextControlSingleLine(element()->renderer())->text());
 
     // selectionLength represents the selection length of this text field to be

Modified: trunk/Source/WebCore/rendering/RenderTextControl.cpp (91013 => 91014)


--- trunk/Source/WebCore/rendering/RenderTextControl.cpp	2011-07-14 17:44:29 UTC (rev 91013)
+++ trunk/Source/WebCore/rendering/RenderTextControl.cpp	2011-07-14 17:45:04 UTC (rev 91014)
@@ -172,12 +172,6 @@
     static_cast<Element*>(node())->setFormControlValueMatchesRenderer(true);
 }
 
-void RenderTextControl::setLastChangeWasUserEdit(bool lastChangeWasUserEdit)
-{
-    m_lastChangeWasUserEdit = lastChangeWasUserEdit;
-    document()->setIgnoreAutofocus(lastChangeWasUserEdit);
-}
-
 VisiblePosition RenderTextControl::visiblePositionForIndex(int index) const
 {
     if (index <= 0)
@@ -191,11 +185,6 @@
     return VisiblePosition(it.range()->endPosition(), UPSTREAM);
 }
 
-void RenderTextControl::subtreeHasChanged()
-{
-    m_lastChangeWasUserEdit = true;
-}
-
 static String finishText(StringBuilder& result)
 {
     // Remove one trailing newline; there's always one that's collapsed out by rendering.

Modified: trunk/Source/WebCore/rendering/RenderTextControl.h (91013 => 91014)


--- trunk/Source/WebCore/rendering/RenderTextControl.h	2011-07-14 17:44:29 UTC (rev 91013)
+++ trunk/Source/WebCore/rendering/RenderTextControl.h	2011-07-14 17:45:04 UTC (rev 91014)
@@ -36,9 +36,7 @@
     virtual PassRefPtr<RenderStyle> createInnerTextStyle(const RenderStyle* startStyle) const = 0;
 
     bool lastChangeWasUserEdit() const { return m_lastChangeWasUserEdit; }
-    void setLastChangeWasUserEdit(bool lastChangeWasUserEdit);
-
-    virtual void subtreeHasChanged();
+    void respondToChangeByUser() { m_lastChangeWasUserEdit = true; }
     String text();
     String textWithHardLineBreaks();
 

Modified: trunk/Source/WebCore/rendering/RenderTextControlMultiLine.cpp (91013 => 91014)


--- trunk/Source/WebCore/rendering/RenderTextControlMultiLine.cpp	2011-07-14 17:44:29 UTC (rev 91013)
+++ trunk/Source/WebCore/rendering/RenderTextControlMultiLine.cpp	2011-07-14 17:45:04 UTC (rev 91014)
@@ -42,21 +42,6 @@
         static_cast<HTMLTextAreaElement*>(node())->rendererWillBeDestroyed();
 }
 
-void RenderTextControlMultiLine::subtreeHasChanged()
-{
-    RenderTextControl::subtreeHasChanged();
-    HTMLTextAreaElement* textArea = static_cast<HTMLTextAreaElement*>(node());
-    textArea->setChangedSinceLastFormControlChangeEvent(true);
-    textArea->setFormControlValueMatchesRenderer(false);
-    textArea->setNeedsValidityCheck();
-
-    if (!node()->focused())
-        return;
-
-    if (Frame* frame = this->frame())
-        frame->editor()->textDidChangeInTextArea(textArea);
-}
-
 bool RenderTextControlMultiLine::nodeAtPoint(const HitTestRequest& request, HitTestResult& result, const LayoutPoint& pointInContainer, const LayoutPoint& accumulatedOffset, HitTestAction hitTestAction)
 {
     if (!RenderTextControl::nodeAtPoint(request, result, pointInContainer, accumulatedOffset, hitTestAction))

Modified: trunk/Source/WebCore/rendering/RenderTextControlMultiLine.h (91013 => 91014)


--- trunk/Source/WebCore/rendering/RenderTextControlMultiLine.h	2011-07-14 17:44:29 UTC (rev 91013)
+++ trunk/Source/WebCore/rendering/RenderTextControlMultiLine.h	2011-07-14 17:45:04 UTC (rev 91014)
@@ -34,8 +34,6 @@
 private:
     virtual bool isTextArea() const { return true; }
 
-    virtual void subtreeHasChanged();
-
     virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const LayoutPoint& pointInContainer, const LayoutPoint& accumulatedOffset, HitTestAction);
 
     virtual float getAvgCharWidth(AtomicString family);

Modified: trunk/Source/WebCore/rendering/RenderTextControlSingleLine.cpp (91013 => 91014)


--- trunk/Source/WebCore/rendering/RenderTextControlSingleLine.cpp	2011-07-14 17:44:29 UTC (rev 91013)
+++ trunk/Source/WebCore/rendering/RenderTextControlSingleLine.cpp	2011-07-14 17:45:04 UTC (rev 91014)
@@ -72,7 +72,6 @@
     , m_searchPopupIsVisible(false)
     , m_shouldDrawCapsLockIndicator(false)
     , m_desiredInnerTextHeight(-1)
-    , m_searchEventTimer(this, &RenderTextControlSingleLine::searchEventTimerFired)
     , m_searchPopup(0)
 {
     ASSERT(node->isHTMLElement());
@@ -156,11 +155,6 @@
     m_searchPopup->saveRecentSearches(name, m_recentSearches);
 }
 
-void RenderTextControlSingleLine::stopSearchEventTimer()
-{
-    m_searchEventTimer.stop();
-}
-
 void RenderTextControlSingleLine::showPopup()
 {
     if (m_searchPopupIsVisible)
@@ -196,44 +190,6 @@
         m_searchPopup->popupMenu()->hide();
 }
 
-void RenderTextControlSingleLine::subtreeHasChanged()
-{
-    RenderTextControl::subtreeHasChanged();
-
-    ASSERT(node()->isElementNode());
-    Element* element = static_cast<Element*>(node());
-    bool wasChanged = element->wasChangedSinceLastFormControlChangeEvent();
-    element->setChangedSinceLastFormControlChangeEvent(true);
-
-    HTMLInputElement* input = inputElement();
-    // We don't need to call sanitizeUserInputValue() function here because
-    // HTMLInputElement::handleBeforeTextInsertedEvent() has already called
-    // sanitizeUserInputValue().
-    // sanitizeValue() is needed because IME input doesn't dispatch BeforeTextInsertedEvent.
-    String value = text();
-    if (input->isAcceptableValue(value))
-        input->setValueFromRenderer(input->sanitizeValue(input->convertFromVisibleValue(value)));
-    // Recalc for :invalid and hasUnacceptableValue() change.
-    input->setNeedsStyleRecalc();
-
-    if (cancelButtonElement())
-        updateCancelButtonVisibility();
-
-    // If the incremental attribute is set, then dispatch the search event
-    if (input->searchEventsShouldBeDispatched())
-        startSearchEventTimer();
-
-    if (!wasChanged && node()->focused()) {
-        if (Frame* frame = this->frame())
-            frame->editor()->textFieldDidBeginEditing(static_cast<Element*>(node()));
-    }
-
-    if (node()->focused()) {
-        if (Frame* frame = document()->frame())
-            frame->editor()->textDidChangeInTextField(static_cast<Element*>(node()));
-    }
-}
-
 void RenderTextControlSingleLine::paint(PaintInfo& paintInfo, const LayoutPoint& paintOffset)
 {
     RenderTextControl::paint(paintInfo, paintOffset);
@@ -588,27 +544,6 @@
     return static_cast<Element*>(node())->getAttribute(autosaveAttr);
 }
 
-void RenderTextControlSingleLine::startSearchEventTimer()
-{
-    unsigned length = text().length();
-
-    // If there's no text, fire the event right away.
-    if (!length) {
-        stopSearchEventTimer();
-        inputElement()->onSearch();
-        return;
-    }
-
-    // After typing the first key, we wait 0.5 seconds.
-    // After the second key, 0.4 seconds, then 0.3, then 0.2 from then on.
-    m_searchEventTimer.startOneShot(max(0.2, 0.6 - 0.1 * length));
-}
-
-void RenderTextControlSingleLine::searchEventTimerFired(Timer<RenderTextControlSingleLine>*)
-{
-    inputElement()->onSearch();
-}
-
 // PopupMenuClient methods
 void RenderTextControlSingleLine::valueChanged(unsigned listIndex, bool fireEvents)
 {

Modified: trunk/Source/WebCore/rendering/RenderTextControlSingleLine.h (91013 => 91014)


--- trunk/Source/WebCore/rendering/RenderTextControlSingleLine.h	2011-07-14 17:44:29 UTC (rev 91013)
+++ trunk/Source/WebCore/rendering/RenderTextControlSingleLine.h	2011-07-14 17:45:04 UTC (rev 91014)
@@ -25,7 +25,6 @@
 
 #include "PopupMenuClient.h"
 #include "RenderTextControl.h"
-#include "Timer.h"
 
 namespace WebCore {
 
@@ -39,6 +38,7 @@
     // FIXME: Move create*Style() to their classes.
     virtual PassRefPtr<RenderStyle> createInnerTextStyle(const RenderStyle* startStyle) const;
     PassRefPtr<RenderStyle> createInnerBlockStyle(const RenderStyle* startStyle) const;
+    void updateCancelButtonVisibility() const;
 
     void addSearchResult();
     void stopSearchEventTimer();
@@ -54,7 +54,6 @@
     virtual IntRect controlClipRect(const IntPoint&) const;
     virtual bool isTextField() const { return true; }
 
-    virtual void subtreeHasChanged();
     virtual void paint(PaintInfo&, const LayoutPoint&);
     virtual void layout();
 
@@ -82,13 +81,9 @@
 
     virtual RenderStyle* textBaseStyle() const;
 
-    void updateCancelButtonVisibility() const;
     EVisibility visibilityForCancelButton() const;
     const AtomicString& autosaveName() const;
 
-    void startSearchEventTimer();
-    void searchEventTimerFired(Timer<RenderTextControlSingleLine>*);
-
     // PopupMenuClient methods
     virtual void valueChanged(unsigned listIndex, bool fireEvents = true);
     virtual void selectionChanged(unsigned, bool) {}
@@ -132,7 +127,6 @@
     bool m_searchPopupIsVisible;
     bool m_shouldDrawCapsLockIndicator;
     LayoutUnit m_desiredInnerTextHeight;
-    Timer<RenderTextControlSingleLine> m_searchEventTimer;
     RefPtr<SearchPopupMenu> m_searchPopup;
     Vector<String> m_recentSearches;
 };
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to