Calculator
Open, Needs TriagePublic

Description

Calculator application for simple arithmetic operations. In the future, scientific calculations can also be added.
We may leverage the plasma desktop counterpart KCalc, considering either porting or code sharing.

Knowledge Requirements: Willing to learn Qt/QML, CMake.

System Requirements: You can develop this application on normal Linux system, and test it in native Linux system. If you want to test it on Plasma Mobile system, you can use actual Mobile device or Plasma Mobile x86 ISO in emulated environment.

Design Resources:

Development Resources:

Related Objects

StatusAssignedTask
OpenNone
OpenNone
apol added a subscriber: apol.Jun 5 2018, 5:26 PM

Note KAlgebra already has a Kirigami front-end, maybe it would make sense to make it usable for the simple calculator use case.

dkardarakos updated the task description. (Show Details)Jun 26 2018, 4:32 PM

Hey all! I am new to Open source and I have tried submitting fixing some bugs in KCalc desktop. I would like to know more about this application. I too worked on a calculator using Qml/ Qt(https://github.com/smritipillai/CalculatorUsingQml) so I would like to know the status of this app so that I too can contribute to it in some way possible and work on it as a part of SoK program.

Hello @smishipills,
This application has not been written yet, but you are welcome to start writing it. I'd suggest you do some research on projects with which we can share code.
Then you can use our app development guide (https://docs.plasma-mobile.org/AppDevelopment.html)

If you have any questions, feel free to ask here or in our matrix channel (https://plasma-mobile.org/join).
For your new app, you can create a repository on invent.kde.org with your KDE identity account.

smishipills added a comment.EditedJan 28 2019, 12:27 PM

Thank you for the pointers. I'll go through the documents and get back to
you if I have any questions.

antoni added a subscriber: antoni.Jun 18 2019, 12:59 PM

If I'm interested in, what exactly should I do? What libraries can I use? Are there any additional guidelines on the code?

https://docs.plasma-mobile.org/AppDevelopment.html should provide a good general starting point for app development. Any Qt / c++ libraries should be fine for the backend, the ui should use QtQuick Controls 2 and Kirigami.
Maybe https://github.com/AsteroidOS/asteroid-calculator could be ported to Kirigami and rebased on the Plasma Mobile app template.

I have created an application GUI for now. Could anyone check it on a mobile device?

https://github.com/antoniprzybylik/calculator

jbbgameich added a comment.EditedJun 20 2019, 9:56 PM

Nice that you are working on it.
I noticed two things:

  • Text is not readable due to the background Rectangles on the buttons. I'd suggest to use ToolButtons so you don't have to make them flat on your own.
  • The design is currently very colorful, which won't look to good with all system color themes (breeze dark / breeze lite etc.) Instead you could use Kirigami.Theme.* colors which adapt to it.

What exactly colors does plasma mobile use? ( rgb )

Any colors the user may wish to use. You have to use colors provided by the theme and not hardcode them.

PlasmaCore is not the correct way to get colors. As said, please use Kirigami.Theme. values.

I saw that the dialer application gets colors from PlasmaCore ... I won't be able to build a calculator application next week, so I won't fix it right away.

As an explanation: Strictly speaking the dialer wasn't written as an application but part of the Plasma Mobile shell. Only shell parts should use PlasmaCore stuff nowadays, Kirigami should work for everything else.

antoni added a comment.Jul 3 2019, 4:55 PM

OK, I just finished fully working basic calculator. Scientific calculator and Programmer calculator don't work yet. Unfortunately, my code is very unreadable because I'm not experienced in team programming ... I also don't know what to write in the about section. The help button redirects to the KDE FAQ page.

https://github.com/antoniprzybylik/calculator

antoni added a comment.Jul 4 2019, 1:31 PM
This comment was removed by antoni.

Works quite nicely already. I still have some changes to the design in mind, so I will propose my changes in a merge request some time soon.