Bug 108605 - [chromium] wrong keyLocation property set for keypress events
Summary: [chromium] wrong keyLocation property set for keypress events
Status: RESOLVED WONTFIX
Alias: None
Product: WebKit
Classification: Unclassified
Component: UI Events (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Windows 7
: P2 Normal
Assignee: Takashi Sakamoto
URL: http://jsfiddle.net/d266H/1/
Keywords:
Depends on:
Blocks:
 
Reported: 2013-02-01 02:35 PST by Takashi Sakamoto
Modified: 2013-04-08 16:18 PDT (History)
13 users (show)

See Also:


Attachments
WIP (9.08 KB, patch)
2013-02-01 03:54 PST, Takashi Sakamoto
no flags Details | Formatted Diff | Diff
WIP (24.65 KB, patch)
2013-02-06 01:08 PST, Takashi Sakamoto
no flags Details | Formatted Diff | Diff
WIP (27.49 KB, patch)
2013-02-06 02:46 PST, Takashi Sakamoto
no flags Details | Formatted Diff | Diff
WIP (27.85 KB, patch)
2013-02-07 04:07 PST, Takashi Sakamoto
no flags Details | Formatted Diff | Diff
Patch (27.77 KB, patch)
2013-02-07 23:53 PST, Takashi Sakamoto
no flags Details | Formatted Diff | Diff
Patch (27.79 KB, patch)
2013-02-20 03:31 PST, Takashi Sakamoto
no flags Details | Formatted Diff | Diff
Patch (27.84 KB, patch)
2013-02-28 13:50 PST, Takashi Sakamoto
no flags Details | Formatted Diff | Diff
Patch (27.87 KB, patch)
2013-03-17 23:49 PDT, Takashi Sakamoto
benjamin: review-
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Takashi Sakamoto 2013-02-01 02:35:56 PST
WM_CHAR message doesn't have any virtual keycode in WPARAM. So we cannot use virtual keycode to know location of pressed key for the message.

http://crbug.com/172868
Comment 1 Takashi Sakamoto 2013-02-01 03:54:16 PST
Created attachment 186003 [details]
WIP
Comment 2 Early Warning System Bot 2013-02-01 04:02:51 PST
Comment on attachment 186003 [details]
WIP

Attachment 186003 [details] did not pass qt-wk2-ews (qt):
Output: http://queues.webkit.org/results/16300568
Comment 3 Early Warning System Bot 2013-02-01 04:03:54 PST
Comment on attachment 186003 [details]
WIP

Attachment 186003 [details] did not pass qt-ews (qt):
Output: http://queues.webkit.org/results/16297634
Comment 4 EFL EWS Bot 2013-02-01 04:11:53 PST
Comment on attachment 186003 [details]
WIP

Attachment 186003 [details] did not pass efl-ews (efl):
Output: http://queues.webkit.org/results/16297636
Comment 5 Build Bot 2013-02-01 04:25:40 PST
Comment on attachment 186003 [details]
WIP

Attachment 186003 [details] did not pass mac-wk2-ews (mac-wk2):
Output: http://queues.webkit.org/results/16297638
Comment 6 Build Bot 2013-02-01 04:54:32 PST
Comment on attachment 186003 [details]
WIP

Attachment 186003 [details] did not pass mac-ews (mac):
Output: http://queues.webkit.org/results/16303562
Comment 7 kov's GTK+ EWS bot 2013-02-01 05:50:01 PST
Comment on attachment 186003 [details]
WIP

Attachment 186003 [details] did not pass gtk-ews (gtk):
Output: http://queues.webkit.org/results/16298613
Comment 8 WebKit Review Bot 2013-02-01 08:01:51 PST
Comment on attachment 186003 [details]
WIP

Attachment 186003 [details] did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/16307692

New failing tests:
fast/events/keydown-leftright-keys.html
Comment 9 Build Bot 2013-02-01 10:49:27 PST
Comment on attachment 186003 [details]
WIP

Attachment 186003 [details] did not pass win-ews (win):
Output: http://queues.webkit.org/results/16305871
Comment 10 Takashi Sakamoto 2013-02-06 01:08:46 PST
Created attachment 186779 [details]
WIP
Comment 11 WebKit Review Bot 2013-02-06 01:11:51 PST
Attachment 186779 [details] did not pass style-queue:

Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/WebCore/ChangeLog', u'Source/WebCore/dom/KeyboardEvent.cpp', u'Source/WebCore/platform/PlatformKeyboardEvent.h', u'Source/WebCore/platform/efl/PlatformKeyboardEventEfl.cpp', u'Source/WebCore/platform/mac/PlatformEventFactoryMac.mm', u'Source/WebCore/platform/qt/PlatformKeyboardEventQt.cpp', u'Source/WebCore/platform/win/KeyEventWin.cpp', u'Source/WebKit/chromium/ChangeLog', u'Source/WebKit/chromium/src/WebInputEventConversion.cpp', u'Source/WebKit/chromium/src/win/WebInputEventFactory.cpp', u'Source/WebKit2/ChangeLog', u'Source/WebKit2/Shared/WebEventConversion.cpp', u'Tools/ChangeLog', u'Tools/DumpRenderTree/chromium/TestRunner/src/EventSender.cpp', u'Tools/DumpRenderTree/chromium/TestRunner/src/KeyCodeMapping.h']" exit_code: 1
Tools/DumpRenderTree/chromium/TestRunner/src/KeyCodeMapping.h:39:  enum members should use InterCaps with an initial capital letter.  [readability/enum_casing] [4]
Tools/DumpRenderTree/chromium/TestRunner/src/KeyCodeMapping.h:40:  enum members should use InterCaps with an initial capital letter.  [readability/enum_casing] [4]
Tools/DumpRenderTree/chromium/TestRunner/src/KeyCodeMapping.h:41:  enum members should use InterCaps with an initial capital letter.  [readability/enum_casing] [4]
Total errors found: 3 in 15 files


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 12 Early Warning System Bot 2013-02-06 01:15:55 PST
Comment on attachment 186779 [details]
WIP

Attachment 186779 [details] did not pass qt-ews (qt):
Output: http://queues.webkit.org/results/16396080
Comment 13 Early Warning System Bot 2013-02-06 01:17:38 PST
Comment on attachment 186779 [details]
WIP

Attachment 186779 [details] did not pass qt-wk2-ews (qt):
Output: http://queues.webkit.org/results/16396081
Comment 14 Build Bot 2013-02-06 01:32:03 PST
Comment on attachment 186779 [details]
WIP

Attachment 186779 [details] did not pass win-ews (win):
Output: http://queues.webkit.org/results/16401001
Comment 15 kov's GTK+ EWS bot 2013-02-06 01:50:10 PST
Comment on attachment 186779 [details]
WIP

Attachment 186779 [details] did not pass gtk-ews (gtk):
Output: http://queues.webkit.org/results/16400007
Comment 16 Takashi Sakamoto 2013-02-06 02:46:53 PST
Created attachment 186805 [details]
WIP
Comment 17 WebKit Review Bot 2013-02-06 02:50:44 PST
Attachment 186805 [details] did not pass style-queue:

Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/WebCore/ChangeLog', u'Source/WebCore/dom/KeyboardEvent.cpp', u'Source/WebCore/platform/PlatformKeyboardEvent.h', u'Source/WebCore/platform/efl/PlatformKeyboardEventEfl.cpp', u'Source/WebCore/platform/gtk/PlatformKeyboardEventGtk.cpp', u'Source/WebCore/platform/mac/PlatformEventFactoryMac.mm', u'Source/WebCore/platform/qt/PlatformKeyboardEventQt.cpp', u'Source/WebCore/platform/win/KeyEventWin.cpp', u'Source/WebKit/chromium/ChangeLog', u'Source/WebKit/chromium/src/WebInputEventConversion.cpp', u'Source/WebKit/chromium/src/win/WebInputEventFactory.cpp', u'Source/WebKit2/ChangeLog', u'Source/WebKit2/Shared/WebEventConversion.cpp', u'Tools/ChangeLog', u'Tools/DumpRenderTree/chromium/TestRunner/src/EventSender.cpp', u'Tools/DumpRenderTree/chromium/TestRunner/src/KeyCodeMapping.h']" exit_code: 1
Source/WebCore/platform/gtk/PlatformKeyboardEventGtk.cpp:159:  A case label should not be indented, but line up with its switch statement.  [whitespace/indent] [4]
Source/WebCore/platform/gtk/PlatformKeyboardEventGtk.cpp:158:  Missing space before ( in switch(  [whitespace/parens] [5]
Tools/DumpRenderTree/chromium/TestRunner/src/KeyCodeMapping.h:39:  enum members should use InterCaps with an initial capital letter.  [readability/enum_casing] [4]
Tools/DumpRenderTree/chromium/TestRunner/src/KeyCodeMapping.h:40:  enum members should use InterCaps with an initial capital letter.  [readability/enum_casing] [4]
Tools/DumpRenderTree/chromium/TestRunner/src/KeyCodeMapping.h:41:  enum members should use InterCaps with an initial capital letter.  [readability/enum_casing] [4]
Total errors found: 5 in 16 files


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 18 Build Bot 2013-02-06 03:28:18 PST
Comment on attachment 186805 [details]
WIP

Attachment 186805 [details] did not pass win-ews (win):
Output: http://queues.webkit.org/results/16400052
Comment 19 Takashi Sakamoto 2013-02-07 04:07:45 PST
Created attachment 187055 [details]
WIP
Comment 20 WebKit Review Bot 2013-02-07 04:10:49 PST
Attachment 187055 [details] did not pass style-queue:

Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/WebCore/ChangeLog', u'Source/WebCore/dom/KeyboardEvent.cpp', u'Source/WebCore/platform/PlatformKeyboardEvent.h', u'Source/WebCore/platform/efl/PlatformKeyboardEventEfl.cpp', u'Source/WebCore/platform/gtk/PlatformKeyboardEventGtk.cpp', u'Source/WebCore/platform/mac/PlatformEventFactoryMac.mm', u'Source/WebCore/platform/qt/PlatformKeyboardEventQt.cpp', u'Source/WebCore/platform/win/KeyEventWin.cpp', u'Source/WebKit/chromium/ChangeLog', u'Source/WebKit/chromium/src/WebInputEventConversion.cpp', u'Source/WebKit/chromium/src/win/WebInputEventFactory.cpp', u'Source/WebKit2/ChangeLog', u'Source/WebKit2/Shared/WebEventConversion.cpp', u'Tools/ChangeLog', u'Tools/DumpRenderTree/chromium/TestRunner/src/EventSender.cpp', u'Tools/DumpRenderTree/chromium/TestRunner/src/KeyCodeMapping.h']" exit_code: 1
Source/WebCore/platform/gtk/PlatformKeyboardEventGtk.cpp:159:  A case label should not be indented, but line up with its switch statement.  [whitespace/indent] [4]
Source/WebCore/platform/gtk/PlatformKeyboardEventGtk.cpp:158:  Missing space before ( in switch(  [whitespace/parens] [5]
Tools/DumpRenderTree/chromium/TestRunner/src/KeyCodeMapping.h:39:  enum members should use InterCaps with an initial capital letter.  [readability/enum_casing] [4]
Tools/DumpRenderTree/chromium/TestRunner/src/KeyCodeMapping.h:40:  enum members should use InterCaps with an initial capital letter.  [readability/enum_casing] [4]
Tools/DumpRenderTree/chromium/TestRunner/src/KeyCodeMapping.h:41:  enum members should use InterCaps with an initial capital letter.  [readability/enum_casing] [4]
Total errors found: 5 in 16 files


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 21 Takashi Sakamoto 2013-02-07 23:53:23 PST
Created attachment 187248 [details]
Patch
Comment 22 WebKit Review Bot 2013-02-07 23:56:12 PST
Attachment 187248 [details] did not pass style-queue:

Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/WebCore/ChangeLog', u'Source/WebCore/dom/KeyboardEvent.cpp', u'Source/WebCore/platform/PlatformKeyboardEvent.h', u'Source/WebCore/platform/efl/PlatformKeyboardEventEfl.cpp', u'Source/WebCore/platform/gtk/PlatformKeyboardEventGtk.cpp', u'Source/WebCore/platform/mac/PlatformEventFactoryMac.mm', u'Source/WebCore/platform/qt/PlatformKeyboardEventQt.cpp', u'Source/WebCore/platform/win/KeyEventWin.cpp', u'Source/WebKit/chromium/ChangeLog', u'Source/WebKit/chromium/src/WebInputEventConversion.cpp', u'Source/WebKit/chromium/src/win/WebInputEventFactory.cpp', u'Source/WebKit2/ChangeLog', u'Source/WebKit2/Shared/WebEventConversion.cpp', u'Tools/ChangeLog', u'Tools/DumpRenderTree/chromium/TestRunner/src/EventSender.cpp', u'Tools/DumpRenderTree/chromium/TestRunner/src/KeyCodeMapping.h']" exit_code: 1
Source/WebCore/platform/gtk/PlatformKeyboardEventGtk.cpp:159:  A case label should not be indented, but line up with its switch statement.  [whitespace/indent] [4]
Tools/DumpRenderTree/chromium/TestRunner/src/KeyCodeMapping.h:39:  enum members should use InterCaps with an initial capital letter.  [readability/enum_casing] [4]
Tools/DumpRenderTree/chromium/TestRunner/src/KeyCodeMapping.h:40:  enum members should use InterCaps with an initial capital letter.  [readability/enum_casing] [4]
Tools/DumpRenderTree/chromium/TestRunner/src/KeyCodeMapping.h:41:  enum members should use InterCaps with an initial capital letter.  [readability/enum_casing] [4]
Total errors found: 4 in 16 files


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 23 Build Bot 2013-02-08 00:21:33 PST
Comment on attachment 187248 [details]
Patch

Attachment 187248 [details] did not pass mac-wk2-ews (mac-wk2):
Output: http://queues.webkit.org/results/16434519

New failing tests:
http/tests/cache/cached-main-resource.html
Comment 24 Takashi Sakamoto 2013-02-08 00:30:48 PST
I built chromium-win and safari-mac and manually tested this patch fixed the issue.
Comment 25 Takashi Sakamoto 2013-02-20 03:31:09 PST
Created attachment 189278 [details]
Patch
Comment 26 WebKit Review Bot 2013-02-20 03:36:07 PST
Attachment 189278 [details] did not pass style-queue:

Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/WebCore/ChangeLog', u'Source/WebCore/dom/KeyboardEvent.cpp', u'Source/WebCore/platform/PlatformKeyboardEvent.h', u'Source/WebCore/platform/efl/PlatformKeyboardEventEfl.cpp', u'Source/WebCore/platform/gtk/PlatformKeyboardEventGtk.cpp', u'Source/WebCore/platform/mac/PlatformEventFactoryMac.mm', u'Source/WebCore/platform/qt/PlatformKeyboardEventQt.cpp', u'Source/WebCore/platform/win/KeyEventWin.cpp', u'Source/WebKit/chromium/ChangeLog', u'Source/WebKit/chromium/src/WebInputEventConversion.cpp', u'Source/WebKit/chromium/src/win/WebInputEventFactory.cpp', u'Source/WebKit2/ChangeLog', u'Source/WebKit2/Shared/WebEventConversion.cpp', u'Tools/ChangeLog', u'Tools/DumpRenderTree/chromium/TestRunner/src/EventSender.cpp', u'Tools/DumpRenderTree/chromium/TestRunner/src/KeyCodeMapping.h']" exit_code: 1
Source/WebCore/platform/gtk/PlatformKeyboardEventGtk.cpp:159:  A case label should not be indented, but line up with its switch statement.  [whitespace/indent] [4]
Tools/DumpRenderTree/chromium/TestRunner/src/KeyCodeMapping.h:39:  enum members should use InterCaps with an initial capital letter.  [readability/enum_casing] [4]
Tools/DumpRenderTree/chromium/TestRunner/src/KeyCodeMapping.h:40:  enum members should use InterCaps with an initial capital letter.  [readability/enum_casing] [4]
Tools/DumpRenderTree/chromium/TestRunner/src/KeyCodeMapping.h:41:  enum members should use InterCaps with an initial capital letter.  [readability/enum_casing] [4]
Total errors found: 4 in 16 files


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 27 Takashi Sakamoto 2013-02-28 13:50:31 PST
Created attachment 190801 [details]
Patch
Comment 28 WebKit Review Bot 2013-02-28 13:55:12 PST
Attachment 190801 [details] did not pass style-queue:

Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/WebCore/ChangeLog', u'Source/WebCore/dom/KeyboardEvent.cpp', u'Source/WebCore/platform/PlatformKeyboardEvent.h', u'Source/WebCore/platform/efl/PlatformKeyboardEventEfl.cpp', u'Source/WebCore/platform/gtk/PlatformKeyboardEventGtk.cpp', u'Source/WebCore/platform/mac/PlatformEventFactoryMac.mm', u'Source/WebCore/platform/qt/PlatformKeyboardEventQt.cpp', u'Source/WebCore/platform/win/KeyEventWin.cpp', u'Source/WebKit/chromium/ChangeLog', u'Source/WebKit/chromium/src/WebInputEventConversion.cpp', u'Source/WebKit/chromium/src/win/WebInputEventFactory.cpp', u'Source/WebKit2/ChangeLog', u'Source/WebKit2/Shared/WebEventConversion.cpp', u'Tools/ChangeLog', u'Tools/DumpRenderTree/chromium/TestRunner/src/EventSender.cpp', u'Tools/DumpRenderTree/chromium/TestRunner/src/KeyCodeMapping.h']" exit_code: 1
Source/WebCore/platform/gtk/PlatformKeyboardEventGtk.cpp:159:  A case label should not be indented, but line up with its switch statement.  [whitespace/indent] [4]
Tools/DumpRenderTree/chromium/TestRunner/src/KeyCodeMapping.h:39:  enum members should use InterCaps with an initial capital letter.  [readability/enum_casing] [4]
Tools/DumpRenderTree/chromium/TestRunner/src/KeyCodeMapping.h:40:  enum members should use InterCaps with an initial capital letter.  [readability/enum_casing] [4]
Tools/DumpRenderTree/chromium/TestRunner/src/KeyCodeMapping.h:41:  enum members should use InterCaps with an initial capital letter.  [readability/enum_casing] [4]
Total errors found: 4 in 16 files


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 29 Takashi Sakamoto 2013-03-17 23:49:17 PDT
Created attachment 193492 [details]
Patch
Comment 30 WebKit Review Bot 2013-03-17 23:50:53 PDT
Attachment 193492 [details] did not pass style-queue:

Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/WebCore/ChangeLog', u'Source/WebCore/dom/KeyboardEvent.cpp', u'Source/WebCore/platform/PlatformKeyboardEvent.h', u'Source/WebCore/platform/efl/PlatformKeyboardEventEfl.cpp', u'Source/WebCore/platform/gtk/PlatformKeyboardEventGtk.cpp', u'Source/WebCore/platform/mac/PlatformEventFactoryMac.mm', u'Source/WebCore/platform/qt/PlatformKeyboardEventQt.cpp', u'Source/WebCore/platform/win/KeyEventWin.cpp', u'Source/WebKit/chromium/ChangeLog', u'Source/WebKit/chromium/src/WebInputEventConversion.cpp', u'Source/WebKit/chromium/src/win/WebInputEventFactory.cpp', u'Source/WebKit2/ChangeLog', u'Source/WebKit2/Shared/WebEventConversion.cpp', u'Tools/ChangeLog', u'Tools/DumpRenderTree/chromium/TestRunner/src/EventSender.cpp', u'Tools/DumpRenderTree/chromium/TestRunner/src/KeyCodeMapping.h']" exit_code: 1
Source/WebCore/platform/gtk/PlatformKeyboardEventGtk.cpp:159:  A case label should not be indented, but line up with its switch statement.  [whitespace/indent] [4]
Tools/DumpRenderTree/chromium/TestRunner/src/KeyCodeMapping.h:39:  enum members should use InterCaps with an initial capital letter.  [readability/enum_casing] [4]
Tools/DumpRenderTree/chromium/TestRunner/src/KeyCodeMapping.h:40:  enum members should use InterCaps with an initial capital letter.  [readability/enum_casing] [4]
Tools/DumpRenderTree/chromium/TestRunner/src/KeyCodeMapping.h:41:  enum members should use InterCaps with an initial capital letter.  [readability/enum_casing] [4]
Total errors found: 4 in 16 files


If any of these errors are false positives, please file a bug against check-webkit-style.