summaryrefslogtreecommitdiffhomepage
path: root/android/lib/shared/src/main
AgeCommit message (Collapse)AuthorFilesLines
2025-10-28Add option to show relay location in notificationKalle Lindström8-309/+0
This PR adds the following: - An option to show the relay location in the connection notification. - A new submenu under Settings called Notifications. - In the new Notifications screen a toggle to enable/disable showing the location in the notification.
2025-09-30Improve account data fetchingJonatan Rhodin1-9/+27
Add a new account data fetch every time a user enters the connect screen This is limited to at a maximum one fetch every minute. Add a check that the user is still logged in to the same account before updating the account data cache. Change account fetching behavior in the account screen to fetch on every enter instead of init.
2025-06-19Use AlarmManager for notificationsKalle Lindström1-2/+5
Instead of scheduling system notifications from a flow we now schedule them independently from the app lifecycle via AlarmManager. This is done so that for example an expiry notification that the user dismissed won't get redisplayed if the app process gets killed and then restarted. When the account exiry time is fetched we schedule an alarm that will show a notification 3 days before the account time expires. This alarm then also schedules a new alarm to show the following notification and so on. To make this work this PR also introduces two new broadcast receivers; one on boot received listener and one on time time/timezone changed listener. Beause Android clears alarms when the devices is rebooted/the time is changed we need these listeners to re-trigger the alarm. To enable the broadcast receivers to re-trigger the alarm we also have to persist the expiry time in the DataStore preferences.
2025-02-26Remove Joda Time and use java.time package insteadKalle Lindström1-2/+2
Joda Time has been superseded by the Java 8 java.time package which has more or less the same API. This commit removes all usage of Joda Time and replaces it with the java.time classes. This is done so that we can remove the dependency on Joda Time.
2024-11-27Fix usecaseDavid Göransson2-4/+4
2024-11-27Handle legacy always-on vpn profilesDavid Göransson3-14/+13
Co-authored-by: Jonatan Rhodin <jonatan.rhodin@mullvad.net>
2024-10-15Show create account confirm when user has accountKalle Lindström1-2/+13
2024-08-28Reformat kotlin code using updated ktfmt pluginAlbin5-8/+8
This commit mostly adds trailing commas throughout the project, but also includes a few other formatting changes.
2024-08-23Propagate logout errors to the uiJonatan Rhodin1-4/+2
2024-08-21Fix unit testsJonatan Rhodin1-3/+1
2024-08-21Add support for translated location namesDavid Göransson3-1/+105
2024-08-21Add error for voucher code looks like an account numberDavid Göransson1-1/+2
2024-06-26Change app log calls to info severityAlbin1-1/+1
2024-06-26Migrate log calls to kermitAlbin1-2/+2
2024-06-13Fix missing device refreshAlbin1-0/+6
2024-06-10Unify account number namingAlbin2-12/+12
Use variations of "account number" rather than "account token" throughout the kotlin code base.
2024-05-29Migrate to gRPCDavid Göransson6-0/+171
Co-authored-by: Jonatan Rhodin <jonatan.rhodin@mullvad.net> Co-authored-by: Markus Pettersson <markus.pettersson@mullvad.net> Co-authored-by: David Lönnhager <david.l@mullvad.net>