I just checked your new work dear, and I started about layout and being responsible for small screen which it’s not responsible.
Since this could be about programming, and not about designing and UI/UX, so I would just suggest you think about make it responsible.
(Note: I’m not a math expert, so my point of view about issues or things I found weird could be a mistake, so please correct me if I’m wrong.)
The first issue I found is none of the keys are binded to the keyboard. So I needed to work with it just with mouse, but it’s easier to work with keyboard, please fix it. have a function that accepts key, and for given key, decide which operation should be performed.
On small weird bug is about not-checking state of the eval/statement. For example I could perform something like
.0...2+66). Beside as it works or not, but I was expecting when I go for
+ and then go for
-, so previous + gets ignored.
There is a blank button at the bottom-right section, also one bottom of the
= key I don’t know what are for?! second one applies space, I don’t know when to use?
As I worked with another cals, I found when user repeat pressing the = key, it repeats the last operation again. For example when user go for
2+2 and then
=, so result will be
4, when user press another
2 will be added. But your calc comes without this feature.
About the functional like operations, like sqrt. I just tried to get root of
25, I first put
√(, then added
25, but forgot to put the close ), so it resulted as
√(25 when I pressed
=. I suggest you have some check and automatically add ) when user just forgot that, another better option could be you put both ( and ) when user press
I just tried the combination, and for first try I entered 33 and 3(I really didn’t know what is this for), so it got into a infinity loop! Then I just realized you mentioned the input should not have duplicated char. But the bug is here you don’t check the user input to inform her/him if she/he entered wrong value, and instead just start the work. I think you should user input for all parts it needed.
If you could let the output panel has scroll could be great too.
About the design I would like you could bring another dark theme for it, but again since it’s about coding, you may ignore it.
I really think this app could be a very great one if you could fix the issues I found. but again I’m not a math expert, someone who is math pal could give more better review of course.
keep going on great work John, happy programming.