[SCM] WebKit Debian packaging branch, webkit-1.1, updated. upstream/1.1.19-706-ge5415e9
eric at webkit.org
eric at webkit.org
Thu Feb 4 21:29:42 UTC 2010
The following commit has been merged in the webkit-1.1 branch:
commit 2ec0f51b2a1b1bc903ac2f71c90d48bea31f86a5
Author: eric at webkit.org <eric at webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Wed Jan 27 19:01:38 2010 +0000
2010-01-27 Kinuko Yasuda <kinuko at chromium.org>
Reviewed by Eric Seidel.
Remove fast/events/keydown-numpad-keys.html from gtk's Skipped list.
https://bugs.webkit.org/show_bug.cgi?id=28247
* platform/gtk/Skipped:
2010-01-27 Kinuko Yasuda <kinuko at chromium.org>
Reviewed by Eric Seidel.
Add key event mappings for numpad keys for Gtk and Chromium/Gtk.
http://bugs.webkit.org/show_bug.cgi?id=28247
Test: fast/events/keydown-numpad-keys.html
* platform/chromium/KeyCodeConversionGtk.cpp:
(WebCore::windowsKeyCodeForKeyEvent):
* platform/gtk/KeyEventGtk.cpp:
(WebCore::windowsKeyCodeForKeyEvent):
2010-01-27 Kinuko Yasuda <kinuko at chromium.org>
Reviewed by Eric Seidel.
Correctly handle the KeyLocation argument that has been introduced
recently to test location-dependent key events in EventSender.keyDown.
http://bugs.webkit.org/show_bug.cgi?id=28247
Test: fast/events/keydown-numpad-keys.html
* DumpRenderTree/gtk/EventSender.cpp:
(keyDownCallback):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@53942 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/LayoutTests/ChangeLog b/LayoutTests/ChangeLog
index 109c344..276a46a 100644
--- a/LayoutTests/ChangeLog
+++ b/LayoutTests/ChangeLog
@@ -1,3 +1,12 @@
+2010-01-27 Kinuko Yasuda <kinuko at chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ Remove fast/events/keydown-numpad-keys.html from gtk's Skipped list.
+ https://bugs.webkit.org/show_bug.cgi?id=28247
+
+ * platform/gtk/Skipped:
+
2010-01-27 Tony Chang <tony at chromium.org>
Reviewed by Eric Seidel.
diff --git a/LayoutTests/platform/gtk/Skipped b/LayoutTests/platform/gtk/Skipped
index 0babb4c..1ef4fd9 100644
--- a/LayoutTests/platform/gtk/Skipped
+++ b/LayoutTests/platform/gtk/Skipped
@@ -2261,7 +2261,6 @@ fast/events/event-listener-on-link.html
fast/events/event-sender-mouse-moved.html
fast/events/focusingUnloadedFrame.html
fast/events/keydown-1.html
-fast/events/keydown-numpad-keys.html
fast/events/label-focus.html
fast/events/mouseout-dead-node.html
fast/events/onload-re-entry.html
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index 53dfd50..09b7809 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,17 @@
+2010-01-27 Kinuko Yasuda <kinuko at chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ Add key event mappings for numpad keys for Gtk and Chromium/Gtk.
+ http://bugs.webkit.org/show_bug.cgi?id=28247
+
+ Test: fast/events/keydown-numpad-keys.html
+
+ * platform/chromium/KeyCodeConversionGtk.cpp:
+ (WebCore::windowsKeyCodeForKeyEvent):
+ * platform/gtk/KeyEventGtk.cpp:
+ (WebCore::windowsKeyCodeForKeyEvent):
+
2010-01-27 Pavel Feldman <pfeldman at chromium.org>
Reviewed by Timothy Hatcher.
diff --git a/WebCore/platform/chromium/KeyCodeConversionGtk.cpp b/WebCore/platform/chromium/KeyCodeConversionGtk.cpp
index e3d5f61..a709f3e 100644
--- a/WebCore/platform/chromium/KeyCodeConversionGtk.cpp
+++ b/WebCore/platform/chromium/KeyCodeConversionGtk.cpp
@@ -72,6 +72,23 @@ int windowsKeyCodeForKeyEvent(unsigned keycode)
case GDK_KP_Divide:
return VKEY_DIVIDE; // (6F) Divide key
+ case GDK_KP_Page_Up:
+ return VKEY_PRIOR; // (21) PAGE UP key
+ case GDK_KP_Page_Down:
+ return VKEY_NEXT; // (22) PAGE DOWN key
+ case GDK_KP_End:
+ return VKEY_END; // (23) END key
+ case GDK_KP_Home:
+ return VKEY_HOME; // (24) HOME key
+ case GDK_KP_Left:
+ return VKEY_LEFT; // (25) LEFT ARROW key
+ case GDK_KP_Up:
+ return VKEY_UP; // (26) UP ARROW key
+ case GDK_KP_Right:
+ return VKEY_RIGHT; // (27) RIGHT ARROW key
+ case GDK_KP_Down:
+ return VKEY_DOWN; // (28) DOWN ARROW key
+
case GDK_BackSpace:
return VKEY_BACK; // (08) BACKSPACE key
case GDK_ISO_Left_Tab:
diff --git a/WebCore/platform/gtk/KeyEventGtk.cpp b/WebCore/platform/gtk/KeyEventGtk.cpp
index 11ea956..e00ea43 100644
--- a/WebCore/platform/gtk/KeyEventGtk.cpp
+++ b/WebCore/platform/gtk/KeyEventGtk.cpp
@@ -181,6 +181,23 @@ static int windowsKeyCodeForKeyEvent(unsigned int keycode)
case GDK_KP_Divide:
return VK_DIVIDE; // (6F) Divide key
+ case GDK_KP_Page_Up:
+ return VK_PRIOR; // (21) PAGE UP key
+ case GDK_KP_Page_Down:
+ return VK_NEXT; // (22) PAGE DOWN key
+ case GDK_KP_End:
+ return VK_END; // (23) END key
+ case GDK_KP_Home:
+ return VK_HOME; // (24) HOME key
+ case GDK_KP_Left:
+ return VK_LEFT; // (25) LEFT ARROW key
+ case GDK_KP_Up:
+ return VK_UP; // (26) UP ARROW key
+ case GDK_KP_Right:
+ return VK_RIGHT; // (27) RIGHT ARROW key
+ case GDK_KP_Down:
+ return VK_DOWN; // (28) DOWN ARROW key
+
case GDK_BackSpace:
return VK_BACK; // (08) BACKSPACE key
case GDK_ISO_Left_Tab:
diff --git a/WebKitTools/ChangeLog b/WebKitTools/ChangeLog
index 58d53d8..bec9311 100644
--- a/WebKitTools/ChangeLog
+++ b/WebKitTools/ChangeLog
@@ -1,3 +1,16 @@
+2010-01-27 Kinuko Yasuda <kinuko at chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ Correctly handle the KeyLocation argument that has been introduced
+ recently to test location-dependent key events in EventSender.keyDown.
+ http://bugs.webkit.org/show_bug.cgi?id=28247
+
+ Test: fast/events/keydown-numpad-keys.html
+
+ * DumpRenderTree/gtk/EventSender.cpp:
+ (keyDownCallback):
+
2010-01-27 Kenneth Rohde Christiansen <kenneth at webkit.org>
Rubberstamped by Simon Hausmann.
diff --git a/WebKitTools/DumpRenderTree/gtk/EventSender.cpp b/WebKitTools/DumpRenderTree/gtk/EventSender.cpp
index 3b7311b..458e0ba 100644
--- a/WebKitTools/DumpRenderTree/gtk/EventSender.cpp
+++ b/WebKitTools/DumpRenderTree/gtk/EventSender.cpp
@@ -76,6 +76,14 @@ static unsigned startOfQueue;
static const float zoomMultiplierRatio = 1.2f;
+// Key event location code defined in DOM Level 3.
+enum KeyLocationCode {
+ DOM_KEY_LOCATION_STANDARD = 0x00,
+ DOM_KEY_LOCATION_LEFT = 0x01,
+ DOM_KEY_LOCATION_RIGHT = 0x02,
+ DOM_KEY_LOCATION_NUMPAD = 0x03
+};
+
static JSValueRef getDragModeCallback(JSContextRef context, JSObjectRef object, JSStringRef propertyName, JSValueRef* exception)
{
return JSValueMakeBoolean(context, dragMode);
@@ -449,66 +457,93 @@ static JSValueRef keyDownCallback(JSContextRef context, JSObjectRef function, JS
}
}
+ // handle location argument.
+ int location = DOM_KEY_LOCATION_STANDARD;
+ if (argumentCount > 2)
+ location = (int)JSValueToNumber(context, arguments[2], exception);
+
JSStringRef character = JSValueToStringCopy(context, arguments[0], exception);
g_return_val_if_fail((!exception || !*exception), JSValueMakeUndefined(context));
- int gdkKeySym;
- if (JSStringIsEqualToUTF8CString(character, "leftArrow"))
- gdkKeySym = GDK_Left;
- else if (JSStringIsEqualToUTF8CString(character, "rightArrow"))
- gdkKeySym = GDK_Right;
- else if (JSStringIsEqualToUTF8CString(character, "upArrow"))
- gdkKeySym = GDK_Up;
- else if (JSStringIsEqualToUTF8CString(character, "downArrow"))
- gdkKeySym = GDK_Down;
- else if (JSStringIsEqualToUTF8CString(character, "pageUp"))
- gdkKeySym = GDK_Page_Up;
- else if (JSStringIsEqualToUTF8CString(character, "pageDown"))
- gdkKeySym = GDK_Page_Down;
- else if (JSStringIsEqualToUTF8CString(character, "home"))
- gdkKeySym = GDK_Home;
- else if (JSStringIsEqualToUTF8CString(character, "end"))
- gdkKeySym = GDK_End;
- else if (JSStringIsEqualToUTF8CString(character, "delete"))
- gdkKeySym = GDK_BackSpace;
- else if (JSStringIsEqualToUTF8CString(character, "F1"))
- gdkKeySym = GDK_F1;
- else if (JSStringIsEqualToUTF8CString(character, "F2"))
- gdkKeySym = GDK_F2;
- else if (JSStringIsEqualToUTF8CString(character, "F3"))
- gdkKeySym = GDK_F3;
- else if (JSStringIsEqualToUTF8CString(character, "F4"))
- gdkKeySym = GDK_F4;
- else if (JSStringIsEqualToUTF8CString(character, "F5"))
- gdkKeySym = GDK_F5;
- else if (JSStringIsEqualToUTF8CString(character, "F6"))
- gdkKeySym = GDK_F6;
- else if (JSStringIsEqualToUTF8CString(character, "F7"))
- gdkKeySym = GDK_F7;
- else if (JSStringIsEqualToUTF8CString(character, "F8"))
- gdkKeySym = GDK_F8;
- else if (JSStringIsEqualToUTF8CString(character, "F9"))
- gdkKeySym = GDK_F9;
- else if (JSStringIsEqualToUTF8CString(character, "F10"))
- gdkKeySym = GDK_F10;
- else if (JSStringIsEqualToUTF8CString(character, "F11"))
- gdkKeySym = GDK_F11;
- else if (JSStringIsEqualToUTF8CString(character, "F12"))
- gdkKeySym = GDK_F12;
- else {
- int charCode = JSStringGetCharactersPtr(character)[0];
- if (charCode == '\n' || charCode == '\r')
- gdkKeySym = GDK_Return;
- else if (charCode == '\t')
- gdkKeySym = GDK_Tab;
- else if (charCode == '\x8')
+ int gdkKeySym = GDK_VoidSymbol;
+ if (location == DOM_KEY_LOCATION_NUMPAD) {
+ if (JSStringIsEqualToUTF8CString(character, "leftArrow"))
+ gdkKeySym = GDK_KP_Left;
+ else if (JSStringIsEqualToUTF8CString(character, "rightArrow"))
+ gdkKeySym = GDK_KP_Right;
+ else if (JSStringIsEqualToUTF8CString(character, "upArrow"))
+ gdkKeySym = GDK_KP_Up;
+ else if (JSStringIsEqualToUTF8CString(character, "downArrow"))
+ gdkKeySym = GDK_KP_Down;
+ else if (JSStringIsEqualToUTF8CString(character, "pageUp"))
+ gdkKeySym = GDK_KP_Page_Up;
+ else if (JSStringIsEqualToUTF8CString(character, "pageDown"))
+ gdkKeySym = GDK_KP_Page_Down;
+ else if (JSStringIsEqualToUTF8CString(character, "home"))
+ gdkKeySym = GDK_KP_Home;
+ else if (JSStringIsEqualToUTF8CString(character, "end"))
+ gdkKeySym = GDK_KP_End;
+ else
+ // Assume we only get arrow/pgUp/pgDn/home/end keys with
+ // location=NUMPAD for now.
+ g_assert_not_reached();
+ } else {
+ if (JSStringIsEqualToUTF8CString(character, "leftArrow"))
+ gdkKeySym = GDK_Left;
+ else if (JSStringIsEqualToUTF8CString(character, "rightArrow"))
+ gdkKeySym = GDK_Right;
+ else if (JSStringIsEqualToUTF8CString(character, "upArrow"))
+ gdkKeySym = GDK_Up;
+ else if (JSStringIsEqualToUTF8CString(character, "downArrow"))
+ gdkKeySym = GDK_Down;
+ else if (JSStringIsEqualToUTF8CString(character, "pageUp"))
+ gdkKeySym = GDK_Page_Up;
+ else if (JSStringIsEqualToUTF8CString(character, "pageDown"))
+ gdkKeySym = GDK_Page_Down;
+ else if (JSStringIsEqualToUTF8CString(character, "home"))
+ gdkKeySym = GDK_Home;
+ else if (JSStringIsEqualToUTF8CString(character, "end"))
+ gdkKeySym = GDK_End;
+ else if (JSStringIsEqualToUTF8CString(character, "delete"))
gdkKeySym = GDK_BackSpace;
+ else if (JSStringIsEqualToUTF8CString(character, "F1"))
+ gdkKeySym = GDK_F1;
+ else if (JSStringIsEqualToUTF8CString(character, "F2"))
+ gdkKeySym = GDK_F2;
+ else if (JSStringIsEqualToUTF8CString(character, "F3"))
+ gdkKeySym = GDK_F3;
+ else if (JSStringIsEqualToUTF8CString(character, "F4"))
+ gdkKeySym = GDK_F4;
+ else if (JSStringIsEqualToUTF8CString(character, "F5"))
+ gdkKeySym = GDK_F5;
+ else if (JSStringIsEqualToUTF8CString(character, "F6"))
+ gdkKeySym = GDK_F6;
+ else if (JSStringIsEqualToUTF8CString(character, "F7"))
+ gdkKeySym = GDK_F7;
+ else if (JSStringIsEqualToUTF8CString(character, "F8"))
+ gdkKeySym = GDK_F8;
+ else if (JSStringIsEqualToUTF8CString(character, "F9"))
+ gdkKeySym = GDK_F9;
+ else if (JSStringIsEqualToUTF8CString(character, "F10"))
+ gdkKeySym = GDK_F10;
+ else if (JSStringIsEqualToUTF8CString(character, "F11"))
+ gdkKeySym = GDK_F11;
+ else if (JSStringIsEqualToUTF8CString(character, "F12"))
+ gdkKeySym = GDK_F12;
else {
- gdkKeySym = gdk_unicode_to_keyval(charCode);
- if (WTF::isASCIIUpper(charCode))
- state |= GDK_SHIFT_MASK;
+ int charCode = JSStringGetCharactersPtr(character)[0];
+ if (charCode == '\n' || charCode == '\r')
+ gdkKeySym = GDK_Return;
+ else if (charCode == '\t')
+ gdkKeySym = GDK_Tab;
+ else if (charCode == '\x8')
+ gdkKeySym = GDK_BackSpace;
+ else {
+ gdkKeySym = gdk_unicode_to_keyval(charCode);
+ if (WTF::isASCIIUpper(charCode))
+ state |= GDK_SHIFT_MASK;
+ }
}
}
-
JSStringRelease(character);
WebKitWebView* view = webkit_web_frame_get_web_view(mainFrame);
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list