diff --git a/common/status_popup.cpp b/common/status_popup.cpp index c5261491e0..52f9bd0bdd 100644 --- a/common/status_popup.cpp +++ b/common/status_popup.cpp @@ -44,7 +44,7 @@ STATUS_POPUP::STATUS_POPUP( wxWindow* aParent ) : m_panel->SetSizer( m_topSizer ); m_panel->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) ); - Connect( wxEVT_TIMER, wxTimerEventHandler( STATUS_POPUP::onExpire ), nullptr, this ); + Connect( m_expireTimer.GetId(), wxEVT_TIMER, wxTimerEventHandler( STATUS_POPUP::onExpire ), nullptr, this ); #ifdef __WXOSX_MAC__ // Key events from popups don't get put through the wxWidgets event system on OSX, diff --git a/eeschema/sch_base_frame.cpp b/eeschema/sch_base_frame.cpp index 0065922367..5f131263dd 100644 --- a/eeschema/sch_base_frame.cpp +++ b/eeschema/sch_base_frame.cpp @@ -759,6 +759,12 @@ void SCH_BASE_FRAME::OnSymChange( wxFileSystemWatcherEvent& aEvent ) void SCH_BASE_FRAME::OnSymChangeDebounceTimer( wxTimerEvent& aEvent ) { + if( aEvent.GetId() != m_watcherDebounceTimer.GetId() ) + { + aEvent.Skip(); + return; + } + wxLogTrace( "KICAD_LIB_WATCH", "OnSymChangeDebounceTimer" ); // Disable logging to avoid spurious messages and check if the file has changed diff --git a/eeschema/tools/sch_selection_tool.cpp b/eeschema/tools/sch_selection_tool.cpp index 30e5c0c2e0..c27f9ccd88 100644 --- a/eeschema/tools/sch_selection_tool.cpp +++ b/eeschema/tools/sch_selection_tool.cpp @@ -348,8 +348,8 @@ bool SCH_SELECTION_TOOL::Init() // clang-format on m_disambiguateTimer.SetOwner( this ); - Connect( wxEVT_TIMER, wxTimerEventHandler( SCH_SELECTION_TOOL::onDisambiguationExpire ), - nullptr, this ); + Connect( m_disambiguateTimer.GetId(), wxEVT_TIMER, + wxTimerEventHandler( SCH_SELECTION_TOOL::onDisambiguationExpire ), nullptr, this ); return true; } diff --git a/pagelayout_editor/tools/pl_selection_tool.cpp b/pagelayout_editor/tools/pl_selection_tool.cpp index f582256c8d..2b925103e0 100644 --- a/pagelayout_editor/tools/pl_selection_tool.cpp +++ b/pagelayout_editor/tools/pl_selection_tool.cpp @@ -67,7 +67,8 @@ bool PL_SELECTION_TOOL::Init() m_frame->AddStandardSubMenus( *m_menu.get() ); m_disambiguateTimer.SetOwner( this ); - Connect( wxEVT_TIMER, wxTimerEventHandler( PL_SELECTION_TOOL::onDisambiguationExpire ), nullptr, this ); + Connect( m_disambiguateTimer.GetId(), wxEVT_TIMER, + wxTimerEventHandler( PL_SELECTION_TOOL::onDisambiguationExpire ), nullptr, this ); return true; } diff --git a/pcbnew/tools/pcb_selection_tool.cpp b/pcbnew/tools/pcb_selection_tool.cpp index 63ece01ee2..2de3094354 100644 --- a/pcbnew/tools/pcb_selection_tool.cpp +++ b/pcbnew/tools/pcb_selection_tool.cpp @@ -153,8 +153,7 @@ PCB_SELECTION_TOOL::~PCB_SELECTION_TOOL() getView()->Remove( &m_selection ); getView()->Remove( &m_enteredGroupOverlay ); - Disconnect( wxEVT_TIMER, wxTimerEventHandler( PCB_SELECTION_TOOL::onDisambiguationExpire ), - nullptr, this ); + Disconnect( wxEVT_TIMER, wxTimerEventHandler( PCB_SELECTION_TOOL::onDisambiguationExpire ), nullptr, this ); } @@ -227,8 +226,8 @@ bool PCB_SELECTION_TOOL::Init() frame->AddStandardSubMenus( *m_menu.get() ); m_disambiguateTimer.SetOwner( this ); - Connect( wxEVT_TIMER, wxTimerEventHandler( PCB_SELECTION_TOOL::onDisambiguationExpire ), - nullptr, this ); + Connect( m_disambiguateTimer.GetId(), wxEVT_TIMER, + wxTimerEventHandler( PCB_SELECTION_TOOL::onDisambiguationExpire ), nullptr, this ); return true; }