| Age | Commit message (Collapse) | Author | Files | Lines | |
|---|---|---|---|---|---|
| 2025-10-28 | Rename 'shared' to 'repository' | Kalle Lindström | 3 | -9/+9 | |
| 2025-10-28 | Add option to show relay location in notification | Kalle Lindström | 3 | -16/+245 | |
| 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-10-23 | Fix failing test due to time zone change | Kalle Lindström | 1 | -2/+2 | |
| 2025-09-11 | Move ApiEndpointOverride to its own bean in app module | Jonatan Rhodin | 1 | -8/+1 | |
| 2025-08-04 | Attempt to fix potential ANR | Kalle Lindström | 1 | -2/+3 | |
| In onReceive in NotificationAlarmReceiver onBlocking() was used which could potentially take too much time and cause an ANR. This PR changes the onBlocking() call to instead use the goAsync() API so that the onReceive method can return immediately. | |||||
| 2025-06-19 | Use AlarmManager for notifications | Kalle Lindström | 7 | -125/+140 | |
| 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-05-21 | Supply IP address when using API override | David Göransson | 1 | -1/+1 | |
| Previously we did a DNS lookup for Stagemole and Devmole however, this causes problem when starting the app with no internet and is different from how the app performs in production mode. This commit removes that logic in order to align closer to what we expect in prod. | |||||
| 2025-04-03 | Add product flavor to in app logs | Kalle Lindström | 2 | -0/+3 | |
| 2025-02-26 | Remove Joda Time and use java.time package instead | Kalle Lindström | 4 | -23/+23 | |
| 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. | |||||
| 2025-01-28 | Bundle a pre-generated relay list instead of generating one | Jonatan Rhodin | 2 | -7/+18 | |
| The android app will try to bundle the relays.json found under dist-assets/relays/ if it exists. Otherwise it will rely on the relay list downloaded by the api. For alpha, beta and stable release builds it is required to have a bundled relays.json file. | |||||
| 2025-01-07 | Add support for blocking and disconnecting text in notification | David Göransson | 2 | -48/+20 | |
| 2024-12-13 | Replace intentholder with api override intent holder | Jonatan Rhodin | 1 | -6/+4 | |
| 2024-12-12 | Remove machines file except on Windows | David Lönnhager | 1 | -2/+0 | |
| 2024-11-27 | Fix usecase | David Göransson | 1 | -3/+3 | |
| 2024-11-27 | Handle legacy always-on vpn profiles | David Göransson | 3 | -49/+51 | |
| Co-authored-by: Jonatan Rhodin <jonatan.rhodin@mullvad.net> | |||||
| 2024-11-22 | Refactor ConnectivityListener | David Göransson | 1 | -1/+1 | |
| 2024-11-18 | Use ticker flow for Android system notifications | Kalle Lindström | 5 | -91/+115 | |
| 2024-11-12 | Fix account expiry in app notif not resetting | Kalle Lindström | 1 | -1/+3 | |
| 2024-11-12 | Use maybenotv2 on iOS, remove maybenotv1 | Emīls | 1 | -1/+1 | |
| 2024-10-30 | Add back maybenot_machines version 1 | Joakim Hulthe | 1 | -1/+1 | |
| 2024-10-07 | Use Duration instead of Period | Kalle Lindström | 1 | -5/+4 | |
| 2024-10-07 | Fix review feedback | Kalle Lindström | 2 | -38/+22 | |
| 2024-10-07 | Update in app expiry notifications over time | Kalle Lindström | 4 | -6/+87 | |
| 2024-09-25 | Align internal and external notification expiry | Kalle Lindström | 2 | -5/+7 | |
| 2024-09-18 | Implement new Connect screen with feature indicators | David Göransson | 1 | -3/+3 | |
| 2024-09-06 | Add daita grpc and ui | Albin | 3 | -34/+30 | |
| 2024-08-30 | Fix foreground not starting in time | David Göransson | 1 | -24/+25 | |
| 2024-08-30 | Fix incorrect offline notification when not blocking | David Göransson | 1 | -3/+3 | |
| 2024-08-30 | Add notification throttling | David Göransson | 1 | -1/+13 | |
| 2024-08-30 | Initialize mullvad daemon directly in vpn service on create | Jonatan Rhodin | 5 | -59/+66 | |
| As a consequence move the address resolve to the daemon | |||||
| 2024-08-28 | Reformat kotlin code using updated ktfmt plugin | Albin | 10 | -37/+27 | |
| This commit mostly adds trailing commas throughout the project, but also includes a few other formatting changes. | |||||
| 2024-08-19 | Fix for failing mockapi and e2e tests | Niklas Berglund | 1 | -2/+1 | |
| 2024-08-07 | Fix bind not being invoked | David Göransson | 4 | -34/+38 | |
| 2024-08-07 | Fix tunnel state notification behavior when logged out | David Göransson | 1 | -4/+0 | |
| 2024-08-05 | Add dummy name resolver | David Göransson | 1 | -2/+5 | |
| Co-authored-by: Jonatan Rhodin <jonatan.rhodin@mullvad.net> | |||||
| 2024-08-02 | Reset the backoff and start/stop management service in proper order | David Göransson | 1 | -3/+6 | |
| 2024-08-01 | Add log to detect slow start up of daemon | David Göransson | 1 | -0/+1 | |
| 2024-06-26 | Change app log calls to info severity | Albin | 2 | -14/+14 | |
| 2024-06-26 | Migrate log calls to kermit | Albin | 2 | -19/+16 | |
| 2024-06-24 | Refactor daemon init and deinit on Android | David Lönnhager | 2 | -78/+41 | |
| 2024-06-17 | Get value of data directory value at app startup | Markus Pettersson | 2 | -2/+11 | |
| Remove `APP_PATH` from `mullvad-paths` on Android since it should not be a constant value. Instead, it is passed down from the Android app startup. As it turns out, it is really ever used for pointing to the RPC socket in use. | |||||
| 2024-06-13 | Fix broken IS_PLAY_BUILD check | Albin | 1 | -1/+1 | |
| 2024-05-29 | Migrate to gRPC | David Göransson | 36 | -2641/+852 | |
| 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> | |||||
| 2024-05-14 | Remove tunnel state from lifecycle log | Albin | 1 | -1/+1 | |
| 2024-03-19 | Add daemon support for Server IP overrides | David Göransson | 4 | -0/+114 | |
| 2024-03-14 | Return success or error when creating and updating a custom list | Jonatan Rhodin | 2 | -9/+21 | |
| 2024-02-15 | Add toggle button for split tunneling | MaryamShaghaghi | 1 | -1/+8 | |
| Co-Authored-By: Boban Sijuk <49131853+Boki91@users.noreply.github.com> | |||||
| 2024-02-08 | Add custom lists to the service | Jonatan Rhodin | 4 | -7/+72 | |
| 2024-02-05 | Fix wildcard import | David Göransson | 1 | -1/+5 | |
| 2024-02-05 | Add const property to old const | David Göransson | 3 | -4/+4 | |
