diff --git a/pcbnew/pcb_edit_frame.cpp b/pcbnew/pcb_edit_frame.cpp index 81bc6b994d..fe719e2032 100644 --- a/pcbnew/pcb_edit_frame.cpp +++ b/pcbnew/pcb_edit_frame.cpp @@ -990,8 +990,24 @@ void PCB_EDIT_FRAME::ShowBoardSetupDialog( const wxString& aInitialPage ) GetCanvas()->GetView()->UpdateAllItemsConditionally( KIGFX::REPAINT, [&]( KIGFX::VIEW_ITEM* aItem ) -> bool { - if( dynamic_cast( aItem ) ) - return true; // text variables + if( dynamic_cast( aItem ) ) + { + if( GetDisplayOptions().m_DisplayPadClearance ) + return true; // clearance values + } + else if( dynamic_cast( aItem ) ) + { + if( GetDisplayOptions().m_ShowTrackClearanceMode + == PCB_DISPLAY_OPTIONS::SHOW_TRACK_CLEARANCE_WITH_VIA_ALWAYS ) + { + return true; // clearance values + } + } + else if( dynamic_cast( aItem ) ) + { + if( dynamic_cast( aItem )->HasTextVars() ) + return true; // text variables + } return false; } );