Guido Schmit
a1c36a8a03
fix: green brand theme, iOS launcher icon, password reveal, real login error
...
- Theme primary now the iOS brand green (#20A050), fixed app-wide (was tied
to the server's blue primary_color)
- Launcher icon generated from the iOS AppIcon across all densities;
dropped the placeholder adaptive icon
- PasswordField: eye toggle + brief last-character reveal; used on login,
profile and CalDAV password inputs
- Login now surfaces the server's actual error detail (verified the JSON
contract against the live server; a 401 is a genuine credential mismatch)
- CLAUDE.md: correct prod base URL to calendar.scarriffle.com
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-05-31 12:48:53 +02:00
Guido Schmit
aff6cef493
feat: full Compose UI (auth, calendar, events, accounts, settings, profile)
...
- Root navigation (server setup -> login+2FA -> calendar) with settings-driven theme
- CalendarViewModel mirroring iOS CalendarStore: range-based caching,
background prefetch, hidden/banished calendar filters, event CRUD
- Five calendar views: Month, Week, Day, Quarter, Agenda (shared time grid)
- Event detail + editor sheets (platform date/time pickers, color override,
writable-calendar picker) across local/caldav/google/homeassistant
- Calendar filter sheet (per-calendar show/hide)
- Accounts screen: add/delete CalDAV, local, iCal, Home Assistant; list Google
- Settings: view/week-start/language/colors/contrast/hour-height/cache range,
synced to server
- Profile: email, password change, 2FA enable/disable
- gradlew build (lint + tests + assemble) passes
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-05-31 12:22:56 +02:00
Guido Schmit
676b7ee2c6
feat: data foundation (models, secure storage, Retrofit API, repository, L10n)
...
- java.time via core library desugaring (minSdk 24)
- Domain models: CalEvent, AppSettings, account/calendar models
- CredentialStore (EncryptedSharedPreferences) + SettingsStore
- Retrofit CalendarrApi covering all server endpoints
- CalendarRepository: auth, settings, accounts, events (org.json parsing
for mixed-type payloads), writable calendars, visibility toggles
- Hilt DI (Moshi), dynamic-baseUrl ApiProvider, AuthInterceptor
- L10n (de/en) ported from iOS
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-05-31 11:53:34 +02:00
Guido Schmit
a015a45265
chore: get Android project building (toolchain, deps, manifest, launcher icon)
...
- Fix dependency versions (Retrofit 2.11, OkHttp 4.12, Compose BOM)
- Add Material Components for the app theme
- Add --add-exports/--add-opens for kapt on JDK 21
- Remove deprecated manifest package attr; add INTERNET permission
- Add adaptive launcher icon
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-05-31 11:44:48 +02:00