The time KCM backend code is quite old and is somewhat buggy because
toggling any option causes all fields to update. I cleaned up the code
and isolated different options from each other, and ensured the QML UI
bindings stay up to date. I also moved the date popup to a loader so
that it isn't loaded at start.
Some changes in Kirigami.Dialog recently completely broke the dialog, we
apparently now have to manually set dimensions on children. Use
DatePopup from Kirigami Addons in order to reduce the code needed here.
The old UI was very confusing to use, I changed it so that:
- Dialogs are used for the time and date picker, with user confirmation for changes
- Tumblers are not used for the time picker, use the time picker component from kclock
- Removed seconds selector (since it was always wrong)
- Fixed the time zone selector (it didn't work before)
- Properly support 24 hour time in the time picker
Fixes https://invent.kde.org/plasma/plasma-mobile/-/issues/286