Changeset 118006 in webkit
- Timestamp:
- May 22, 2012 11:11:52 AM (12 years ago)
- Location:
- trunk/Tools
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Tools/ChangeLog
r118001 r118006 1 2012-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 1 27 2012-05-22 Takashi Sakamoto <tasak@google.com> 2 28 -
trunk/Tools/DumpRenderTree/efl/EventSender.cpp
r117752 r118006 110 110 111 111 struct KeyEventInfo { 112 KeyEventInfo(const CString& keyName, const CString& keyString, EvasKeyModifiermodifiers)112 KeyEventInfo(const CString& keyName, const CString& keyString, unsigned modifiers) 113 113 : keyName(keyName) 114 114 , keyString(keyString) … … 119 119 const CString keyName; 120 120 const CString keyString; 121 EvasKeyModifiermodifiers;121 unsigned modifiers; 122 122 }; 123 123 124 124 struct MouseEventInfo { 125 MouseEventInfo(EvasMouseEvent event, EvasKeyModifiermodifiers = 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) 126 126 : event(event) 127 127 , modifiers(modifiers) … … 133 133 134 134 EvasMouseEvent event; 135 EvasKeyModifiermodifiers;135 unsigned modifiers; 136 136 EvasMouseButton button; 137 137 int horizontalDelta; … … 161 161 static void feedQueuedMouseEvents(); 162 162 163 static void setEvasModifiers(Evas* evas, EvasKeyModifiermodifiers)163 static void setEvasModifiers(Evas* evas, unsigned modifiers) 164 164 { 165 165 static const char* modifierNames[] = { "Control", "Shift", "Alt", "Super" }; … … 228 228 } 229 229 230 static EvasKeyModifiermodifiersFromJSValue(JSContextRef context, const JSValueRef modifiers)230 static unsigned modifiersFromJSValue(JSContextRef context, const JSValueRef modifiers) 231 231 { 232 232 // The value may either be a string with a single modifier or an array of modifiers. … … 238 238 return EvasKeyModifierNone; 239 239 240 unsigned modifier = 0;240 unsigned modifier = EvasKeyModifierNone; 241 241 JSRetainPtr<JSStringRef> lengthProperty(Adopt, JSStringCreateWithUTF8CString("length")); 242 242 int modifiersCount = JSValueToNumber(context, JSObjectGetProperty(context, modifiersArray, lengthProperty.get(), 0), 0); 243 243 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; 246 246 } 247 247 … … 263 263 updateClickCount(button); 264 264 265 EvasKeyModifiermodifiers = argumentCount >= 2 ? modifiersFromJSValue(context, arguments[1]) : EvasKeyModifierNone;265 unsigned modifiers = argumentCount >= 2 ? modifiersFromJSValue(context, arguments[1]) : EvasKeyModifierNone; 266 266 MouseEventInfo* eventInfo = new MouseEventInfo(EvasMouseEventDown, modifiers, static_cast<EvasMouseButton>(button)); 267 267 feedOrQueueMouseEvent(eventInfo, FeedQueuedEvents); … … 285 285 gButtonCurrentlyDown = 0; 286 286 287 EvasKeyModifiermodifiers = argumentCount >= 2 ? modifiersFromJSValue(context, arguments[1]) : EvasKeyModifierNone;287 unsigned modifiers = argumentCount >= 2 ? modifiersFromJSValue(context, arguments[1]) : EvasKeyModifierNone; 288 288 MouseEventInfo* eventInfo = new MouseEventInfo(EvasMouseEventUp, modifiers, translateMouseButtonNumber(button)); 289 289 feedOrQueueMouseEvent(eventInfo, FeedQueuedEvents); … … 363 363 } 364 364 365 static KeyEventInfo* keyPadNameFromJSValue(JSStringRef character, EvasKeyModifiermodifiers)365 static KeyEventInfo* keyPadNameFromJSValue(JSStringRef character, unsigned modifiers) 366 366 { 367 367 if (equals(character, "leftArrow")) … … 389 389 } 390 390 391 static KeyEventInfo* keyNameFromJSValue(JSStringRef character, EvasKeyModifiermodifiers)391 static KeyEventInfo* keyNameFromJSValue(JSStringRef character, unsigned modifiers) 392 392 { 393 393 if (equals(character, "leftArrow")) … … 472 472 return 0; 473 473 474 EvasKeyModifiermodifiers = EvasKeyModifierNone;474 unsigned modifiers = EvasKeyModifierNone; 475 475 if (argumentCount >= 2) 476 476 modifiers = modifiersFromJSValue(context, arguments[1]); … … 486 486 const char* keyName = keyEventInfo->keyName.data(); 487 487 const char* keyString = keyEventInfo->keyString.data(); 488 EvasKeyModifiermodifiers = keyEventInfo->modifiers;488 unsigned modifiers = keyEventInfo->modifiers; 489 489 490 490 DumpRenderTreeSupportEfl::layoutFrame(browser->mainFrame());
Note: See TracChangeset
for help on using the changeset viewer.