diff options
author | hbono@chromium.org <hbono@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-07-01 04:41:53 +0000 |
---|---|---|
committer | hbono@chromium.org <hbono@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-07-01 04:41:53 +0000 |
commit | feab536198e21e8f4777c3c8035a6ca6479f6912 (patch) | |
tree | 75d5f0578e2b101c3fb50568842711b87197e9c0 /chrome/common/native_web_keyboard_event.h | |
parent | be61bb5c487f1020756c31a39fbe23535e4d425b (diff) | |
download | chromium_src-feab536198e21e8f4777c3c8035a6ca6479f6912.zip chromium_src-feab536198e21e8f4777c3c8035a6ca6479f6912.tar.gz chromium_src-feab536198e21e8f4777c3c8035a6ca6479f6912.tar.bz2 |
A quick fix for Issue 15531 and 10953
This issue is caused by my another mistake that I forgot setting the modifier-key state in creating a Char event in RenderWidgetHostViewGtkWidget::ForwardCharEvent().
Since the GtkIMContext signal-handlers don't use GdkEventKey objects and cannot get the modififer-key state, this change save the state in RenderWidgetHostViewGtkWidget::KeyPressReleaseEvent() before dispatching a key event to the GtkIMContext object.
Also, this change adds gtk_im_context_focus_in() and gtk_im_context_focus_out() calls to fix compatibility problems with ibus.
BUG=10953 "IME support"
BUG=15531 "regression: shift-space doesn't scroll the page backwards"
TEST=Open a test page in <http://crbug.com/15531>, press shift+space keys, and observe ev.shiftKey is true.
Review URL: http://codereview.chromium.org/151010
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@19707 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/common/native_web_keyboard_event.h')
-rw-r--r-- | chrome/common/native_web_keyboard_event.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/chrome/common/native_web_keyboard_event.h b/chrome/common/native_web_keyboard_event.h index 4c25979..021d061 100644 --- a/chrome/common/native_web_keyboard_event.h +++ b/chrome/common/native_web_keyboard_event.h @@ -31,7 +31,9 @@ struct NativeWebKeyboardEvent : public WebKit::WebKeyboardEvent { explicit NativeWebKeyboardEvent(NSEvent *event); #elif defined(OS_LINUX) explicit NativeWebKeyboardEvent(const GdkEventKey* event); - NativeWebKeyboardEvent(wchar_t character, double time_stamp_seconds); + NativeWebKeyboardEvent(wchar_t character, + int state, + double time_stamp_seconds); #endif NativeWebKeyboardEvent(const NativeWebKeyboardEvent& event); |