Changeset 118006 in webkit


Ignore:
Timestamp:
May 22, 2012 11:11:52 AM (12 years ago)
Author:
commit-queue@webkit.org
Message:

[EFL][DRT] Key modifier bit flags have enum type.
https://bugs.webkit.org/show_bug.cgi?id=86838

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-05-22
Reviewed by Antonio Gomes.

Refactoring. Key modifier flags are unsigned int.
Key modifier bit flags used have enum type. It caused problems as a key can have several modifiers
at the same time and the union of modifiers (i.e. EvasKeyModifierControl | EvasKeyModifierShift)
would have been out of EvasKeyModifier enum.

  • DumpRenderTree/efl/EventSender.cpp:

(KeyEventInfo::KeyEventInfo):
(KeyEventInfo):
(MouseEventInfo::MouseEventInfo):
(MouseEventInfo):
(setEvasModifiers):
(modifiersFromJSValue):
(mouseDownCallback):
(mouseUpCallback):
(keyPadNameFromJSValue):
(keyNameFromJSValue):
(createKeyEventInfo):
(sendKeyDown):

Location:
trunk/Tools
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Tools/ChangeLog

    r118001 r118006  
     12012-05-22  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
     2
     3        [EFL][DRT] Key modifier bit flags have enum type.
     4        https://bugs.webkit.org/show_bug.cgi?id=86838
     5
     6        Reviewed by Antonio Gomes.
     7
     8        Refactoring. Key modifier flags are unsigned int.
     9        Key modifier bit flags used have enum type. It caused problems as a key can have several modifiers
     10        at the same time and the union of modifiers (i.e. EvasKeyModifierControl | EvasKeyModifierShift)
     11        would have been out of EvasKeyModifier enum.
     12
     13        * DumpRenderTree/efl/EventSender.cpp:
     14        (KeyEventInfo::KeyEventInfo):
     15        (KeyEventInfo):
     16        (MouseEventInfo::MouseEventInfo):
     17        (MouseEventInfo):
     18        (setEvasModifiers):
     19        (modifiersFromJSValue):
     20        (mouseDownCallback):
     21        (mouseUpCallback):
     22        (keyPadNameFromJSValue):
     23        (keyNameFromJSValue):
     24        (createKeyEventInfo):
     25        (sendKeyDown):
     26
    1272012-05-22  Takashi Sakamoto  <tasak@google.com>
    228
  • trunk/Tools/DumpRenderTree/efl/EventSender.cpp

    r117752 r118006  
    110110
    111111struct KeyEventInfo {
    112     KeyEventInfo(const CString& keyName, const CString& keyString, EvasKeyModifier modifiers)
     112    KeyEventInfo(const CString& keyName, const CString& keyString, unsigned modifiers)
    113113        : keyName(keyName)
    114114        , keyString(keyString)
     
    119119    const CString keyName;
    120120    const CString keyString;
    121     EvasKeyModifier modifiers;
     121    unsigned modifiers;
    122122};
    123123
    124124struct MouseEventInfo {
    125     MouseEventInfo(EvasMouseEvent event, EvasKeyModifier modifiers = EvasKeyModifierNone, EvasMouseButton button = EvasMouseButtonNone, int horizontalDelta = 0, int verticalDelta = 0)
     125    MouseEventInfo(EvasMouseEvent event, unsigned modifiers = EvasKeyModifierNone, EvasMouseButton button = EvasMouseButtonNone, int horizontalDelta = 0, int verticalDelta = 0)
    126126        : event(event)
    127127        , modifiers(modifiers)
     
    133133
    134134    EvasMouseEvent event;
    135     EvasKeyModifier modifiers;
     135    unsigned modifiers;
    136136    EvasMouseButton button;
    137137    int horizontalDelta;
     
    161161static void feedQueuedMouseEvents();
    162162
    163 static void setEvasModifiers(Evas* evas, EvasKeyModifier modifiers)
     163static void setEvasModifiers(Evas* evas, unsigned modifiers)
    164164{
    165165    static const char* modifierNames[] = { "Control", "Shift", "Alt", "Super" };
     
    228228}
    229229
    230 static EvasKeyModifier modifiersFromJSValue(JSContextRef context, const JSValueRef modifiers)
     230static unsigned modifiersFromJSValue(JSContextRef context, const JSValueRef modifiers)
    231231{
    232232    // The value may either be a string with a single modifier or an array of modifiers.
     
    238238        return EvasKeyModifierNone;
    239239
    240     unsigned modifier = 0;
     240    unsigned modifier = EvasKeyModifierNone;
    241241    JSRetainPtr<JSStringRef> lengthProperty(Adopt, JSStringCreateWithUTF8CString("length"));
    242242    int modifiersCount = JSValueToNumber(context, JSObjectGetProperty(context, modifiersArray, lengthProperty.get(), 0), 0);
    243243    for (int i = 0; i < modifiersCount; ++i)
    244         modifier |= static_cast<unsigned>(modifierFromJSValue(context, JSObjectGetPropertyAtIndex(context, modifiersArray, i, 0)));
    245     return static_cast<EvasKeyModifier>(modifier);
     244        modifier |= modifierFromJSValue(context, JSObjectGetPropertyAtIndex(context, modifiersArray, i, 0));
     245    return modifier;
    246246}
    247247
     
    263263    updateClickCount(button);
    264264
    265     EvasKeyModifier modifiers = argumentCount >= 2 ? modifiersFromJSValue(context, arguments[1]) : EvasKeyModifierNone;
     265    unsigned modifiers = argumentCount >= 2 ? modifiersFromJSValue(context, arguments[1]) : EvasKeyModifierNone;
    266266    MouseEventInfo* eventInfo = new MouseEventInfo(EvasMouseEventDown, modifiers, static_cast<EvasMouseButton>(button));
    267267    feedOrQueueMouseEvent(eventInfo, FeedQueuedEvents);
     
    285285    gButtonCurrentlyDown = 0;
    286286
    287     EvasKeyModifier modifiers = argumentCount >= 2 ? modifiersFromJSValue(context, arguments[1]) : EvasKeyModifierNone;
     287    unsigned modifiers = argumentCount >= 2 ? modifiersFromJSValue(context, arguments[1]) : EvasKeyModifierNone;
    288288    MouseEventInfo* eventInfo = new MouseEventInfo(EvasMouseEventUp, modifiers, translateMouseButtonNumber(button));
    289289    feedOrQueueMouseEvent(eventInfo, FeedQueuedEvents);
     
    363363}
    364364
    365 static KeyEventInfo* keyPadNameFromJSValue(JSStringRef character, EvasKeyModifier modifiers)
     365static KeyEventInfo* keyPadNameFromJSValue(JSStringRef character, unsigned modifiers)
    366366{
    367367    if (equals(character, "leftArrow"))
     
    389389}
    390390
    391 static KeyEventInfo* keyNameFromJSValue(JSStringRef character, EvasKeyModifier modifiers)
     391static KeyEventInfo* keyNameFromJSValue(JSStringRef character, unsigned modifiers)
    392392{
    393393    if (equals(character, "leftArrow"))
     
    472472        return 0;
    473473
    474     EvasKeyModifier modifiers = EvasKeyModifierNone;
     474    unsigned modifiers = EvasKeyModifierNone;
    475475    if (argumentCount >= 2)
    476476        modifiers = modifiersFromJSValue(context, arguments[1]);
     
    486486    const char* keyName = keyEventInfo->keyName.data();
    487487    const char* keyString = keyEventInfo->keyString.data();
    488     EvasKeyModifier modifiers = keyEventInfo->modifiers;
     488    unsigned modifiers = keyEventInfo->modifiers;
    489489
    490490    DumpRenderTreeSupportEfl::layoutFrame(browser->mainFrame());
Note: See TracChangeset for help on using the changeset viewer.