File tree 1 file changed +12
-3
lines changed 1 file changed +12
-3
lines changed Original file line number Diff line number Diff line change @@ -18,6 +18,7 @@ class _MainPageState extends State<MainPage> {
18
18
String _history = '' ;
19
19
String _expression = '' ;
20
20
bool _isDecimalUsed = false ;
21
+ bool _isCalculated = false ;
21
22
22
23
void onNumberClick (String number) {
23
24
if (isAnOperator (number)) {
@@ -32,9 +33,16 @@ class _MainPageState extends State<MainPage> {
32
33
});
33
34
}
34
35
if (! _isDecimalUsed || number != '.' ) {
35
- setState (() {
36
- _expression += number;
37
- });
36
+ if (_isCalculated) {
37
+ setState (() {
38
+ _expression = number;
39
+ _isCalculated = false ;
40
+ });
41
+ } else {
42
+ setState (() {
43
+ _expression += number;
44
+ });
45
+ }
38
46
}
39
47
}
40
48
@@ -96,6 +104,7 @@ class _MainPageState extends State<MainPage> {
96
104
setState (() {
97
105
_history = _expression;
98
106
_expression = result;
107
+ _isCalculated = true ;
99
108
});
100
109
}
101
110
You can’t perform that action at this time.
0 commit comments