Changeset 47741 in webkit


Ignore:
Timestamp:
Aug 24, 2009 11:53:30 PM (15 years ago)
Author:
abarth@webkit.org
Message:

2009-08-24 Hironori Bono <hbono@chromium.org>

Reviewed by Adam Barth.

Fix Bug 27827 "[Chromium] Functions Keys don't work in google spreadsheet".
<https://bugs.webkit.org/show_bug.cgi?id=27827>.

Because of the lack of mappings from GDK key-codes to WebKit key-codes,
Chromium cannot send valid key-codes to JavaScript when a user types
function keys. This change just copies the mappings from 'KeyEventGtk.cpp'.

To write layout tests for this issue, added mappings from function-key
names to platform-specific key-codes to EventSendingController objects
so that eventSender.keyDown() can send function-key events without using
platform-specific key codes. (Unfortunately, this eventSender.keyDown() change
is only for Mac. So this change adds this new test to Skipped tests for other
platforms to prevent this change from crashing the build trees.)

  • fast/events/keydown-function-keys-expected.txt: Added.
  • fast/events/keydown-function-keys.html: Added.
  • platform/gtk/Skipped:
  • platform/qt/Skipped:
  • platform/win/Skipped:

2009-08-24 Hironori Bono <hbono@chromium.org>

Reviewed by Adam Barth.

Fix Bug 27827 "[Chromium] Functions Keys don't work in google spreadsheet".
<https://bugs.webkit.org/show_bug.cgi?id=27827>.

Because of the lack of mappings from GDK key-codes to WebKit key-codes,
Chromium cannot send valid key-codes to JavaScript when a user types
function keys. This change just copies the mappings from 'KeyEventGtk.cpp'.

To write layout tests for this issue, added mappings from function-key
names to platform-specific key-codes to EventSendingController objects
so that eventSender.keyDown() can send function-key events without using
platform-specific key codes. (Unfortunately, this eventSender.keyDown() change
is only for Mac. So this change adds this new test to Skipped tests for other
platforms to prevent this change from crashing the build trees.)

Test: fast/events/keydown-function-keys.html

  • platform/chromium/KeyCodeConversionGtk.cpp: Add mappings from GDK key-codes to WebKit key-code for function keys. (WebCore::windowsKeyCodeForKeyEvent):

2009-08-24 Hironori Bono <hbono@chromium.org>

Reviewed by Adam Barth.

Fix Bug 27827 "[Chromium] Functions Keys don't work in google spreadsheet".
<https://bugs.webkit.org/show_bug.cgi?id=27827>.

Because of the lack of mappings from GDK key-codes to WebKit key-codes,
Chromium cannot send valid key-codes to JavaScript when a user types
function keys. This change just copies the mappings from 'KeyEventGtk.cpp'.

To write layout tests for this issue, added mappings from function-key
names to platform-specific key-codes to EventSendingController objects
so that eventSender.keyDown() can send function-key events without using
platform-specific key codes. (Unfortunately, this eventSender.keyDown() change
is only for Mac. So this change adds this new test to Skipped tests for other
platforms to prevent this change from crashing the build trees.)

  • DumpRenderTree/mac/EventSendingController.mm: (-[EventSendingController keyDown:withModifiers:]):
Location:
trunk
Files:
2 added
8 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r47735 r47741  
     12009-08-24  Hironori Bono  <hbono@chromium.org>
     2
     3        Reviewed by Adam Barth.
     4
     5        Fix Bug 27827 "[Chromium] Functions Keys don't work in google spreadsheet".
     6        <https://bugs.webkit.org/show_bug.cgi?id=27827>.
     7
     8        Because of the lack of mappings from GDK key-codes to WebKit key-codes,
     9        Chromium cannot send valid key-codes to JavaScript when a user types
     10        function keys. This change just copies the mappings from 'KeyEventGtk.cpp'.
     11
     12        To write layout tests for this issue, added mappings from function-key
     13        names to platform-specific key-codes to EventSendingController objects
     14        so that eventSender.keyDown() can send function-key events without using
     15        platform-specific key codes. (Unfortunately, this eventSender.keyDown() change
     16        is only for Mac. So this change adds this new test to Skipped tests for other
     17        platforms to prevent this change from crashing the build trees.)
     18
     19        * fast/events/keydown-function-keys-expected.txt: Added.
     20        * fast/events/keydown-function-keys.html: Added.
     21        * platform/gtk/Skipped:
     22        * platform/qt/Skipped:
     23        * platform/win/Skipped:
     24
    1252009-08-24  Alexey Proskuryakov  <ap@apple.com>
    226
  • trunk/LayoutTests/platform/gtk/Skipped

    r47733 r47741  
    58365836fast/events/drag-to-navigate.html
    58375837fast/events/prevent-drag-to-navigate.html
     5838fast/events/keydown-function-keys.html
    58385839fast/forms/search-delete-while-cancel-button-clicked.html
    58395840fast/forms/slider-delete-while-dragging-thumb.html
  • trunk/LayoutTests/platform/qt/Skipped

    r47728 r47741  
    50345034loader/go-back-to-different-window-size.html
    50355035
     5036# A test that failed because eventSender cannot send function-key events.
     5037fast/events/keydown-function-keys.html
     5038
    50365039# This port doesn't support Geolocation.
    50375040fast/dom/Geolocation
  • trunk/LayoutTests/platform/win/Skipped

    r47548 r47741  
    622622http/tests/misc/favicon-loads-with-images-disabled.html
    623623
     624# A test that failed because eventSender cannot send function-key events.
     625fast/events/keydown-function-keys.html
     626
    624627# This port doesn't support Geolocation.
    625628fast/dom/Geolocation
  • trunk/WebCore/ChangeLog

    r47737 r47741  
     12009-08-24  Hironori Bono  <hbono@chromium.org>
     2
     3        Reviewed by Adam Barth.
     4
     5        Fix Bug 27827 "[Chromium] Functions Keys don't work in google spreadsheet".
     6        <https://bugs.webkit.org/show_bug.cgi?id=27827>.
     7
     8        Because of the lack of mappings from GDK key-codes to WebKit key-codes,
     9        Chromium cannot send valid key-codes to JavaScript when a user types
     10        function keys. This change just copies the mappings from 'KeyEventGtk.cpp'.
     11
     12        To write layout tests for this issue, added mappings from function-key
     13        names to platform-specific key-codes to EventSendingController objects
     14        so that eventSender.keyDown() can send function-key events without using
     15        platform-specific key codes. (Unfortunately, this eventSender.keyDown() change
     16        is only for Mac. So this change adds this new test to Skipped tests for other
     17        platforms to prevent this change from crashing the build trees.)
     18
     19        Test: fast/events/keydown-function-keys.html
     20
     21       * platform/chromium/KeyCodeConversionGtk.cpp: Add mappings from GDK key-codes
     22        to WebKit key-code for function keys.
     23        (WebCore::windowsKeyCodeForKeyEvent):
     24
    1252009-08-24  Antti Koivisto  <antti@apple.com>
    226
  • trunk/WebCore/platform/chromium/KeyCodeConversionGtk.cpp

    r42894 r47741  
    358358        // VKEY_PA1 (FD) PA1 key
    359359        // VKEY_OEM_CLEAR (FE) Clear key
     360    case GDK_F1:
     361    case GDK_F2:
     362    case GDK_F3:
     363    case GDK_F4:
     364    case GDK_F5:
     365    case GDK_F6:
     366    case GDK_F7:
     367    case GDK_F8:
     368    case GDK_F9:
     369    case GDK_F10:
     370    case GDK_F11:
     371    case GDK_F12:
     372    case GDK_F13:
     373    case GDK_F14:
     374    case GDK_F15:
     375    case GDK_F16:
     376    case GDK_F17:
     377    case GDK_F18:
     378    case GDK_F19:
     379    case GDK_F20:
     380    case GDK_F21:
     381    case GDK_F22:
     382    case GDK_F23:
     383    case GDK_F24:
     384        return VKEY_F1 + (keycode - GDK_F1);
    360385    default:
    361386        return 0;
  • trunk/WebKitTools/ChangeLog

    r47692 r47741  
     12009-08-24  Hironori Bono  <hbono@chromium.org>
     2
     3        Reviewed by Adam Barth.
     4
     5        Fix Bug 27827 "[Chromium] Functions Keys don't work in google spreadsheet".
     6        <https://bugs.webkit.org/show_bug.cgi?id=27827>.
     7
     8        Because of the lack of mappings from GDK key-codes to WebKit key-codes,
     9        Chromium cannot send valid key-codes to JavaScript when a user types
     10        function keys. This change just copies the mappings from 'KeyEventGtk.cpp'.
     11
     12        To write layout tests for this issue, added mappings from function-key
     13        names to platform-specific key-codes to EventSendingController objects
     14        so that eventSender.keyDown() can send function-key events without using
     15        platform-specific key codes. (Unfortunately, this eventSender.keyDown() change
     16        is only for Mac. So this change adds this new test to Skipped tests for other
     17        platforms to prevent this change from crashing the build trees.)
     18
     19        * DumpRenderTree/mac/EventSendingController.mm:
     20        (-[EventSendingController keyDown:withModifiers:]):
     21
    1222009-08-23  Jan Michael Alonzo  <jmalonzo@webkit.org>
    223
  • trunk/WebKitTools/DumpRenderTree/mac/EventSendingController.mm

    r46340 r47741  
    507507    }
    508508
     509    // Compare the input string with the function-key names defined by the DOM spec (i.e. "F1",...,"F24").
     510    // If the input string is a function-key name, set its key code.
     511    for (unsigned i = 1; i <= 24; i++) {
     512        if ([character isEqualToString:[NSString stringWithFormat:@"F%u", i]]) {
     513            const unichar ch = NSF1FunctionKey + (i - 1);
     514            eventCharacter = [NSString stringWithCharacters:&ch length:1];
     515        }
     516    }
     517
    509518    NSString *charactersIgnoringModifiers = eventCharacter;
    510519
Note: See TracChangeset for help on using the changeset viewer.