Changeset 90983 in webkit


Ignore:
Timestamp:
Jul 14, 2011 12:08:42 AM (13 years ago)
Author:
rniwa@webkit.org
Message:

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

Reviewed by Kent Tamura.

Moved forwardEvent from RenderTextControl, RenderTextControlSingleLine, and RenderTextControlMultiLine
to HTMLTextFormControlElement, HTMLInputElement, and HTMLTextAreaElement.

This removes the last dependency on Event.h and EventNames.h in the cpp files for the above render
objects classes.

  • html/HTMLTextAreaElement.cpp:

(WebCore::HTMLTextAreaElement::defaultEventHandler):

  • html/HTMLTextFormControlElement.cpp:

(WebCore::HTMLTextFormControlElement::forwardEvent):

  • html/HTMLTextFormControlElement.h:
  • html/TextFieldInputType.cpp:

(WebCore::TextFieldInputType::forwardEvent):

  • rendering/RenderTextControl.cpp:
  • rendering/RenderTextControl.h:
  • rendering/RenderTextControlMultiLine.cpp:
  • rendering/RenderTextControlMultiLine.h:
  • rendering/RenderTextControlSingleLine.cpp:
  • rendering/RenderTextControlSingleLine.h:
Location:
trunk/Source/WebCore
Files:
11 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r90980 r90983  
     12011-07-13  Ryosuke Niwa  <rniwa@webkit.org>
     2
     3        Move forwardEvent from RenderTextControl to HTMLTextFormControlElement
     4        https://bugs.webkit.org/show_bug.cgi?id=64475
     5
     6        Reviewed by Kent Tamura.
     7
     8        Moved forwardEvent from RenderTextControl, RenderTextControlSingleLine, and RenderTextControlMultiLine
     9        to HTMLTextFormControlElement, HTMLInputElement, and HTMLTextAreaElement.
     10
     11        This removes the last dependency on Event.h and EventNames.h in the cpp files for the above render
     12        objects classes.
     13
     14        * html/HTMLTextAreaElement.cpp:
     15        (WebCore::HTMLTextAreaElement::defaultEventHandler):
     16        * html/HTMLTextFormControlElement.cpp:
     17        (WebCore::HTMLTextFormControlElement::forwardEvent):
     18        * html/HTMLTextFormControlElement.h:
     19        * html/TextFieldInputType.cpp:
     20        (WebCore::TextFieldInputType::forwardEvent):
     21        * rendering/RenderTextControl.cpp:
     22        * rendering/RenderTextControl.h:
     23        * rendering/RenderTextControlMultiLine.cpp:
     24        * rendering/RenderTextControlMultiLine.h:
     25        * rendering/RenderTextControlSingleLine.cpp:
     26        * rendering/RenderTextControlSingleLine.h:
     27
    1282011-07-13  Ilya Tikhonovsky  <loislo@chromium.org>
    229
  • trunk/Source/WebCore/html/HTMLTextAreaElement.cpp

    r90971 r90983  
    236236{
    237237    if (renderer() && (event->isMouseEvent() || event->isDragEvent() || event->isWheelEvent() || event->type() == eventNames().blurEvent))
    238         toRenderTextControlMultiLine(renderer())->forwardEvent(event);
     238        forwardEvent(event);
    239239    else if (renderer() && event->isBeforeTextInsertedEvent())
    240240        handleBeforeTextInsertedEvent(static_cast<BeforeTextInsertedEvent*>(event));
  • trunk/Source/WebCore/html/HTMLTextFormControlElement.cpp

    r90971 r90983  
    9090}
    9191
     92void HTMLTextFormControlElement::forwardEvent(Event* event)
     93{
     94    if (event->type() == eventNames().blurEvent || event->type() == eventNames().focusEvent)
     95        return;
     96    innerTextElement()->defaultEventHandler(event);
     97}
     98
    9299String HTMLTextFormControlElement::strippedPlaceholder() const
    93100{
  • trunk/Source/WebCore/html/HTMLTextFormControlElement.h

    r90971 r90983  
    4040    virtual ~HTMLTextFormControlElement();
    4141
     42    void forwardEvent(Event*);
     43
    4244    virtual void insertedIntoDocument();
    4345
     
    7577protected:
    7678    HTMLTextFormControlElement(const QualifiedName&, Document*, HTMLFormElement*);
    77 
    7879    void updatePlaceholderVisibility(bool);
    7980    virtual void updatePlaceholderText() = 0;
  • trunk/Source/WebCore/html/TextFieldInputType.cpp

    r90971 r90983  
    3838#include "KeyboardEvent.h"
    3939#include "Page.h"
     40#include "RenderLayer.h"
    4041#include "RenderTextControlSingleLine.h"
    4142#include "RenderTheme.h"
     
    116117void TextFieldInputType::forwardEvent(Event* event)
    117118{
    118     if (element()->renderer() && (event->isMouseEvent() || event->isDragEvent() || event->isWheelEvent() || event->type() == eventNames().blurEvent || event->type() == eventNames().focusEvent))
    119         toRenderTextControlSingleLine(element()->renderer())->forwardEvent(event);
     119    if (element()->renderer() && (event->isMouseEvent() || event->isDragEvent() || event->isWheelEvent() || event->type() == eventNames().blurEvent || event->type() == eventNames().focusEvent)) {
     120        RenderTextControlSingleLine* renderTextControl = toRenderTextControlSingleLine(element()->renderer());
     121        if (event->type() == eventNames().blurEvent) {
     122            if (RenderBox* innerTextRenderer = innerTextElement()->renderBox()) {
     123                if (RenderLayer* innerLayer = innerTextRenderer->layer())
     124                    innerLayer->scrollToOffset(!renderTextControl->style()->isLeftToRightDirection() ? innerLayer->scrollWidth() : 0, 0, RenderLayer::ScrollOffsetClamped);
     125            }
     126
     127            renderTextControl->capsLockStateMayHaveChanged();
     128        } else if (event->type() == eventNames().focusEvent)
     129            renderTextControl->capsLockStateMayHaveChanged();
     130
     131        element()->forwardEvent(event);
     132    }
    120133}
    121134
  • trunk/Source/WebCore/rendering/RenderTextControl.cpp

    r90971 r90983  
    2525#include "AXObjectCache.h"
    2626#include "Editor.h"
    27 #include "Event.h"
    28 #include "EventNames.h"
    2927#include "Frame.h"
    30 #include "FrameSelection.h"
    3128#include "HTMLBRElement.h"
    3229#include "HTMLInputElement.h"
     
    317314    result.setInnerNonSharedNode(innerText);
    318315    result.setLocalPoint(pointInContainer - toSize(adjustedLocation + innerText->renderBox()->location()));
    319 }
    320 
    321 void RenderTextControl::forwardEvent(Event* event)
    322 {
    323     if (event->type() == eventNames().blurEvent || event->type() == eventNames().focusEvent)
    324         return;
    325     innerTextElement()->defaultEventHandler(event);
    326316}
    327317
  • trunk/Source/WebCore/rendering/RenderTextControl.h

    r90971 r90983  
    5858
    5959    void hitInnerTextElement(HitTestResult&, const LayoutPoint& pointInContainer, const LayoutPoint& accumulatedOffset);
    60     void forwardEvent(Event*);
    6160
    6261    int textBlockWidth() const;
  • trunk/Source/WebCore/rendering/RenderTextControlMultiLine.cpp

    r90971 r90983  
    2323#include "RenderTextControlMultiLine.h"
    2424
    25 #include "Event.h"
    26 #include "EventNames.h"
    2725#include "Frame.h"
    2826#include "HTMLNames.h"
     
    6967
    7068    return true;
    71 }
    72 
    73 void RenderTextControlMultiLine::forwardEvent(Event* event)
    74 {
    75     RenderTextControl::forwardEvent(event);
    7669}
    7770
  • trunk/Source/WebCore/rendering/RenderTextControlMultiLine.h

    r90971 r90983  
    3232    virtual ~RenderTextControlMultiLine();
    3333
    34     void forwardEvent(Event*);
    35 
    3634private:
    3735    virtual bool isTextArea() const { return true; }
  • trunk/Source/WebCore/rendering/RenderTextControlSingleLine.cpp

    r90971 r90983  
    2828#include "CSSStyleSelector.h"
    2929#include "Chrome.h"
    30 #include "Event.h"
    31 #include "EventNames.h"
    3230#include "Frame.h"
    3331#include "FrameSelection.h"
     
    3735#include "HitTestResult.h"
    3836#include "LocalizedStrings.h"
    39 #include "MouseEvent.h"
    4037#include "Page.h"
    4138#include "PlatformKeyboardEvent.h"
     
    4340#include "RenderScrollbar.h"
    4441#include "RenderTheme.h"
     42#include "SearchPopupMenu.h"
    4543#include "Settings.h"
    4644#include "SimpleFontData.h"
     
    362360    }
    363361    return true;
    364 }
    365 
    366 void RenderTextControlSingleLine::forwardEvent(Event* event)
    367 {
    368     RenderBox* innerTextRenderer = innerTextElement()->renderBox();
    369 
    370     if (event->type() == eventNames().blurEvent) {
    371         if (innerTextRenderer) {
    372             if (RenderLayer* innerLayer = innerTextRenderer->layer())
    373                 innerLayer->scrollToOffset(!style()->isLeftToRightDirection() ? innerLayer->scrollWidth() : 0, 0, RenderLayer::ScrollOffsetClamped);
    374         }
    375 
    376         capsLockStateMayHaveChanged();
    377     } else if (event->type() == eventNames().focusEvent)
    378         capsLockStateMayHaveChanged();
    379 
    380     RenderTextControl::forwardEvent(event);
    381362}
    382363
  • trunk/Source/WebCore/rendering/RenderTextControlSingleLine.h

    r90971 r90983  
    2424#define RenderTextControlSingleLine_h
    2525
    26 #include "HTMLInputElement.h"
    2726#include "PopupMenuClient.h"
    2827#include "RenderTextControl.h"
    29 #include "SearchPopupMenu.h"
    3028#include "Timer.h"
    3129
     
    3331
    3432class HTMLInputElement;
     33class SearchPopupMenu;
    3534
    3635class RenderTextControlSingleLine : public RenderTextControl, private PopupMenuClient {
     
    4847    void showPopup();
    4948    void hidePopup();
    50 
    51     void forwardEvent(Event*);
    5249
    5350    void capsLockStateMayHaveChanged();
Note: See TracChangeset for help on using the changeset viewer.