The Contributing Guide isn’t very helpful, but after skimming over the dependencies.gradle file and the repo’s Languages section, I can say that it’s a native Android app written with Jetpack Compose in Java and Kotlin (I assume they are progressively rewriting the app in Kotlin).
looks like work on the android client started in 2011 (or at least, that’s when it seemingly started using version control)
the app was released in 2014
so it has likely inherited decisions from ~14 years ago, I’d guess there is a several year gap where having a native desktop app was not even a concern
Also the smartphone landscape was totally different back then, QT’s android support back then was in alpha (or totally nonexistent if the signal project is a bit older than the github repository makes it seem), and the average smartphone had extremely weak processing power and a tiny screen resolution by today’s standards. Making the same gui function on both desktop and mobile was probably a pretty ridiculous proposition.
For signal I imagine you’ll find the best answers here:
https://github.com/signalapp/Signal-Android/blob/main/CONTRIBUTING.md
https://community.signalusers.org/c/development/android-development/22
The Contributing Guide isn’t very helpful, but after skimming over the dependencies.gradle file and the repo’s Languages section, I can say that it’s a native Android app written with Jetpack Compose in Java and Kotlin (I assume they are progressively rewriting the app in Kotlin).
Based on looking at the apps apk a can confirm it is jetpack compose
Wonder why they didn’t just use something like Qt that works pretty seamlessly across all platforms.
looks like work on the android client started in 2011 (or at least, that’s when it seemingly started using version control)
the app was released in 2014
so it has likely inherited decisions from ~14 years ago, I’d guess there is a several year gap where having a native desktop app was not even a concern
Also the smartphone landscape was totally different back then, QT’s android support back then was in alpha (or totally nonexistent if the signal project is a bit older than the github repository makes it seem), and the average smartphone had extremely weak processing power and a tiny screen resolution by today’s standards. Making the same gui function on both desktop and mobile was probably a pretty ridiculous proposition.
Still shame they didn’t pick it for desktop and we had to wait years for a quality alternative client like Flare.