Pcbnew: Moving a footprint satures a CPU core and does not redraw until the mouse stops

Description

While moving a footprint in PCBnew above a certain speed, a CPU core will hit 100% load and the graphical area will not update until the mouse drops below that speed. Moving the mouse constantly in a circle can keep the program completely locked up until you get bored and stop moving the mouse.

This bug has been around a long time, but was fixed in a nightly a couple weeks ago... not sure what happened to break it again :(

Steps to reproduce

  1. Move any footprint. It's worse if you select a group of footprints.

KiCad Version

Application: Pcbnew

Version: (5.99.0-3941-ga8bd0a9b84), release build

Libraries:
	wxWidgets 3.0.5

Platform: Windows 8 (build 9200), 64-bit edition, 64 bit, Little endian, wxMSW

	wxWidgets: 3.0.5 (wchar_t,wx containers,compatible with 2.8)
	Boost: 1.73.0
	OCE: 6.9.1
	Curl: 7.71.0
	ngspice: 32
	Compiler: GCC 10.2.0 with C++ ABI 1014

Build settings:
	KICAD_SCRIPTING=ON
	KICAD_SCRIPTING_MODULES=ON
	KICAD_SCRIPTING_PYTHON3=OFF
	KICAD_SCRIPTING_WXPYTHON=ON
	KICAD_SCRIPTING_WXPYTHON_PHOENIX=OFF
	KICAD_SCRIPTING_ACTION_MENU=ON
	BUILD_GITHUB_PLUGIN=ON
	KICAD_USE_OCE=ON
	KICAD_SPICE=ON