Title: [129802] trunk/Tools
- Revision
- 129802
- Author
- commit-qu...@webkit.org
- Date
- 2012-09-27 14:44:01 -0700 (Thu, 27 Sep 2012)
Log Message
[Mac][DRT] Add support to allow non-array modifier arguments in keyDown()
https://bugs.webkit.org/show_bug.cgi?id=97805
Patch by Sudarsana Nagineni <sudarsana.nagin...@intel.com> on 2012-09-27
Reviewed by Alexey Proskuryakov.
Add support for handling a string as modifier argument to keyDown().
This support has already been added to other ports, so implementing
this on Mac too, to be consistent with the other ports.
* DumpRenderTree/mac/EventSendingController.mm:
(modifierFlags):
(buildModifierFlags):
Modified Paths
Diff
Modified: trunk/Tools/ChangeLog (129801 => 129802)
--- trunk/Tools/ChangeLog 2012-09-27 21:36:36 UTC (rev 129801)
+++ trunk/Tools/ChangeLog 2012-09-27 21:44:01 UTC (rev 129802)
@@ -1,3 +1,18 @@
+2012-09-27 Sudarsana Nagineni <sudarsana.nagin...@intel.com>
+
+ [Mac][DRT] Add support to allow non-array modifier arguments in keyDown()
+ https://bugs.webkit.org/show_bug.cgi?id=97805
+
+ Reviewed by Alexey Proskuryakov.
+
+ Add support for handling a string as modifier argument to keyDown().
+ This support has already been added to other ports, so implementing
+ this on Mac too, to be consistent with the other ports.
+
+ * DumpRenderTree/mac/EventSendingController.mm:
+ (modifierFlags):
+ (buildModifierFlags):
+
2012-09-27 Dirk Pranke <dpra...@chromium.org>
efl wk2 bots weren't looking at platform/wk2/TestExpectations
Modified: trunk/Tools/DumpRenderTree/mac/EventSendingController.mm (129801 => 129802)
--- trunk/Tools/DumpRenderTree/mac/EventSendingController.mm 2012-09-27 21:36:36 UTC (rev 129801)
+++ trunk/Tools/DumpRenderTree/mac/EventSendingController.mm 2012-09-27 21:44:01 UTC (rev 129802)
@@ -299,21 +299,31 @@
clickCount++;
}
+static int modifierFlags(const NSString* modifierName)
+{
+ int flags = 0;
+ if ([modifierName isEqual:@"ctrlKey"])
+ flags |= NSControlKeyMask;
+ else if ([modifierName isEqual:@"shiftKey"] || [modifierName isEqual:@"rangeSelectionKey"])
+ flags |= NSShiftKeyMask;
+ else if ([modifierName isEqual:@"altKey"])
+ flags |= NSAlternateKeyMask;
+ else if ([modifierName isEqual:@"metaKey"] || [modifierName isEqual:@"addSelectionKey"])
+ flags |= NSCommandKeyMask;
+
+ return flags;
+}
+
static int buildModifierFlags(const WebScriptObject* modifiers)
{
int flags = 0;
- if (![modifiers isKindOfClass:[WebScriptObject class]])
+ if ([modifiers isKindOfClass:[NSString class]])
+ return modifierFlags((NSString*)modifiers);
+ else if (![modifiers isKindOfClass:[WebScriptObject class]])
return flags;
for (unsigned i = 0; [[modifiers webScriptValueAtIndex:i] isKindOfClass:[NSString class]]; i++) {
NSString* modifierName = (NSString*)[modifiers webScriptValueAtIndex:i];
- if ([modifierName isEqual:@"ctrlKey"])
- flags |= NSControlKeyMask;
- else if ([modifierName isEqual:@"shiftKey"] || [modifierName isEqual:@"rangeSelectionKey"])
- flags |= NSShiftKeyMask;
- else if ([modifierName isEqual:@"altKey"])
- flags |= NSAlternateKeyMask;
- else if ([modifierName isEqual:@"metaKey"] || [modifierName isEqual:@"addSelectionKey"])
- flags |= NSCommandKeyMask;
+ flags |= modifierFlags(modifierName);
}
return flags;
}
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
http://lists.webkit.org/mailman/listinfo/webkit-changes