diff --git a/gerbview/gerbview_frame.cpp b/gerbview/gerbview_frame.cpp index 1173a624c5..59938aa477 100644 --- a/gerbview/gerbview_frame.cpp +++ b/gerbview/gerbview_frame.cpp @@ -462,6 +462,7 @@ void GERBVIEW_FRAME::ApplyDisplaySettingsToGAL() { auto painter = static_cast( GetCanvas()->GetView()->GetPainter() ); KIGFX::GERBVIEW_RENDER_SETTINGS* settings = painter->GetSettings(); + settings->SetHighContrast( gvconfig()->m_Display.m_HighContrastMode ); settings->LoadColors( Pgm().GetSettingsManager().GetColorSettings() ); GetCanvas()->GetView()->MarkTargetDirty( KIGFX::TARGET_NONCACHED ); diff --git a/gerbview/tools/gerbview_control.cpp b/gerbview/tools/gerbview_control.cpp index 795e89d179..0ae98b8817 100644 --- a/gerbview/tools/gerbview_control.cpp +++ b/gerbview/tools/gerbview_control.cpp @@ -299,7 +299,8 @@ int GERBVIEW_CONTROL::DisplayControl( const TOOL_EVENT& aEvent ) { m_frame->SetElementVisibility( LAYER_DCODES, !cfg->m_Appearance.show_dcodes ); } - else if( aEvent.IsAction( &ACTIONS::highContrastMode ) ) + else if( aEvent.IsAction( &ACTIONS::highContrastMode ) + || aEvent.IsAction( &ACTIONS::highContrastModeCycle ) ) { cfg->m_Display.m_HighContrastMode = !cfg->m_Display.m_HighContrastMode; } @@ -490,6 +491,7 @@ void GERBVIEW_CONTROL::setTransitions() Go( &GERBVIEW_CONTROL::DisplayControl, GERBVIEW_ACTIONS::negativeObjectDisplay.MakeEvent() ); Go( &GERBVIEW_CONTROL::DisplayControl, GERBVIEW_ACTIONS::dcodeDisplay.MakeEvent() ); Go( &GERBVIEW_CONTROL::DisplayControl, ACTIONS::highContrastMode.MakeEvent() ); + Go( &GERBVIEW_CONTROL::DisplayControl, ACTIONS::highContrastModeCycle.MakeEvent() ); Go( &GERBVIEW_CONTROL::DisplayControl, GERBVIEW_ACTIONS::toggleDiffMode.MakeEvent() ); Go( &GERBVIEW_CONTROL::DisplayControl, GERBVIEW_ACTIONS::flipGerberView.MakeEvent() );