diff --git a/app/src/main/kotlin/com/simplemobiletools/calculator/helpers/CalculatorImpl.kt b/app/src/main/kotlin/com/simplemobiletools/calculator/helpers/CalculatorImpl.kt index 7123e1d8..0e6737a7 100644 --- a/app/src/main/kotlin/com/simplemobiletools/calculator/helpers/CalculatorImpl.kt +++ b/app/src/main/kotlin/com/simplemobiletools/calculator/helpers/CalculatorImpl.kt @@ -92,6 +92,11 @@ class CalculatorImpl(calculator: Calculator, val context: Context) { mBaseValue = getDisplayedNumberAsDouble() } + private fun handleRoot() { + mBaseValue = getDisplayedNumberAsDouble() + calculateResult() + } + private fun calculateResult() { if (!mIsFirstOperation) { updateFormula() @@ -107,15 +112,18 @@ class CalculatorImpl(calculator: Calculator, val context: Context) { } fun handleOperation(operation: String) { - if (lastKey == DIGIT) + if (lastKey == DIGIT && operation != ROOT) handleResult() mResetValue = true lastKey = operation mLastOperation = operation - if (operation == ROOT) - calculateResult() + if (operation == ROOT) { + handleRoot() + mResetValue = false + } + } fun handleClear() {