Changeset 45515 in webkit


Ignore:
Timestamp:
Jul 2, 2009 6:06:27 PM (15 years ago)
Author:
eric@webkit.org
Message:

2009-07-02 Erik Arvidsson <arv@chromium.org>

Reviewed by Adam Roben.

[Win] HTML5 Drag and drop, dragend is not fired when pressing Esc
https://bugs.webkit.org/show_bug.cgi?id=26699

  • manual-tests/drag-escape.html: Added.
  • page/EventHandler.cpp: (WebCore::EventHandler::dragSourceEndedAt):

2009-07-02 Erik Arvidsson <arv@chromium.org>

Reviewed by Adam Roben.

[Win] HTML5 Drag and drop, dragend is not fired when pressing Esc
https://bugs.webkit.org/show_bug.cgi?id=26699

  • WebDropSource.cpp: (WebDropSource::QueryContinueDrag):
Location:
trunk
Files:
1 added
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/WebCore/ChangeLog

    r45511 r45515  
     12009-07-02  Erik Arvidsson  <arv@chromium.org>
     2
     3        Reviewed by Adam Roben.
     4
     5        [Win] HTML5 Drag and drop, dragend is not fired when pressing Esc
     6        https://bugs.webkit.org/show_bug.cgi?id=26699
     7
     8        * manual-tests/drag-escape.html: Added.
     9        * page/EventHandler.cpp:
     10        (WebCore::EventHandler::dragSourceEndedAt):
     11
    1122009-07-02  Pierre d'Herbemont  <pdherbemont@apple.com>
    213
  • trunk/WebCore/page/EventHandler.cpp

    r45478 r45515  
    21032103    freeClipboard();
    21042104    dragState().m_dragSrc = 0;
     2105    // In case the drag was ended due to an escape key press we need to ensure
     2106    // that consecutive mousemove events don't reinitiate the drag and drop.
     2107    m_mouseDownMayStartDrag = false;
    21052108}
    21062109   
  • trunk/WebKit/win/ChangeLog

    r45508 r45515  
     12009-07-02  Erik Arvidsson  <arv@chromium.org>
     2
     3        Reviewed by Adam Roben.
     4
     5        [Win] HTML5 Drag and drop, dragend is not fired when pressing Esc
     6        https://bugs.webkit.org/show_bug.cgi?id=26699
     7
     8        * WebDropSource.cpp:
     9        (WebDropSource::QueryContinueDrag):
     10
    1112009-07-02  Oliver Hunt  <oliver@apple.com>
    212
  • trunk/WebKit/win/WebDropSource.cpp

    r39784 r45515  
    105105STDMETHODIMP WebDropSource::QueryContinueDrag(BOOL fEscapePressed, DWORD grfKeyState)
    106106{
    107     if(fEscapePressed)
    108         return DRAGDROP_S_CANCEL;
    109 
    110     if(!(grfKeyState & (MK_LBUTTON|MK_RBUTTON))) {
    111         m_dropped = true;
     107    if (fEscapePressed || !(grfKeyState & (MK_LBUTTON|MK_RBUTTON))) {
     108        m_dropped = !fEscapePressed;
    112109        if (Page* page = m_webView->page())
    113110            if (Frame* frame = page->mainFrame())
    114111                //FIXME: We need to figure out how to find out what actually happened in the drag <rdar://problem/5015961>
    115                 frame->eventHandler()->dragSourceEndedAt(generateMouseEvent(m_webView.get(), false), DragOperationCopy);
    116         return DRAGDROP_S_DROP;
     112                frame->eventHandler()->dragSourceEndedAt(generateMouseEvent(m_webView.get(), false), fEscapePressed ? DragOperationNone : DragOperationCopy);
     113        return fEscapePressed? DRAGDROP_S_CANCEL : DRAGDROP_S_DROP;
    117114    } else if (Page* page = m_webView->page())
    118115        if (Frame* frame = page->mainFrame())
     
    120117
    121118    return S_OK;
    122 
    123119}
    124120
Note: See TracChangeset for help on using the changeset viewer.