diff --git a/apps/shared/values_controller.cpp b/apps/shared/values_controller.cpp index dee08d37e..2178539e5 100644 --- a/apps/shared/values_controller.cpp +++ b/apps/shared/values_controller.cpp @@ -93,6 +93,14 @@ void ValuesController::didBecomeFirstResponder() { } } +void ValuesController::willExitResponderChain(Responder * nextFirstResponder) { + if (nextFirstResponder == tabController()) { + m_selectableTableView.deselectTable(); + m_selectableTableView.scrollToCell(0,0); + header()->setSelectedButton(-1); + } +} + ViewController * ValuesController::intervalParameterController() { return &m_intervalParameterController; } diff --git a/apps/shared/values_controller.h b/apps/shared/values_controller.h index 5c792e0a1..a2d396dcc 100644 --- a/apps/shared/values_controller.h +++ b/apps/shared/values_controller.h @@ -20,6 +20,7 @@ public: Interval * interval(); virtual bool handleEvent(Ion::Events::Event event) override; void didBecomeFirstResponder() override; + void willExitResponderChain(Responder * nextFirstResponder) override; ViewController * intervalParameterController(); int numberOfButtons(ButtonRowController::Position) const override; Button * buttonAtIndex(int index, ButtonRowController::Position position) const override;