608580fc7e25ad8cbfccd4e3b30b344de0128647
- CalEvent parsing: handle Android's JSONObject.optString JSON-null quirk that returned the string "null" — this made every event blue (color "null" → fallback) and showed "null" for empty location/description. Now null-safe. - Event detail: copy-to-calendar action; calendar row uses a calendar icon (was identical to the notes icon); empty location/notes rows hidden - Event editor: copy mode (prefill from an existing event, save as new) - Settings: hour height, text/line contrast are now button chips (like the cache range); color picker wraps, shows the current colour and a check mark - Month scroll perf: precompute a day→events index once per change and only reload when the visible month actually changes (was filtering every cell every frame → laggy) - Splash: dark window/splash background + inset launcher icon (was an ugly white box on startup) Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Description
No description provided
Languages
Kotlin
100%