[SCM] WebKit Debian packaging branch, webkit-1.1, updated. upstream/1.1.22-985-g3c00f00
eric at webkit.org
eric at webkit.org
Wed Mar 17 18:26:10 UTC 2010
The following commit has been merged in the webkit-1.1 branch:
commit 7f6488a3e83d246f82a4af55deaf740c258490bd
Author: eric at webkit.org <eric at webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Sat Mar 6 13:20:56 2010 +0000
2010-03-06 Hironori Bono <hbono at chromium.org>
Reviewed by Eric Seidel.
[Chromium] Typing into Flash with wmode = opaque|transparent and
non-latin language active outputs as if US keyboard layout active
https://bugs.webkit.org/show_bug.cgi?id=34936
Added a layout test that verifies a plugin can receive keyboard events.
Unfortunately, this test works only on Mac.
* platform/gtk/Skipped: Skipped the new test because of the lack of eventSender.
* platform/qt/Skipped: ditto.
* platform/win/Skipped: Skipped the new test because NPP_HandleEvent() is not implemented.
* plugins/keyboard-events-expected.txt: Added.
* plugins/keyboard-events.html: Added.
2010-03-06 Hironori Bono <hbono at chromium.org>
Reviewed by Eric Seidel.
[Chromium] Typing into Flash with wmode = opaque|transparent and
non-latin language active outputs as if US keyboard layout active
https://bugs.webkit.org/show_bug.cgi?id=34936
This change is a WebKit-side change for this issue. It dispatches
Char events to plug-ins so plug-ins can receive non-ASCII characters
as well as ASCII characters.
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::keyEvent):
2010-03-06 Hironori Bono <hbono at chromium.org>
Reviewed by Eric Seidel.
[Chromium] Typing into Flash with wmode = opaque|transparent and
non-latin language active outputs as if US keyboard layout active
https://bugs.webkit.org/show_bug.cgi?id=34936
To test keyboard events on the test plugin, this change implements
NPCocoaEventKeyDown and NPCocoaEventKeyUp handlers so the plugin
can write log messages.
* DumpRenderTree/TestNetscapePlugIn.subproj/main.cpp:
(handleEventCocoa): Implemented the event handlers for NPCocoaKeyDown
and NPCocoaEventKeyUp.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@55620 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/LayoutTests/ChangeLog b/LayoutTests/ChangeLog
index 04fd08b..d8a32dc 100644
--- a/LayoutTests/ChangeLog
+++ b/LayoutTests/ChangeLog
@@ -1,3 +1,21 @@
+2010-03-06 Hironori Bono <hbono at chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ [Chromium] Typing into Flash with wmode = opaque|transparent and
+ non-latin language active outputs as if US keyboard layout active
+
+ https://bugs.webkit.org/show_bug.cgi?id=34936
+
+ Added a layout test that verifies a plugin can receive keyboard events.
+ Unfortunately, this test works only on Mac.
+
+ * platform/gtk/Skipped: Skipped the new test because of the lack of eventSender.
+ * platform/qt/Skipped: ditto.
+ * platform/win/Skipped: Skipped the new test because NPP_HandleEvent() is not implemented.
+ * plugins/keyboard-events-expected.txt: Added.
+ * plugins/keyboard-events.html: Added.
+
2010-03-06 MORITA Hajime <morrita at google.com>
Reviewed by Darin Adler.
diff --git a/LayoutTests/platform/gtk/Skipped b/LayoutTests/platform/gtk/Skipped
index 81d98a0..f481fae 100644
--- a/LayoutTests/platform/gtk/Skipped
+++ b/LayoutTests/platform/gtk/Skipped
@@ -3579,6 +3579,7 @@ plugins/embed-attributes-setting.html
plugins/get-url-with-blank-target.html
plugins/mouse-events.html
plugins/mouse-events-fixedpos.html
+plugins/keyboard-events.html
# https://bugs.webkit.org/show_bug.cgi?id=30561
plugins/private-browsing-mode.html
diff --git a/LayoutTests/platform/qt/Skipped b/LayoutTests/platform/qt/Skipped
index 03ea134..0348339 100644
--- a/LayoutTests/platform/qt/Skipped
+++ b/LayoutTests/platform/qt/Skipped
@@ -531,6 +531,7 @@ plugins/get-url-with-blank-target.html
plugins/mouse-events.html
plugins/mouse-events-fixedpos.html
plugins/open-and-close-window-with-plugin.html
+plugins/keyboard-events.html
security/block-test.html
svg/W3C-SVG-1.1/animate-elem-02-t.svg
diff --git a/LayoutTests/platform/win/Skipped b/LayoutTests/platform/win/Skipped
index e7b6174..4047618 100644
--- a/LayoutTests/platform/win/Skipped
+++ b/LayoutTests/platform/win/Skipped
@@ -772,6 +772,9 @@ websocket/tests/simple-stress.html
# Needs platform specific API implemented in DRT, maybe not relevant for non-Mac and non-Windows ports
fast/loader/api-test-new-window-data-load-base-url.html
+# Needs to implement NPP_HandleEvent() in TestNetscapePlugin
+plugins/keyboard-events.html
+
# DumpRenderTree code to enable Java is currently a no-op. Windows doesn't come with Java by default.
java
diff --git a/LayoutTests/plugins/keyboard-events-expected.txt b/LayoutTests/plugins/keyboard-events-expected.txt
new file mode 100644
index 0000000..c629dad
--- /dev/null
+++ b/LayoutTests/plugins/keyboard-events-expected.txt
@@ -0,0 +1,11 @@
+CONSOLE MESSAGE: line 0: PLUGIN: getFocusEvent
+CONSOLE MESSAGE: line 0: PLUGIN: mouseDown at (12, 12)
+CONSOLE MESSAGE: line 0: PLUGIN: mouseUp at (12, 12)
+CONSOLE MESSAGE: line 0: PLUGIN: keyDown 'a'
+CONSOLE MESSAGE: line 0: PLUGIN: keyUp 'a'
+CONSOLE MESSAGE: line 0: PLUGIN: keyDown 'b'
+CONSOLE MESSAGE: line 0: PLUGIN: keyUp 'b'
+CONSOLE MESSAGE: line 0: PLUGIN: keyDown 'c'
+CONSOLE MESSAGE: line 0: PLUGIN: keyUp 'c'
+
+This test checks if a plug-in can receive keyboard events sent from eventSender. This is a test for Bug 34936.
diff --git a/LayoutTests/plugins/keyboard-events.html b/LayoutTests/plugins/keyboard-events.html
new file mode 100644
index 0000000..30b93c9
--- /dev/null
+++ b/LayoutTests/plugins/keyboard-events.html
@@ -0,0 +1,30 @@
+<html>
+<body>
+<embed name="plg" type="application/x-webkit-test-netscape" width=100 height=100></embed>
+<p>This test checks if a plug-in can receive keyboard events sent from eventSender. This is a test for <a href="https://bugs.webkit.org/show_bug.cgi?id=34936">Bug 34936</a>.</p>
+<script>
+
+ plg.eventLoggingEnabled = true;
+
+ if (!window.layoutTestController) {
+ document.write("This test does not work in manual mode.");
+ } else {
+ layoutTestController.dumpAsText();
+
+ // Send a mouse-click event to set the input focus to the test plug-in.
+ eventSender.mouseMoveTo(0,0);
+ eventSender.mouseMoveTo(20,20);
+ eventSender.mouseDown();
+ eventSender.mouseUp();
+
+ // Send keyboard events to the plug-in.
+ eventSender.keyDown('a');
+ eventSender.keyDown('b');
+ eventSender.keyDown('c');
+ }
+
+ plg.eventLoggingEnabled = false; // stop logging so our output doesn't bleed into the next test
+
+</script>
+</body>
+</html>
diff --git a/WebKit/chromium/ChangeLog b/WebKit/chromium/ChangeLog
index 8336cb3..27a8d79 100644
--- a/WebKit/chromium/ChangeLog
+++ b/WebKit/chromium/ChangeLog
@@ -1,3 +1,19 @@
+2010-03-06 Hironori Bono <hbono at chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ [Chromium] Typing into Flash with wmode = opaque|transparent and
+ non-latin language active outputs as if US keyboard layout active
+
+ https://bugs.webkit.org/show_bug.cgi?id=34936
+
+ This change is a WebKit-side change for this issue. It dispatches
+ Char events to plug-ins so plug-ins can receive non-ASCII characters
+ as well as ASCII characters.
+
+ * src/WebViewImpl.cpp:
+ (WebKit::WebViewImpl::keyEvent):
+
2010-03-06 Kavita Kanetkar <kkanetkar at chromium.org>
Reviewed by Darin Fisher.
diff --git a/WebKit/chromium/src/WebViewImpl.cpp b/WebKit/chromium/src/WebViewImpl.cpp
index 6d2db7b..6345cd1 100644
--- a/WebKit/chromium/src/WebViewImpl.cpp
+++ b/WebKit/chromium/src/WebViewImpl.cpp
@@ -507,8 +507,13 @@ bool WebViewImpl::keyEvent(const WebKeyboardEvent& event)
PlatformKeyboardEventBuilder evt(event);
if (handler->keyEvent(evt)) {
- if (WebInputEvent::RawKeyDown == event.type)
- m_suppressNextKeypressEvent = true;
+ if (WebInputEvent::RawKeyDown == event.type) {
+ // Suppress the next keypress event unless the focused node is a plug-in node.
+ // (Flash needs these keypress events to handle non-US keyboards.)
+ Node* node = frame->document()->focusedNode();
+ if (!node || !node->renderer() || !node->renderer()->isEmbeddedObject())
+ m_suppressNextKeypressEvent = true;
+ }
return true;
}
diff --git a/WebKitTools/ChangeLog b/WebKitTools/ChangeLog
index bb018ae..df6f16e 100644
--- a/WebKitTools/ChangeLog
+++ b/WebKitTools/ChangeLog
@@ -1,3 +1,20 @@
+2010-03-06 Hironori Bono <hbono at chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ [Chromium] Typing into Flash with wmode = opaque|transparent and
+ non-latin language active outputs as if US keyboard layout active
+
+ https://bugs.webkit.org/show_bug.cgi?id=34936
+
+ To test keyboard events on the test plugin, this change implements
+ NPCocoaEventKeyDown and NPCocoaEventKeyUp handlers so the plugin
+ can write log messages.
+
+ * DumpRenderTree/TestNetscapePlugIn.subproj/main.cpp:
+ (handleEventCocoa): Implemented the event handlers for NPCocoaKeyDown
+ and NPCocoaEventKeyUp.
+
2010-03-05 Jesus Sanchez-Palencia <jesus.palencia at openbossa.org>
Reviewed by Eric Seidel.
diff --git a/WebKitTools/DumpRenderTree/TestNetscapePlugIn.subproj/main.cpp b/WebKitTools/DumpRenderTree/TestNetscapePlugIn.subproj/main.cpp
index 8ef228a..39be467 100644
--- a/WebKitTools/DumpRenderTree/TestNetscapePlugIn.subproj/main.cpp
+++ b/WebKitTools/DumpRenderTree/TestNetscapePlugIn.subproj/main.cpp
@@ -338,7 +338,15 @@ static int16_t handleEventCocoa(NPP instance, PluginObject* obj, NPCocoaEvent* e
return 1;
case NPCocoaEventKeyDown:
+ if (event->data.key.characters)
+ pluginLog(instance, "keyDown '%c'", CFStringGetCharacterAtIndex(reinterpret_cast<CFStringRef>(event->data.key.characters), 0));
+ return 1;
+
case NPCocoaEventKeyUp:
+ if (event->data.key.characters)
+ pluginLog(instance, "keyUp '%c'", CFStringGetCharacterAtIndex(reinterpret_cast<CFStringRef>(event->data.key.characters), 0));
+ return 1;
+
case NPCocoaEventFlagsChanged:
return 1;
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list