[apps/calculation] Reload display output when HistoryController appears

(to avoid displaying 2 = 2 when leaving and reentering Calculation app)
This commit is contained in:
Émilie Feral
2019-11-21 13:34:18 +01:00
committed by Léa Saviot
parent ec0c7c0384
commit 47e4abee81
4 changed files with 10 additions and 0 deletions

View File

@@ -58,6 +58,10 @@ void EditExpressionController::didBecomeFirstResponder() {
Container::activeApp()->setFirstResponder(m_contentView.expressionField());
}
void EditExpressionController::viewWillAppear() {
m_historyController->viewWillAppear();
}
bool EditExpressionController::textFieldDidReceiveEvent(::TextField * textField, Ion::Events::Event event) {
bool shouldDuplicateLastCalculation = textField->isEditing() && textField->shouldFinishEditing(event) && textField->draftTextLength() == 0;
if (inputViewDidReceiveEvent(event, shouldDuplicateLastCalculation)) {

View File

@@ -17,6 +17,7 @@ public:
EditExpressionController(Responder * parentResponder, InputEventHandlerDelegate * inputEventHandlerDelegate, HistoryController * historyController, CalculationStore * calculationStore);
View * view() override { return &m_contentView; }
void didBecomeFirstResponder() override;
void viewWillAppear() override;
void insertTextBody(const char * text);
/* TextFieldDelegate */

View File

@@ -32,6 +32,10 @@ void HistoryController::reload() {
}
}
void HistoryController::viewWillAppear() {
reload();
}
void HistoryController::didBecomeFirstResponder() {
selectCellAtLocation(0, numberOfRows()-1);
Container::activeApp()->setFirstResponder(&m_selectableTableView);

View File

@@ -16,6 +16,7 @@ public:
HistoryController(Responder * parentResponder, CalculationStore * calculationStore);
View * view() override { return &m_selectableTableView; }
bool handleEvent(Ion::Events::Event event) override;
void viewWillAppear() override;
void didBecomeFirstResponder() override;
void willExitResponderChain(Responder * nextFirstResponder) override;
void reload();