From 83ad0d5fad5ae750450a7fbd58164e8e780c82fb Mon Sep 17 00:00:00 2001 From: Seth Hillbrand Date: Mon, 20 May 2024 16:30:01 -0700 Subject: [PATCH] Honor Ctrl+Shift combo when starting routing We want to be able to start routing at an arbitrary point if we explicitly disable the snapping and grid together --- pcbnew/router/pns_tool_base.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/pcbnew/router/pns_tool_base.cpp b/pcbnew/router/pns_tool_base.cpp index c966b7b711..4d3aa12b39 100644 --- a/pcbnew/router/pns_tool_base.cpp +++ b/pcbnew/router/pns_tool_base.cpp @@ -325,6 +325,14 @@ void TOOL_BASE::updateStartItem( const TOOL_EVENT& aEvent, bool aIgnorePads ) pos = GetClampedCoords( pos, COORDS_PADDING ); + if( aEvent.Modifier( MD_CTRL ) && aEvent.Modifier( MD_SHIFT ) ) + { + m_startItem = nullptr; + m_startSnapPoint = controls()->GetMousePosition(); + controls()->ForceCursorPosition( true, m_startSnapPoint ); + return; + } + controls()->ForceCursorPosition( false ); m_gridHelper->SetUseGrid( gal->GetGridSnapping() && !aEvent.DisableGridSnapping() ); m_gridHelper->SetSnap( !aEvent.Modifier( MD_SHIFT ) );