Changeset 134052 in webkit


Ignore:
Timestamp:
Nov 9, 2012 4:54:35 AM (11 years ago)
Author:
commit-queue@webkit.org
Message:

[BlackBerry] DRT - eventSender.keyDown() needs to support pageUp, pageDown, home, end key
https://bugs.webkit.org/show_bug.cgi?id=100937

Patch by Xiaobo Wang <xbwang@torchmobile.com.cn> on 2012-11-09
Reviewed by Rob Buis.

  1. Translate these keys to their corresponding BlackBerry key code.
  2. Break down a KeyChar event to a KeyDown/KeyUp pair. This is required

because we only handle scrolling on a KeyDown event in WebPage::keyEvent()
, and internally a KeyChar event is interpreted as a KeyDown event + a
KeyUp event in InputHandler::handleKeyboardInput().

Tests fixed:

  1. editing/input/scroll-viewport-page-up-down.html
  2. editing/selection/move-begin-end.html
  3. fast/forms/select-popup-pagekeys.html
  • DumpRenderTree/blackberry/EventSender.cpp:

(keyDownCallback):

Location:
trunk/Tools
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Tools/ChangeLog

    r134032 r134052  
     12012-11-09  Xiaobo Wang  <xbwang@torchmobile.com.cn>
     2
     3        [BlackBerry] DRT - eventSender.keyDown() needs to support pageUp, pageDown, home, end key
     4        https://bugs.webkit.org/show_bug.cgi?id=100937
     5
     6        Reviewed by Rob Buis.
     7
     8        1. Translate these keys to their corresponding BlackBerry key code.
     9        2. Break down a KeyChar event to a KeyDown/KeyUp pair. This is required
     10        because we only handle scrolling on a KeyDown event in WebPage::keyEvent()
     11        , and internally a KeyChar event is interpreted as a KeyDown event + a
     12        KeyUp event in InputHandler::handleKeyboardInput().
     13
     14        Tests fixed:
     15        1. editing/input/scroll-viewport-page-up-down.html
     16        2. editing/selection/move-begin-end.html
     17        3. fast/forms/select-popup-pagekeys.html
     18
     19        * DumpRenderTree/blackberry/EventSender.cpp:
     20        (keyDownCallback):
     21
    1222012-11-09  Simon Hausmann  <simon.hausmann@digia.com>
    223
  • trunk/Tools/DumpRenderTree/blackberry/EventSender.cpp

    r129634 r134052  
    132132    else if (JSStringIsEqualToUTF8CString(character, "downArrow"))
    133133        charCode = KEYCODE_DOWN;
    134     else if (JSStringIsEqualToUTF8CString(character, "pageUp")
    135              || JSStringIsEqualToUTF8CString(character, "pageDown")
    136              || JSStringIsEqualToUTF8CString(character, "home")
    137              || JSStringIsEqualToUTF8CString(character, "end"))
    138          return JSValueMakeUndefined(context);
     134    else if (JSStringIsEqualToUTF8CString(character, "pageUp"))
     135        charCode = KEYCODE_PG_UP;
     136    else if (JSStringIsEqualToUTF8CString(character, "pageDown"))
     137        charCode = KEYCODE_PG_DOWN;
     138    else if (JSStringIsEqualToUTF8CString(character, "home"))
     139        charCode = KEYCODE_HOME;
     140    else if (JSStringIsEqualToUTF8CString(character, "end"))
     141        charCode = KEYCODE_END;
    139142    else if (JSStringIsEqualToUTF8CString(character, "delete"))
    140143        charCode = KEYCODE_BACKSPACE;
     
    179182        modifiers |= KEYMOD_CTRL;
    180183
    181     page->keyEvent(BlackBerry::Platform::KeyboardEvent(charCode, BlackBerry::Platform::KeyboardEvent::KeyChar, modifiers));
     184    page->keyEvent(BlackBerry::Platform::KeyboardEvent(charCode, BlackBerry::Platform::KeyboardEvent::KeyDown, modifiers));
     185    page->keyEvent(BlackBerry::Platform::KeyboardEvent(charCode, BlackBerry::Platform::KeyboardEvent::KeyUp, modifiers));
    182186
    183187    return JSValueMakeUndefined(context);
     
    395399    if (!eventSenderClass) {
    396400        JSClassDefinition classDefinition = {
    397                 0, 0, 0, 0, 0, 0,
    398                 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
     401            0, 0, 0, 0, 0, 0,
     402            0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
    399403        classDefinition.staticFunctions = staticFunctions;
    400404        classDefinition.staticValues = staticValues;
Note: See TracChangeset for help on using the changeset viewer.