Commit graph

281 commits

Author SHA1 Message Date
Johannes Millan
ed92ea7933 17.2.4 2026-03-01 00:19:19 +01:00
Johannes Millan
a87bff8661 17.2.3 2026-02-28 21:52:29 +01:00
Johannes Millan
9372a14f4f 17.2.2 2026-02-28 21:41:25 +01:00
Johannes Millan
f44e6b54cf 17.2.1 2026-02-21 15:15:34 +01:00
Johannes Millan
b79fa5ac29 17.2.0 2026-02-21 13:49:15 +01:00
Johannes Millan
de03a2d11e fix(android): prevent crash on SAF folder selection (#6545)
Wrap takePersistableUriPermission() in try/catch to handle SecurityException
thrown on certain Samsung/Android 13 devices. Reject the Capacitor call on
failure so the error propagates cleanly. Add .catch() to FormlyBtnComponent
promise chain to prevent unhandled rejections.
2026-02-16 18:44:27 +01:00
Johannes Millan
f9fff40402 17.1.8 2026-02-15 11:20:46 +01:00
Johannes Millan
f3eb92c617 17.1.7 2026-02-13 16:16:25 +01:00
Johannes Millan
02fe1a5ff2 fix(android): persist share intent to SharedPreferences for cold-start reliability
Share-to-app via Android SEND intent was unreliable on cold start because
share data was stored only in memory (pendingShareIntent). If the process
died before Angular loaded, the data was lost. Now share data is persisted
to SharedPreferences immediately and pulled synchronously by the frontend.
2026-02-13 14:06:43 +01:00
Johannes Millan
4c4a0a3afd fix(android): use native safe area insets for proper status bar padding
Install capacitor-plugin-safe-area to read native safe area insets and
inject them as CSS variables, working around Capacitor 7's broken
adjustMarginsForEdgeToEdge and Android WebView's unreliable
env(safe-area-inset-*) values.

- Add _initSafeAreaInsets() to GlobalThemeService
- Remove broken adjustMarginsForEdgeToEdge: 'auto' from capacitor config
- Clamp context menu trigger Y to safe area top
- Fix light mode status bar color to match theme (#f8f8f7)
2026-02-11 20:37:40 +01:00
Johannes Millan
ec7e6da161 17.1.6 2026-02-09 18:14:03 +01:00
Johannes Millan
6f85fb4ea6 17.1.5 2026-02-08 16:25:57 +01:00
Johannes Millan
8300eaa6a7 17.1.4 2026-02-08 15:49:17 +01:00
Johannes Millan
f5669b60c4 17.1.3 2026-02-06 20:11:32 +01:00
Johannes Millan
cffbbcfe09 17.1.2 2026-02-05 16:01:03 +01:00
Johannes Millan
dba49e3722 17.1.1 2026-02-05 14:35:02 +01:00
Johannes Millan
197ec4d3a8 17.1.0 2026-02-04 20:55:51 +01:00
Johannes Millan
e97d530d2a 17.0.12 2026-01-30 21:13:40 +01:00
Johannes Millan
25d3cbe81e 17.0.11 2026-01-29 18:24:47 +01:00
Johannes Millan
2c004a445d 17.0.10 2026-01-29 18:24:15 +01:00
Johannes Millan
2d835f9e73 17.0.9 2026-01-28 22:42:29 +01:00
Johannes Millan
821d05d495 17.0.8 2026-01-28 22:16:05 +01:00
Johannes Millan
819671de6d 17.0.7 2026-01-28 22:01:01 +01:00
Johannes Millan
c0f4f8be6c 17.0.6 2026-01-27 22:22:24 +01:00
Johannes Millan
a1af9d5d59 17.0.5 2026-01-26 19:48:56 +01:00
Johannes Millan
0f68c35932 17.0.4 2026-01-26 18:14:43 +01:00
Johannes Millan
73b9bb580f 17.0.3 2026-01-26 16:50:58 +01:00
Johannes Millan
1138c2c1c0 feat(sync): enhance vector clock management and improve error handling in sync process 2026-01-25 20:09:19 +01:00
Johannes Millan
298c956518 17.0.2 2026-01-25 13:50:41 +01:00
Johannes Millan
a51b2c5106 17.0.1 2026-01-24 23:12:31 +01:00
Johannes Millan
044495999b 17.0.0 2026-01-23 22:19:10 +01:00
Johannes Millan
0775650e6e 17.0.0-RC.13 2026-01-21 22:12:01 +01:00
Johannes Millan
40b18c4693 fix(sync): implement OAuth redirect for Dropbox on mobile
- Add redirect_uri parameter to OAuth flow for mobile platforms
- Create OAuthCallbackHandlerService to handle deep link callbacks
- Register custom URI scheme (com.super-productivity.app://) in Android/iOS
- Add platform-specific UI for OAuth flow (automatic vs manual)
- Implement proper error handling for OAuth callback errors
- Add comprehensive unit tests for callback handler
- Fix memory leak by properly cleaning up event listeners
- Use IS_NATIVE_PLATFORM constant for consistent platform detection

Web/Electron continue using manual code entry (no regression).
Mobile (iOS/Android) now use automatic redirect with deep linking.

Fixes Dropbox OAuth authentication on iOS and Android platforms.
2026-01-21 14:30:24 +01:00
Johannes Millan
2844560ef8 refactor(tasks): remove isEnableUrl config, always enable URL parsing 2026-01-20 17:07:24 +01:00
Johannes Millan
6771fa77a2 17.0.0-RC.12 2026-01-18 14:00:52 +01:00
Johannes Millan
0dd33fe4b6 17.0.0-RC.11 2026-01-18 12:29:38 +01:00
Johannes Millan
d9e27a0da7 17.0.0-RC.10 2026-01-18 02:20:51 +01:00
Johannes Millan
7d5bb1a709 17.0.0-RC.9 2026-01-17 16:08:01 +01:00
Johannes Millan
0a7e0c317e 17.0.0-RC.8 2026-01-17 15:47:15 +01:00
Johannes Millan
53324bac08 17.0.0-RC.7 2026-01-17 13:33:56 +01:00
Johannes Millan
ce595ba212 17.0.0-RC.6 2026-01-17 13:32:33 +01:00
Johannes Millan
3c5b441046 17.0.0-RC.5 2026-01-16 22:35:17 +01:00
Johannes Millan
0cd6dfaf43 17.0.0-RC.4 2026-01-16 22:34:50 +01:00
Johannes Millan
7aee741c1d Merge branch 'feat/ios' into master
Resolves merge conflicts in:
- src/app/core/startup/startup.service.ts: Keep both _store and _platformService injections
- src/app/features/android/store/android.effects.ts: Refactor to use platform-agnostic CapacitorReminderService

The feat/ios branch adds iOS support via Capacitor, introducing platform-agnostic
services for notifications, reminders, and platform detection that work across
web, Android, and iOS.
2026-01-16 13:45:31 +01:00
Johannes Millan
566760bd4a feat(android): add optional alarm-style notifications and fix reminder cancellation
- Fix bug where native Android alarms weren't cancelled when reminders were removed
- Add cancelNativeReminderOnUnschedule$ effect to cancel alarms on unschedule/dismiss
- Add useAlarmStyleReminders setting (default: false) for regular vs alarm notifications
- Create separate notification channels for alarm-style and regular reminders
- Add IS_ANDROID_WEB_VIEW_TOKEN injection token for testability
- Pass useAlarmStyle parameter through JS bridge to native Kotlin layer
2026-01-15 17:49:56 +01:00
Johannes Millan
23c6691daa 17.0.0-RC.3 2026-01-14 16:26:13 +01:00
Johannes Millan
aee3b656df 17.0.0-RC.2 2026-01-14 14:26:09 +01:00
Johannes Millan
4d17ae8f2f feat(ios): add keyboard and status bar support 2026-01-14 13:45:42 +01:00
Johannes Millan
b583454327 fix(android): support pre-release versions in APK builds
- Update bump-android-version.js to handle RC/alpha/beta versions
- Pre-releases use versionCode suffix 0001-8999, stable uses 9000
- This ensures users can upgrade from RC to stable without uninstalling
- Skip Play Store upload for pre-release tags (GitHub only)
- Skip fastlane changelog generation for pre-releases

Fixes #5964
2026-01-12 15:25:18 +01:00
Johannes Millan
f9656ceb70 16.9.4 2026-01-10 12:58:17 +01:00