diff --git a/pcbnew/netlist_reader/netlist.cpp b/pcbnew/netlist_reader/netlist.cpp index 4440cbffdd..e938ab3107 100644 --- a/pcbnew/netlist_reader/netlist.cpp +++ b/pcbnew/netlist_reader/netlist.cpp @@ -114,10 +114,7 @@ void PCB_EDIT_FRAME::OnNetlistChanged( BOARD_NETLIST_UPDATER& aUpdater, bool* aR if( !newFootprints.empty() ) { for( FOOTPRINT* footprint : newFootprints ) - { - footprint->SetAttributes( footprint->GetAttributes() & ~FP_JUST_ADDED ); GetToolManager()->RunAction( PCB_ACTIONS::selectItem, true, footprint ); - } *aRunDragCommand = true; diff --git a/pcbnew/tools/edit_tool.cpp b/pcbnew/tools/edit_tool.cpp index 3bae1d0f42..fd77cd5ab6 100644 --- a/pcbnew/tools/edit_tool.cpp +++ b/pcbnew/tools/edit_tool.cpp @@ -764,6 +764,10 @@ int EDIT_TOOL::doMoveSelection( TOOL_EVENT aEvent, bool aPickReference ) { for( PAD* pad : footprint->Pads() ) sel_items.push_back( pad ); + + // Clear this flag here; it will be set by the netlist updater if the footprint is new + // so that it was skipped in the initial connectivity update in OnNetlistChanged + footprint->SetAttributes( footprint->GetAttributes() & ~FP_JUST_ADDED ); } }