Applied patch for correct feedback from DND
actions (not all actions are allowed). git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31394 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
parent
ac103441d1
commit
c7d94ca4f9
@ -220,7 +220,9 @@ static gboolean target_drag_motion( GtkWidget *WXUNUSED(widget),
|
||||
if (ret)
|
||||
{
|
||||
GdkDragAction action;
|
||||
if (result == wxDragCopy)
|
||||
if ((result == wxDragCopy) && (context->actions & GDK_ACTION_COPY) ||
|
||||
(result == wxDragMove) && !(context->actions & GDK_ACTION_MOVE) ||
|
||||
(result == wxDragLink) && !(context->actions & GDK_ACTION_LINK))
|
||||
action = GDK_ACTION_COPY;
|
||||
else if (result == wxDragLink)
|
||||
action = GDK_ACTION_LINK;
|
||||
@ -371,7 +373,7 @@ static void target_drag_data_received( GtkWidget *WXUNUSED(widget),
|
||||
this is only valid for the duration of this call */
|
||||
drop_target->SetDragData( data );
|
||||
|
||||
wxDragResult result = ConvertFromGTK(context->suggested_action);
|
||||
wxDragResult result = ConvertFromGTK(context->action);
|
||||
|
||||
if ( wxIsDragResultOk( drop_target->OnData( x, y, result ) ) )
|
||||
{
|
||||
|
@ -220,7 +220,9 @@ static gboolean target_drag_motion( GtkWidget *WXUNUSED(widget),
|
||||
if (ret)
|
||||
{
|
||||
GdkDragAction action;
|
||||
if (result == wxDragCopy)
|
||||
if ((result == wxDragCopy) && (context->actions & GDK_ACTION_COPY) ||
|
||||
(result == wxDragMove) && !(context->actions & GDK_ACTION_MOVE) ||
|
||||
(result == wxDragLink) && !(context->actions & GDK_ACTION_LINK))
|
||||
action = GDK_ACTION_COPY;
|
||||
else if (result == wxDragLink)
|
||||
action = GDK_ACTION_LINK;
|
||||
@ -371,7 +373,7 @@ static void target_drag_data_received( GtkWidget *WXUNUSED(widget),
|
||||
this is only valid for the duration of this call */
|
||||
drop_target->SetDragData( data );
|
||||
|
||||
wxDragResult result = ConvertFromGTK(context->suggested_action);
|
||||
wxDragResult result = ConvertFromGTK(context->action);
|
||||
|
||||
if ( wxIsDragResultOk( drop_target->OnData( x, y, result ) ) )
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user