Changeset 52001 in webkit


Ignore:
Timestamp:
Dec 11, 2009 10:03:42 AM (14 years ago)
Author:
eric@webkit.org
Message:

2009-12-11 Victor Wang <victorw@chromium.org>

Reviewed by Darin Fisher.

Changed PopupMenuChromium to keep the value selected from
keyboard when popup is closed.

The problem is Chromium does not fire the onchange event
when the popup is closed if an item is selected via
keyboard by typing the first char of the item. This makes
chromium popup not having consistent behaviours and also
behaves differently from other major browsers.
Calling popup->hide() instead of popup->hidePopup() in
PopupMenu fixes the issues as it does extra step to check
whethere there is a keyboard selection changed when closing
the popup.

https://bugs.webkit.org/show_bug.cgi?id=32403

TEST: add a manual test as the current layout test shell
does not support sending keyboard events to popup list.

  • manual-tests/chromium/select-close-popup-value-change.html: Added.
  • platform/chromium/PopupMenuChromium.cpp: (WebCore::PopupMenu::hide):
Location:
trunk/WebCore
Files:
1 added
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/WebCore/ChangeLog

    r51998 r52001  
     12009-12-11  Victor Wang  <victorw@chromium.org>
     2
     3        Reviewed by Darin Fisher.
     4
     5        Changed PopupMenuChromium to keep the value selected from
     6        keyboard when popup is closed.
     7
     8        The problem is Chromium does not fire the onchange event
     9        when the popup is closed if an item is selected via
     10        keyboard by typing the first char of the item. This makes
     11        chromium popup not having consistent behaviours and also
     12        behaves differently from other major browsers.
     13        Calling popup->hide() instead of popup->hidePopup() in
     14        PopupMenu fixes the issues as it does extra step to check
     15        whethere there is a keyboard selection changed when closing
     16        the popup.
     17
     18        https://bugs.webkit.org/show_bug.cgi?id=32403
     19   
     20        TEST: add a manual test as the current layout test shell
     21        does not support sending keyboard events to popup list.
     22
     23        * manual-tests/chromium/select-close-popup-value-change.html: Added.
     24        * platform/chromium/PopupMenuChromium.cpp:
     25        (WebCore::PopupMenu::hide):
     26
    1272009-12-11  anton muhin  <antonm@chromium.org>
    228
  • trunk/WebCore/platform/chromium/PopupMenuChromium.cpp

    r51102 r52001  
    12351235{
    12361236    if (p.popup)
    1237         p.popup->hidePopup();
     1237        p.popup->hide();
    12381238}
    12391239
Note: See TracChangeset for help on using the changeset viewer.