5 Commits
Author SHA1 Message Date
agentbox 4abbbecce6 feat: i18n — translate Android app UI + pass device lang to server
CI / test-and-package (push) Successful in 40s
CI / build-android (push) Successful in 1m25s
- French (values-fr) and German (values-de) string resources for
  all app UI: settings dialog, errors, labels, buttons
- getDeviceLang() detects Locale.getDefault().getLanguage()
  and maps to en/fr/de
- loadUrl() now appends ?lang=XX to the base URL so the web
  app renders in the user's device language automatically
- English remains the fallback for unsupported languages
2026-08-01 12:11:57 +00:00
agentbox 69def70fe6 fix: swipe-to-refresh hijacks upward scroll in WebView
CI / test-and-package (push) Successful in 37s
CI / build-android (push) Successful in 1m7s
Added setOnChildScrollUpCallback — only allows pull-to-refresh
when WebView scrollY is 0 (at the very top). When scrolled down,
the gesture passes through to the WebView for normal scrolling.

Also fixed: url_label/hint now say 'base URL' instead of
misleading 'server URL'/'public URL'.
2026-08-01 12:04:49 +00:00
agentbox 8d2585bb6e fix: blank page at start — SSL, HTTP errors, old-key migration
CI / test-and-package (push) Successful in 1m6s
CI / build-android (push) Successful in 1m39s
- WebView background set to #F5F5F5 to avoid white flash
- SSL certificate errors now show a dialog (user can accept self-signed)
- HTTP errors (4xx/5xx) shown with status code
- Migrates old 'public_url' key to 'server_url' automatically
- Better error messages with troubleshooting tips
- Progress bar shows real page load progress
- No-server-configured state shows clear instructions
2026-08-01 12:00:07 +00:00
agentbox f93e75e6f0 feat: full-featured Android app — not just public view
CI / test-and-package (push) Successful in 40s
CI / build-android (push) Successful in 3m10s
Rewrote the Android WebView app to load the entire meal-tracker
web application, not just the public sharing page:

- User configures their server base URL (e.g. https://meals.example.com)
- Full login/register, dashboard, meal responses, history, settings
- Cookie/session support — login persists across app restarts
- Dynamic toolbar title from page
- 'Clear Data' button in settings to wipe cookies/cache/sessions
- Server URL auto-normalized (trailing slash stripped, https:// added)
- Back button navigates within WebView history
- Swipe-to-refresh, loading bar, network error handling
2026-08-01 11:35:05 +00:00
agentbox 92c69ddf4b feat: android webview app + APK build script + CI artifact
CI / test-and-package (push) Successful in 43s
CI / build-android (push) Failing after 39s
Android app (WebView wrapper):
- Wraps the public household sharing URL in a native Android app
- Swipe-to-refresh, error handling, back navigation, settings dialog
- User enters their household's public URL on first launch
- Material Design with toolbar, progress indicator

Build tooling:
- build-apk.sh: one-command APK build (auto-installs Java, SDK, Gradle)
- .gitignore updated for Android build artifacts

CI (.gitea/workflows/ci.yml):
- New 'build-android' job (needs test-and-package)
- Installs Android SDK + Java 17, builds debug APK
- Uploads APK as 'meal-tracker-apk' artifact
2026-08-01 10:28:54 +00:00