Second month of KDE SoK 2022
Within SoK 2022 project, I worked on an in-app alert queueing system for KDE Connect iOS
Since my previous blog post I’ve been working on migrating all alerts to the new system, iOS 14 support and modernization of manual IP input screen.
Migrating to the new system
Alerts in the app are now using the new system. Everything has been migrated and works well (everything, besides one text alert, which I will discuss later in the post).
iOS 14 compatibility
There were some issues with queuing working on iOS 14, as iOS 15 introduced a lot of new features in swift. One of the problems was caused by a compatibility layer that allowed one view to have multiple .alert()
modifiers. As of now, there is in fact only one alert in the entire app, so removing the compatibility layer was an obvious solution.
Here is a screen from iOS 14 with working alerts.
Configure Devices by IP screen
One of the reasons behins changing the “Configure Devices By IP” screen was to bring it up to modern apple standards. This screen used an outdated alert with text input, which is now gone. In the current version, the entire list of IPs is editable and you can add a new line with a click of a button. It works on the same basis as the native iOS reminders app.
Here is a before and after.
The other reason was that the text alert isn’t supported by the new alert manager :)
Other things
Having done all of that I focused on cleaning up the code and adding documentation for the new system.
Closing thoughts
My work for SoK is done. It has been a great opportunity to learn more about iOS development and work with a community-driven open source project. Over the span of the last few months, Swift really grew on me. With the help of my mentors’ work was going smoothly, and SoK was the thing I needed to finally contribute to the Open Source community.