I had an idea a while ago to see if I could build a reasonably functional calculator in Glide. I decided to give it a shot and came up with one that actually works pretty well.
It’s nothing fancy like a scientific calculator, but it handles the basics (addition, subtraction, multiplication, division). OK, it turned out to have a lot more functionality than originally planned. It took a lot of trial and error to work out most of the bugs and have it work how I would expect a basic calculator to work. It’s mostly modeled after the built in calculator on my android phone with some functionality that I felt made it easier to use.
I think I got most bugs taken care of, but I’m sure there’s still a few of them. If anybody runs into anything that doesn’t look right, feel free to let me know.
Edit: Changed the logic so the below no longer applies and appears to be working with the changes.
I did run into the dreaded issue with Set Columns not permanently writing to a table through a single relation. It’s on the part that tracks the history of the last ten calculations. It seems to save them locally on the device until the app is restarted. Then all the data in those 10 rows are lost. (Data is sourced from user specific columns via single value columns, but it is not written to user specific columns, so I see no reason why it shouldn’t work. If anybody at Glide care’s to take a look, here is the support link.
Edit 2 There are still some bugs that are mostly noticeable on the published version of the app. Glide is aware, so hopefully they will get fixed in the future. They are all detailed in the Instructions tab in the side menu of the app.
My challenge to the rest of you is to see if you can achieve something similar or better. It was a good mental exercise for me to work through all the logic of how a calculator should work, along with all the different testing scenarios. It further made me realize that there are a handful of features that I wish glide had built in, which means some of the logic is a bit of a workaround.
The entire app is contained in Glide Tables only, and uses only 53 rows.
At the end of the month I’ll share a version that can be copied.
NEW - Still working out some bugs, but I added some scientific calculations.