Cannot toggle between track width when starting track from a pad
Description
When starting a track from a pad without DRC error it is possible to cycle through the track widths using the "W" hotkey, even for track widths that are too wide. Note that it doesn't cause a DRC error, which is the correct behaviour. When starting a track from a pad with a track width that is too large, this causes a DRC error and it is not possible to change the track width. The routing is eventually aborted.
Screen recording and sample project
Notice at the top left how the shortcut still works to change the track width, but the track is not updated in the view.
Steps to reproduce
- Start routing from a pad with a valid track width (1mm here)
- Cycle through the track widths using the hotkey or the drop down list
- Notice that no DRC error is shown with invalid tracks, and cycling is still possible to find a suitable width
- Start routing from a pad with an invalid track width (2mm here)
- Notice the DRC error is thrown
- Cycle through the track widths using the hotkey or the drop down list, it's impossible to get a valid width now
KiCad Version
Application: KiCad PCB Editor x64 on x64
Version: 7.0.4-3-g7ea907c343, release build
Libraries:
wxWidgets 3.2.2
FreeType 2.12.1
HarfBuzz 6.0.0
FontConfig 2.14.1
libcurl/7.88.1-DEV Schannel zlib/1.2.13
Platform: Windows 11 (build 25370), 64-bit edition, 64 bit, Little endian, wxMSW
Build Info:
Date: May 23 2023 05:13:20
wxWidgets: 3.2.2 (wchar_t,wx containers)
Boost: 1.81.0
OCC: 7.6.3
Curl: 7.88.1-DEV
ngspice: 40
Compiler: Visual C++ 1936 without C++ ABI
Build settings:
KICAD_SPICE=ON