Changeset 48899 in webkit


Ignore:
Timestamp:
Sep 29, 2009 2:01:39 PM (15 years ago)
Author:
dbates@webkit.org
Message:

2009-09-29 Daniel Bates <dbates@webkit.org>

Reviewed by Adam Roben.

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


Fixes an issue where the drop effect returned by Window Dump Render Tree
was always DROPEFFECT_NONE (since it was hard coded to do so).


This patch corrects this issue by determining the actual drop effect
performed by the corresponding drag-and-drop operation so that we can
return it.

  • DumpRenderTree/win/DraggingInfo.h: Added field m_dropEffect to store performed drop effect. (DraggingInfo::DraggingInfo): (DraggingInfo::performedDropEffect): Added method. (DraggingInfo::setPerformedDropEffect): Added method.
  • DumpRenderTree/win/EventSender.cpp: (doMouseUp): Calls method DraggingInfo::setPerformedDropEffect with performed drop effect. Moved delete draggingInfo to UIDelegate::doDragDrop.
  • DumpRenderTree/win/UIDelegate.cpp: (UIDelegate::doDragDrop): Sets performedDropEffect to DraggingInfo::performedDropEffect().
Location:
trunk/WebKitTools
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/WebKitTools/ChangeLog

    r48881 r48899  
     12009-09-29  Daniel Bates  <dbates@webkit.org>
     2
     3        Reviewed by Adam Roben.
     4
     5        https://bugs.webkit.org/show_bug.cgi?id=28902
     6       
     7        Fixes an issue where the drop effect returned by Window Dump Render Tree
     8        was always DROPEFFECT_NONE (since it was hard coded to do so).
     9       
     10        This patch corrects this issue by determining the actual drop effect
     11        performed by the corresponding drag-and-drop operation so that we can
     12        return it.
     13
     14        * DumpRenderTree/win/DraggingInfo.h: Added field m_dropEffect to store performed drop effect.
     15        (DraggingInfo::DraggingInfo):
     16        (DraggingInfo::performedDropEffect): Added method.
     17        (DraggingInfo::setPerformedDropEffect): Added method.
     18        * DumpRenderTree/win/EventSender.cpp:
     19        (doMouseUp): Calls method DraggingInfo::setPerformedDropEffect with performed drop effect.
     20        Moved delete draggingInfo to UIDelegate::doDragDrop.
     21        * DumpRenderTree/win/UIDelegate.cpp:
     22        (UIDelegate::doDragDrop): Sets performedDropEffect to DraggingInfo::performedDropEffect().
     23
    1242009-09-29  Dan Bernstein  <mitz@apple.com>
    225
  • trunk/WebKitTools/DumpRenderTree/win/DraggingInfo.h

    r25595 r48899  
    3737        : m_object(object)
    3838        , m_source(source)
     39        , m_performedDropEffect(DROPEFFECT_NONE)
    3940    {
    4041        m_object->AddRef();
     
    5556    IDropSource* dropSource() const { return m_source; }
    5657
     58    DWORD performedDropEffect() const { return m_performedDropEffect; }
     59    void setPerformedDropEffect(DWORD effect) { m_performedDropEffect = effect; }
     60
    5761private:
    5862    IDataObject* m_object;
    5963    IDropSource* m_source;
     64    DWORD m_performedDropEffect;
    6065};
    6166
  • trunk/WebKitTools/DumpRenderTree/win/EventSender.cpp

    r47038 r48899  
    220220                DWORD effect = 0;
    221221                webViewDropTarget->Drop(draggingInfo->dataObject(), 0, pointl(screenPoint), &effect);
     222                draggingInfo->setPerformedDropEffect(effect);
    222223            } else
    223224                webViewDropTarget->DragLeave();
    224225
    225             delete draggingInfo;
    226             draggingInfo = 0;
     226            // Reset didDragEnter so that another drag started within the same frame works properly.
     227            didDragEnter = false;
    227228        }
    228229    }
  • trunk/WebKitTools/DumpRenderTree/win/UIDelegate.cpp

    r48745 r48899  
    504504    draggingInfo = new DraggingInfo(object, source);
    505505    replaySavedEvents();
     506    if (draggingInfo) {
     507        *performedEffect = draggingInfo->performedDropEffect();
     508        delete draggingInfo;
     509        draggingInfo = 0;
     510    }
    506511    return S_OK;
    507512}
Note: See TracChangeset for help on using the changeset viewer.