Commit 6cf3b937 authored by jean-pierre charras's avatar jean-pierre charras
Browse files

Fix Eeschema drag Bug #1408661

parent 1ddde742
Loading
Loading
Loading
Loading
+13 −7
Original line number Original line Diff line number Diff line
@@ -31,6 +31,7 @@
#include <eeschema_id.h>
#include <eeschema_id.h>
#include <hotkeys.h>
#include <hotkeys.h>
#include <wxEeschemaStruct.h>
#include <wxEeschemaStruct.h>
#include <class_drawpanel.h>


#include <general.h>
#include <general.h>
#include <libeditframe.h>
#include <libeditframe.h>
@@ -348,8 +349,6 @@ bool SCH_EDIT_FRAME::OnHotKey( wxDC* aDC, int aHotKey, const wxPoint& aPosition,


    wxCommandEvent cmd( wxEVT_COMMAND_MENU_SELECTED );
    wxCommandEvent cmd( wxEVT_COMMAND_MENU_SELECTED );


    cmd.SetEventObject( this );

    SCH_SCREEN* screen = GetScreen();
    SCH_SCREEN* screen = GetScreen();


    // itemInEdit == false means no item currently edited. We can ask for editing a new item
    // itemInEdit == false means no item currently edited. We can ask for editing a new item
@@ -393,12 +392,19 @@ bool SCH_EDIT_FRAME::OnHotKey( wxDC* aDC, int aHotKey, const wxPoint& aPosition,
        break;
        break;


    case HK_LEFT_CLICK:
    case HK_LEFT_CLICK:
        OnLeftClick( aDC, aPosition );
        break;

    case HK_LEFT_DCLICK:    // Simulate a double left click: generate 2 events
    case HK_LEFT_DCLICK:    // Simulate a double left click: generate 2 events
        if( screen->m_BlockLocate.GetState() == STATE_BLOCK_MOVE )
        {
            GetCanvas()->SetAutoPanRequest( false );
            HandleBlockPlace( aDC );
        }
        else if( screen->m_BlockLocate.GetState() == STATE_NO_BLOCK )
        {
            OnLeftClick( aDC, aPosition );
            OnLeftClick( aDC, aPosition );

            if( hotKey->m_Idcommand == HK_LEFT_DCLICK )
                OnLeftDClick( aDC, aPosition );
                OnLeftDClick( aDC, aPosition );
        }
        break;
        break;


    case HK_ZOOM_IN:
    case HK_ZOOM_IN: