diff --git a/src/ribbon/bar.cpp b/src/ribbon/bar.cpp index 8edae51014..1bad16a18b 100644 --- a/src/ribbon/bar.cpp +++ b/src/ribbon/bar.cpp @@ -1269,15 +1269,19 @@ void wxRibbonBar::HitTestRibbonButton(const wxRect& rect, const wxPoint& positio void wxRibbonBar::HideIfExpanded() { - if ( m_ribbon_state == wxRIBBON_BAR_EXPANDED ) + switch ( m_ribbon_state ) { - HidePanels(); - m_ribbon_state = wxRIBBON_BAR_MINIMIZED; - } - else - { - ShowPanels(); - m_ribbon_state = wxRIBBON_BAR_PINNED; + case wxRIBBON_BAR_EXPANDED: + m_ribbon_state = wxRIBBON_BAR_MINIMIZED; + // Fall through + + case wxRIBBON_BAR_MINIMIZED: + HidePanels(); + break; + + case wxRIBBON_BAR_PINNED: + ShowPanels(); + break; } }