@Wayne, the footprint loader/renderer is multi-threaded. When arrowing down it will push the footprint to be loaded into the queue, and then will receive an event when it's ready. When arrowing up they're already loaded, so they're just drawn.
Put a breakpoint where we fire the wxEVT_COMMAND_TEXT_UPDATED event in footprint_preview_panel.cpp:224 and see if it fires. That's the thread saying it's finished loading the footprint.
You can also put one in FOOTPRINT_PREVIEW_PANEL::OnLoaderThreadUpdate() which should be capturing the above event and then drawing the footprint.
@Wayne, the footprint loader/renderer is multi-threaded. When arrowing down it will push the footprint to be loaded into the queue, and then will receive an event when it's ready. When arrowing up they're already loaded, so they're just drawn.
Put a breakpoint where we fire the wxEVT_COMMAND_ TEXT_UPDATED event in footprint_ preview_ panel.cpp: 224 and see if it fires. That's the thread saying it's finished loading the footprint.
You can also put one in FOOTPRINT_ PREVIEW_ PANEL:: OnLoaderThreadU pdate() which should be capturing the above event and then drawing the footprint.