Compare commits

...

685 Commits

Author SHA1 Message Date
Alex Hart
2ace1e75e1 Bump version to 7.51.1 2025-08-02 20:55:46 -03:00
Alex Hart
8e6408a90c Update translations and other static files. 2025-08-02 20:50:50 -03:00
Alex Hart
386744fa72 Fix crash when launching app for non-internal users. 2025-08-02 20:46:43 -03:00
Greyson Parrelli
aebda41fdc Fix long message sends in groups. 2025-08-01 10:29:59 -04:00
Alex Hart
68fa3b5f95 Bump version to 7.51.0 2025-07-31 15:21:46 -03:00
Alex Hart
4b6940e2ef Update translations and other static files. 2025-07-31 15:18:21 -03:00
Michelle Tang
d0d44ed7ce Update target SDK to 35. 2025-07-31 13:55:48 -04:00
Alex Hart
87a694c87c Implement io-free state update and fallback mechanism for backups state. 2025-07-31 14:16:56 -03:00
Alex Hart
bdeb5aa96a Retry deletion job on verification failure. 2025-07-31 13:11:36 -03:00
jeffrey-signal
b37bbcaaa5 Convert DecryptableUri to Kotlin. 2025-07-31 08:29:54 -04:00
lisa-signal
02420fce2a View debug log screen through WebView through a module. 2025-07-30 14:47:50 -04:00
Alex Hart
1f243bca74 Add job after registration to try to redeem subscription data. 2025-07-30 13:26:06 -03:00
Greyson Parrelli
65e114e55f Handle 400 errors for message backup uploads. 2025-07-30 11:51:48 -04:00
Greyson Parrelli
9204c9a1b8 Fix handling of resumable upload errors in archive uploads. 2025-07-30 11:46:54 -04:00
Greyson Parrelli
1ee606de9e Register backupIds for all users. 2025-07-30 10:55:53 -04:00
Greyson Parrelli
90c381f0ba Rotate MRBK when rotating AEP. 2025-07-30 09:59:16 -04:00
andrew-signal
faecbf5ea9 Bump libsignal to v0.77.1 2025-07-30 09:58:02 -04:00
andrew-signal
e87946141e Add debug logging for network capabilities. 2025-07-29 12:01:36 -04:00
Alex Hart
b8300f373d Polish various bits of backups UI. 2025-07-29 11:09:53 -03:00
Alex Hart
ab458a5bb8 Add several state presentation fixes in the delete / enable cycle. 2025-07-28 15:31:18 -03:00
Alex Hart
d3030e143b Fix E2E happy path tests for backups. 2025-07-28 12:18:17 -03:00
Greyson Parrelli
42ee5267c9 Ensure that contact cursors used for size calculations are closed. 2025-07-25 14:26:22 -04:00
Greyson Parrelli
149ee5ad36 Fix bug where editing the message body pauses video playback. 2025-07-25 14:21:28 -04:00
Greyson Parrelli
6af3f2ce42 Do not upload long text attachments to the archive. 2025-07-25 13:30:45 -04:00
Greyson Parrelli
7295787e08 Fix and update archive tests. 2025-07-25 13:04:31 -04:00
Cody Henthorne
3b028d49a5 Initial pass to properly check multi-device environment in various spots. 2025-07-25 12:19:59 -04:00
Alex Hart
e458a5fdb3 Add check for proper backup entitlement level. 2025-07-25 13:09:07 -03:00
Greyson Parrelli
00e740ee14 Add migration to fix FREE tier setting. 2025-07-25 12:08:51 -04:00
Greyson Parrelli
e8bea19927 Rename /v2/backup to /v2/svr. 2025-07-25 11:33:33 -04:00
Alex Hart
53ee0648c0 Fix backups deletion pipeline. 2025-07-25 11:02:47 -04:00
Jim Gustafson
3bb2ab3a0c Update to RingRTC v2.56.0 2025-07-25 11:02:47 -04:00
Greyson Parrelli
759a746e46 Mark some archive reconciliation logs as keepLonger. 2025-07-25 11:02:47 -04:00
Cody Henthorne
7499bd77b4 Clean up GSE usage and remove combined-UAK fallback for multi-recipient send. 2025-07-25 11:02:47 -04:00
Alex Hart
99fb70c20c Remove unused string. 2025-07-25 11:02:46 -04:00
Cody Henthorne
2da3ac5b20 Update link device provisioning proto. 2025-07-25 11:02:46 -04:00
Alex Hart
5a1bb0c231 Filter subscriber record from backup data if user is on the free tier to avoid validation error. 2025-07-25 11:02:46 -04:00
Michelle Tang
dac649ceed Bump version to 7.50.1 2025-07-25 10:26:57 -04:00
Michelle Tang
8785a9f591 Update translations and other static files. 2025-07-25 10:20:08 -04:00
lisa-signal
3cbb2ffd3f Revert using WebView for debug log screen. 2025-07-24 12:27:01 -04:00
Greyson Parrelli
a249fbb38f Migrate to new SVR2 enclave. 2025-07-24 12:13:13 -04:00
Greyson Parrelli
a19cdc923c Bump libsignal-client to v0.76.7 2025-07-24 12:12:58 -04:00
Michelle Tang
109715e64c Bump version to 7.50.0 2025-07-23 15:38:12 -04:00
Michelle Tang
502ef7da7d Update translations and other static files. 2025-07-23 15:28:25 -04:00
Alex Hart
b9cd128b1b Fix shadowed variable warning. 2025-07-23 15:22:26 -04:00
Alex Hart
dd79348b6a Update how our check job handles mismatched tokens. 2025-07-23 15:22:26 -04:00
Michelle Tang
8a61f464ab Fix cut off linking text. 2025-07-23 15:22:26 -04:00
Alex Hart
8ed34fb4a0 Increase log coverage for processing backup refresh and credential submission. 2025-07-23 15:22:26 -04:00
Alex Hart
16776ad843 Filter messages that will expire within 24hrs from including attachments in backups. 2025-07-23 15:22:26 -04:00
Cody Henthorne
635aa8791f Respect rate limit in send jobs. 2025-07-23 15:22:26 -04:00
Cody Henthorne
d1c02ac454 Add server message to group patch exception. 2025-07-23 15:22:26 -04:00
Greyson Parrelli
eca75ca3fb Include backup size when fetching archive upload form. 2025-07-21 13:02:42 -04:00
Alex Hart
b95a3a2554 Don't show x on complete. 2025-07-21 13:33:28 -03:00
Henry Holtzman
bf4b09bdc4 Update to MobileCoin enclave measurements. 2025-07-21 08:20:05 -04:00
jeffrey-signal
8a057168ae Improve conversation scroll performance.
Fixes a performance bottleneck in `ConversationFragment` caused by expensive calculations in `ConversationItemDecorations.hasHeader()`. This method is invoked in `RecyclerView.ItemDecoration.getItemOffsets()`, which runs on every layout pass and happens frequently during scrolling.

The most expensive calculation in `hasHeader()` is `toEpochDay()`. That method calls `Long.toLocalDate()`, which clones a `TimeZone` object on each call. Upon opening one conversation (without scrolling), I observed that `toEpochDay()` was called over 1000 times in less than a second, rapidly allocating memory and causing garbage collection pressure that potentially leads to ANRs.

We only need to calculate `hasHeader()` once for each conversation element, so caching the result of that method will eliminate the unnecessary calculations and improve the memory usage of `ConversationFragment`.
2025-07-18 16:36:17 -04:00
Greyson Parrelli
1cef53d82e Truncate message length based on utf8-byte size. 2025-07-18 16:27:41 -04:00
Alex Hart
84c6719d03 Attempt to heal if we have everything we need but no entitlement. 2025-07-18 16:58:24 -03:00
Cody Henthorne
e0df5e6df0 Exclude disappearing attachments from archive size estimation. 2025-07-18 15:57:35 -04:00
Michelle Tang
eae0b43858 Generalize device authentication education sheet for backups. 2025-07-18 13:03:49 -04:00
Alex Hart
b188c45cd9 Do not include view-once media in regular message backups. 2025-07-18 12:10:11 -03:00
Alex Hart
36de1284c7 Allow user to rotate AEP. 2025-07-18 10:36:49 -03:00
Greyson Parrelli
a9455b95ac Inline long text attachments into backup files. 2025-07-17 16:50:22 -04:00
Miriam Zimmerman
6553c416f8 Revert attempts to fix broken camera issue 2025-07-17 15:30:06 -04:00
Jim Gustafson
b0d89ccc97 Update to RingRTC v2.55.0 2025-07-17 14:53:06 -04:00
Alex Hart
a6761127ac Do not refresh on concurrent matching upload states. 2025-07-17 13:49:00 -03:00
Alex Hart
7918c3dabd Add log lines for state refresh. 2025-07-17 13:47:06 -03:00
Michelle Tang
85ff27d830 Fix missing chat folder crash. 2025-07-16 14:34:50 -04:00
Cody Henthorne
8ee80b0d27 Fix backup message job cancel and start bugs. 2025-07-16 14:21:59 -04:00
Michelle Tang
141faf3fb6 Avoid uploading story-only media to backups. 2025-07-16 13:10:32 -04:00
lisa-signal
559539dc3b Create search functionality for debug log page. 2025-07-16 12:42:36 -04:00
Greyson Parrelli
ded98c0d50 Fix rules for link+syncing expiring messages. 2025-07-16 12:42:36 -04:00
Greyson Parrelli
4b75b9f1d6 Improve reconciliation task to reduce possible churn. 2025-07-16 12:42:36 -04:00
Greyson Parrelli
cfa96f4737 Remove internal-only crash during archive status reset. 2025-07-16 12:42:36 -04:00
Cody Henthorne
2148eb8760 Prevent IMO retries when network unavailable. 2025-07-16 12:42:36 -04:00
Cody Henthorne
269d5752c4 Fix add 1000 messages copy/paste error during compose conversion. 2025-07-16 12:42:36 -04:00
Cody Henthorne
9180917b7c Adjust domain scrubbing. 2025-07-16 12:42:36 -04:00
Cody Henthorne
1a1e1ea631 Select first backup subscription if selection is unavailable. 2025-07-16 12:42:36 -04:00
Greyson Parrelli
015a34f8d6 Only enqueue attachment archive syncing jobs if the user backs up media. 2025-07-16 12:42:36 -04:00
Greyson Parrelli
e6aed8534a Use libsignal for deriving thumbnail transit keys. 2025-07-16 12:42:36 -04:00
AnonAlly
f7d14c77b1 Migrate ChangeNumberFragment to compose. 2025-07-16 12:42:36 -04:00
Greyson Parrelli
3c07a731c4 Add additional checks for serviceId during sending flow. 2025-07-16 12:42:36 -04:00
Alex Hart
049e9460a0 Ensure we are restoring media per spec with full media and thumbnail rules. 2025-07-16 12:42:36 -04:00
jeffrey-signal
1137bbd8a5 Fix missing prompt to save PIN to password manager on Android < 14.
On Android versions older than 14, users were not prompted to save their PIN to their device password manager due to an autofill session conflict.

The `CreateSvrPinFragment.input` field triggered an autofill session, so when `ConfirmSvrPinFragment` later attempted to save the PIN using `CredentialManager`, the system incorrectly assumed the credential had already been saved by autofill and skipped the save prompt.
2025-07-16 12:42:36 -04:00
lisa-signal
24360a41ff Change debug log from RecyclerView to WebView. 2025-07-16 12:42:36 -04:00
Alex Hart
b45fb28dbe Wire in NetworkResult for Types. 2025-07-16 12:42:36 -04:00
Michelle Tang
7753aadbf0 Adjust turn on backups megaphone schedule. 2025-07-16 12:42:36 -04:00
Michelle Tang
359f473b59 Add verify key megaphone. 2025-07-16 12:42:35 -04:00
FineFindus
c6afa17330 Preserve text when toggling view once.
Fixes an issue, where the written text would be lost if a user toggled view
once in the `AddMessageDialogFragment`. This is unexpected, as when toggling
view once from the `MediaReviewFragment` the previously written text is
preserved.
2025-07-16 12:42:35 -04:00
Alex Hart
11d6234d91 Do not run subscription check if override is set. 2025-07-16 12:42:35 -04:00
Jeffrey Starke
dbd79cd0a5 Bump version to 7.49.1 2025-07-15 18:08:38 -04:00
Jeffrey Starke
70698c7b23 Update baseline profile. 2025-07-15 18:04:23 -04:00
Jeffrey Starke
ffd57ca591 Update translations and other static files. 2025-07-15 18:00:57 -04:00
Jeffrey Starke
00781e34f8 Update translations and other static files. 2025-07-15 17:51:03 -04:00
Michelle Tang
661fc9dd9e Add check before running backup jobs. 2025-07-15 17:45:30 -04:00
gram-signal
0dbfdaa4a6 Use non-global remote config for usePqRatchet. 2025-07-11 11:48:42 -07:00
Alex Hart
c41d7c672d Bump version to 7.49.0 2025-07-10 09:26:25 -03:00
Alex Hart
43f11015c4 Update translations and other static files. 2025-07-10 09:20:40 -03:00
Alex Hart
f0335f0385 Print active session count while attempting APK Upgrade. 2025-07-10 09:12:48 -03:00
jeffrey-signal
a88394ffe4 Fix crash when attempting to clear pending GlideImage loads.
Hold a reference to the Glide RequestManager instead of creating a new instance when attempting to clear pending loads and free resources for the target.
2025-07-10 09:12:48 -03:00
Alex Hart
e6ca41c0f9 Avoid crash when not connected to the network. 2025-07-10 09:12:48 -03:00
jeffrey-signal
6d58e89c18 Prompt to save PIN to device password manager.
Fixes an issue where the system auto-fill could overwrite the Signal backup key saved to the device password manager with the Signal PIN. The PIN confirmation screen now explicitly uses `CredentialManager` to save the `Signal PIN` under a separate username from the `Signal Backups` key, allowing both credentials to be stored and auto-filled correctly.

- Add `com.google.android.libraries.identity.googleid` dependency so `CredentialManager` works on Android < 14.
- Prompt to save Signal PIN to credential manager after PIN is created/edited.
2025-07-10 09:12:48 -03:00
jeffrey-signal
ef874c4091 Show settings button in backup key save error dialog only when password manager settings are accessible.
To prevent crashes when the "go to settings" button is clicked in the backup key save to password manager error dialog, the "go to settings" button will only be displayed in cases where the intent resolves successfully.
2025-07-10 09:12:48 -03:00
Michelle Tang
177504a897 Fix database consistency test. 2025-07-10 09:12:48 -03:00
Michelle Tang
7d7c6c5130 Ensure story attachment data is deleted after expiration. 2025-07-10 09:12:48 -03:00
emir-signal
b42dcece48 Add support for call link epochs. 2025-07-10 09:12:48 -03:00
Greyson Parrelli
5d0f71e02c Fix duplicate numbers, remove shortcodes entirely. 2025-07-10 09:12:48 -03:00
Alex Hart
1ba34bb685 Remove trailing space from backup key transform. 2025-07-10 09:12:48 -03:00
adel-signal
06fda21143 Update to ringrtc 2.54.0 2025-07-10 09:12:48 -03:00
Alex Hart
06f90c73a9 Add view settings button to backup settings screen. 2025-07-10 09:12:48 -03:00
Cody Henthorne
5ce5326721 Migrate away from placeholder revision to support exporting pending approval groups. 2025-07-10 09:12:48 -03:00
Greyson Parrelli
dc8e93a9d3 Add additional debug info for the backups alpha. 2025-07-10 09:12:48 -03:00
Abdullah Emad
869b5aa3d5 Highlight all the message search matches.
It is expected that when a user search for a message, that all the
matches within the same messages are highlighted (if there are more than
one match) not just the first match. This is also consistent with how
the search in the desktop app is implemented.

Resolves #13960
2025-07-10 09:12:48 -03:00
Cody Henthorne
dfdb8f699a Fix group update item bugs caused by backup support changes. 2025-07-10 09:12:48 -03:00
Cody Henthorne
347005bec6 Fix benchmark test setup. 2025-07-10 09:12:48 -03:00
Alex Hart
a88fcd6e0b Close all previous activities when launching into the main activitiy from restore backups. 2025-07-10 09:12:48 -03:00
Alex Hart
943c1b0ac3 Bump version to 7.48.1 2025-07-10 09:11:15 -03:00
Alex Hart
4c604475e5 Update translations and other static files. 2025-07-10 09:10:32 -03:00
andrew-signal
a384bf5e35 Add REST fallback to RemoteConfig fetch. 2025-07-03 13:34:52 -04:00
Greyson Parrelli
45d8dbc35c Bump version to 7.48.0 2025-07-02 16:03:33 -04:00
Greyson Parrelli
78e6aa3021 Update translations and other static files. 2025-07-02 15:51:31 -04:00
Cody Henthorne
8b094de4bd Fix wrapping long buttons on registrationv3 screens. 2025-07-02 15:35:33 -04:00
Cody Henthorne
253c8ff2ff Fix db test leak warning. 2025-07-02 15:16:11 -04:00
Cody Henthorne
437b1a3d98 Restore timestamp instead of tier during manual registration remote backup restore flow. 2025-07-02 11:24:36 -04:00
andrew-signal
ec8bb17bff Rotate libsignal-net remote config flag name in anticipation of scale up. 2025-07-02 09:45:13 -04:00
andrew-signal
1bddd2815a Bump libsignal to v0.76.3. 2025-07-02 09:44:49 -04:00
Greyson Parrelli
f68c344c4b Clean up additional data when viewing view-once messages. 2025-07-01 17:00:49 -04:00
Greyson Parrelli
82fd8cf282 Fix lint. 2025-07-01 16:25:29 -04:00
Cody Henthorne
f540886bb8 Attempt to resend pending messages if job creation failed. 2025-07-01 13:02:03 -04:00
gram-signal
173983a1ab Use RemoteConfig for UsePqRatchet.
Co-authored-by: Greyson Parrelli <greyson@signal.org>
2025-07-01 13:02:03 -04:00
Greyson Parrelli
f6b74ad2a0 Replace MissingAddressError with more specific variants. 2025-07-01 13:02:03 -04:00
Greyson Parrelli
9317491321 Fix androidTest issue with deviceId generation. 2025-07-01 13:02:03 -04:00
Jordan Rose
1ce6aacec6 Add link preview support for raw images. 2025-07-01 13:02:03 -04:00
lisa-signal
3b0878f493 Prevent system from displaying -1 other groups in common when there is 0 group in common. 2025-07-01 13:02:03 -04:00
andrew-signal
b98e09aedd Revert "Rotate libsignal-net remote config." 2025-07-01 13:02:03 -04:00
Alex Hart
1732567128 Hide optimize storage if billing not available. 2025-07-01 13:02:03 -04:00
Alex Hart
64f854c29d Flow beta tag to next row if there isn't enough room. 2025-07-01 13:02:02 -04:00
jeffrey-signal
fdf1238905 Improve backup key password manager save error handling.
- Add "go to settings" button to missing credential manager error dialog.
- Add handling for disabled password manager save prompt on Android API <= 33.
2025-07-01 13:02:02 -04:00
andrew-signal
0a17cd1c99 Rotate libsignal-net remote config. 2025-07-01 13:02:02 -04:00
Alex Hart
f1ac2282ff Ensure proper thread snippet restore. 2025-07-01 13:02:02 -04:00
Alex Hart
7a0b7c045e Only display failure sheet if there is actually a failure reported. 2025-07-01 13:02:02 -04:00
Alex Hart
9725d98c4a Hide paragraph if not during manual restore. 2025-07-01 13:02:02 -04:00
Greyson Parrelli
68d3103e4c Bump version to 7.47.2 2025-07-01 13:01:42 -04:00
Greyson Parrelli
6064943b47 Update translations and other static files. 2025-07-01 13:00:31 -04:00
Cody Henthorne
6aab622c96 Fix edit messages showing as new notifications bug. 2025-07-01 12:57:44 -04:00
Greyson Parrelli
939f2f82b1 Fix crash when skipping in BetterCipherInputStream. 2025-07-01 12:50:16 -04:00
Greyson Parrelli
516b505059 Fix crash with missing sessions.
We were excluding prekey bundles if they were missing EC prekeys, but
that's a valid state to be in -- those aren't required, and we shouldn't
have been excluding them.
2025-07-01 12:49:31 -04:00
Cody Henthorne
4b9cac43a8 Bump version to 7.47.1 2025-06-26 15:25:02 -04:00
Cody Henthorne
25669fae4f Update translations and other static files. 2025-06-26 15:14:03 -04:00
Greyson Parrelli
fdd9e07918 Add internal tool to reset sender key state. 2025-06-26 15:07:39 -04:00
Greyson Parrelli
0f16be81b0 Bump libsignal to 0.76.0 2025-06-26 15:07:39 -04:00
Alex Hart
bc10cd0d03 Add check for <= 0 time duration for Never case. 2025-06-26 14:26:18 -03:00
Alex Hart
c75cafd5f5 Add click handling to choose backup type learn more. 2025-06-26 14:14:28 -03:00
Cody Henthorne
0947d5b7b5 Fix deadlock/ANR in IncomingMessageObserver and SignalWebSOcket. 2025-06-26 10:32:16 -04:00
Cody Henthorne
5126b76214 Bump version to 7.47.0 2025-06-25 16:33:26 -04:00
Cody Henthorne
5e6d69b6fb Update baseline profile. 2025-06-25 16:26:36 -04:00
Cody Henthorne
3381d37086 Update translations and other static files. 2025-06-25 16:21:32 -04:00
Greyson Parrelli
1c596490c9 Add link+sync support for the backup4 capability. 2025-06-25 16:14:32 -04:00
Cody Henthorne
a043b4e573 Try to run IncomingMessageObserver more aggressively. 2025-06-25 16:14:32 -04:00
Greyson Parrelli
c0340be3ce Fix archive thumbnail decryption. 2025-06-25 16:14:32 -04:00
Greyson Parrelli
b1063f69f9 Remove archive_transfer_file column. 2025-06-25 16:14:32 -04:00
Greyson Parrelli
03dc014c08 Add the backup alpha build flavor. 2025-06-25 16:14:32 -04:00
Greyson Parrelli
7b7e153281 Populate legacy locatorInfo fields. 2025-06-25 16:14:32 -04:00
Greyson Parrelli
ec5452744d Allow normal attachments to be validated with plaintextHashes. 2025-06-25 16:14:32 -04:00
Greyson Parrelli
607b83d65b Validate plaintext hashes for archived attachments. 2025-06-25 16:14:31 -04:00
Greyson Parrelli
38c8f852bf Do most of the proto and database groundwork for the new mediaName. 2025-06-25 16:14:31 -04:00
Alex Hart
e705495638 Add 30 day reminder for manual backups.
Co-authored-by: Michelle Tang <mtang@signal.org>
2025-06-25 16:14:31 -04:00
Alex Hart
82531630c7 Add megaphone to prompt user to enable backups. 2025-06-25 16:14:31 -04:00
Alex Hart
322a9cd97a Suppress backup messaging if device is unregistered. 2025-06-25 09:47:59 -03:00
Alex Hart
63f038873b Add module dependency verification entries to support AS Narwhal stable release. 2025-06-25 09:45:55 -03:00
jeffrey-signal
143b8a6356 Fix crash when saving backup key to credential manager on Android 13 and earlier. 2025-06-24 17:03:20 -04:00
Alex Hart
6e0faee30f Remove launchMode from MainActivity. 2025-06-24 14:22:43 -03:00
Alex Hart
ccc4acdef9 Prevent "Free" tier from being upgraded in the background. 2025-06-24 11:11:32 -03:00
Cody Henthorne
1719122f5e Move restore messages out of durable job. 2025-06-24 08:49:31 -04:00
Greyson Parrelli
93161aa425 Only delete archived media from CDN 3. 2025-06-23 15:57:36 -04:00
Cody Henthorne
a181b35e8d Remove notification state cleanup based on displayed notifications. 2025-06-23 15:57:36 -04:00
jeffrey-signal
79de5f733f Prevent backup from being triggered while a restore is in progress. 2025-06-23 15:57:36 -04:00
Alex Hart
18f7a88d66 Add support filter after backup export failure. 2025-06-23 15:57:36 -04:00
jeffrey-signal
eeae9579d9 Fix progress bar stuck at 100% after successful backup restore. 2025-06-23 15:57:36 -04:00
jeffrey-signal
3b9dec5d42 Reset backup restore state after media restoration completes.
Fixes an issue where the SignalStore.backup.restoreState is never updated from RESTORING_MEDIA after completion of the media restoration.
2025-06-23 15:57:35 -04:00
andrew-signal
bbec0f5f48 Stop STOPPED typing indicator timers on message send. 2025-06-23 15:57:35 -04:00
Cody Henthorne
2723ea7975 Bump version to 7.46.1 2025-06-23 15:55:36 -04:00
Cody Henthorne
550ad7b56c Update baseline profile. 2025-06-23 15:47:24 -04:00
Cody Henthorne
3e4364ede7 Update translations and other static files. 2025-06-23 15:40:59 -04:00
Greyson Parrelli
abbcdbc6b9 Fix bug where network sink would sometimes be closed early. 2025-06-23 12:05:51 -04:00
Michelle Tang
c3ba07e5d7 Bump version to 7.46.0 2025-06-18 17:04:58 -04:00
Michelle Tang
1d239f7b56 Update translations and other static files. 2025-06-18 16:49:19 -04:00
Michelle Tang
f21edf7e3c Adjust iDEAL string. 2025-06-18 16:45:42 -04:00
Cody Henthorne
be45bdb562 Fix legacy restore options in new restore flows. 2025-06-18 16:45:42 -04:00
Michelle Tang
3ea2c01c15 Fix alignment in group title. 2025-06-18 16:45:42 -04:00
Michelle Tang
c75a6c9715 Sync backup tier to account record. 2025-06-18 16:45:42 -04:00
Alex Hart
fc1ed8934c Add custom 404 retry logic. 2025-06-18 16:45:42 -04:00
Cody Henthorne
5f603cd57a Improve message notification determination. 2025-06-18 16:45:42 -04:00
lisa-signal
b826352ce7 Add deprecation notification when build expires. 2025-06-18 16:45:42 -04:00
Greyson Parrelli
4f6a5de227 Refactor AttachmentCipherInputStream. 2025-06-18 16:45:41 -04:00
Cody Henthorne
9798f5cc7c Fix contact receive desugar crash on Android 6. 2025-06-18 16:45:41 -04:00
Miriam Zimmerman
5fd4ac0a06 Add logging to debug flipping from broken camera 2025-06-18 16:45:41 -04:00
Greyson Parrelli
ee0ee98cb6 Convert AttachmentCipherInputStream to kotlin. 2025-06-18 16:45:41 -04:00
Greyson Parrelli
2e79e257a3 Convert AttachmentCipherOutputStream to kotlin. 2025-06-17 16:26:20 -04:00
Greyson Parrelli
381c0e186f Move some cipher finalization into close() instead of flush(). 2025-06-17 16:26:20 -04:00
Michelle Tang
2c752ab5ba Avoid uploading onboarding story media during restore. 2025-06-17 16:26:20 -04:00
Alex Hart
b35b1db4bc Add wiring and notification for out of remote space error. 2025-06-17 16:26:20 -04:00
lisa-signal
fed6a0db5e Add enable contact permission banner when adding members to groups. 2025-06-17 16:26:20 -04:00
lisa-signal
e4d34c1cb6 Show verified safety number users in New Chat selection screen. 2025-06-17 16:26:20 -04:00
Greyson Parrelli
3571e22a79 Use different icon for 'fetching messages'.
Relates to #12904
2025-06-17 16:26:20 -04:00
Cody Henthorne
f051ec43d4 Update okhttp mockserver to 5.0.0-alpha.16 2025-06-17 16:26:20 -04:00
lisa-signal
f3857ed933 Prevent notification sound when voice recording. 2025-06-17 16:26:20 -04:00
lisa-signal
e7140a14a3 Show credit card input as LTR even for RTL languages. 2025-06-17 16:26:20 -04:00
Alex Hart
76e8695000 Convert AdvancedPinPreferencesFragment to compose. 2025-06-17 16:26:20 -04:00
lisa-signal
e62f14b6d3 Don't keep screen on for voice calls. 2025-06-17 16:26:20 -04:00
Alex Hart
c0dfe9bd53 Utilize ImageVector instead of Painter in SettingsScaffold. 2025-06-17 16:26:20 -04:00
Alex Hart
297c712c0f Change re-enable button color to Tonal. 2025-06-17 16:26:20 -04:00
lisa-signal
2f514622e0 Prevent trailing whitespace from being considered an edit. 2025-06-17 16:26:20 -04:00
Alex Hart
e6ea66f9c5 Add proper turn off backups string for paid tier. 2025-06-17 16:26:20 -04:00
Alex Hart
a5ff92b831 Add additional backup screen states. 2025-06-17 16:26:20 -04:00
Cody Henthorne
9bde632c6d Keep screen on and hold wake lock during important parts of backup restore. 2025-06-17 16:26:20 -04:00
Alex Hart
88f17e29aa Improve display of backup details when upload is in progress. 2025-06-17 16:26:19 -04:00
jeffrey-signal
eb620374e2 Fix resource leaks when uploading backup attachments. 2025-06-17 16:26:19 -04:00
Alex Hart
4a1baa75a8 Do not check if purchase was within last month. 2025-06-17 16:26:19 -04:00
jeffrey-signal
0ab77e159d Update notification message for large backup attachment uploads. 2025-06-17 16:26:19 -04:00
Alex Hart
a5496c692f Allow different accounts on same Google account to subscribe to backups. 2025-06-17 16:26:19 -04:00
Alex Hart
5c61832d82 Use now for watermarking. 2025-06-17 16:26:19 -04:00
Michelle Tang
f82b5eb72d Bump version to 7.45.3 2025-06-17 15:31:15 -04:00
Michelle Tang
f4d482c6ee Update translations and other static files. 2025-06-17 15:27:35 -04:00
Cody Henthorne
3c4f27f3f4 Fix profile fetch debounce bug when profile key changes. 2025-06-17 14:38:25 -04:00
Michelle Tang
01c106fd3e Bump version to 7.45.2 2025-06-16 12:53:57 -04:00
Michelle Tang
1e46c23cb9 Update translations and other static files. 2025-06-16 12:45:06 -04:00
Cody Henthorne
f245fc2b57 Force okhttp usage regardless of remote config. 2025-06-16 10:08:59 -04:00
Cody Henthorne
f9ea7be65f Bump version to 7.45.1 2025-06-13 15:30:10 -04:00
Cody Henthorne
96033c701b Update baseline profile. 2025-06-13 15:19:09 -04:00
Cody Henthorne
d42a276bc2 Update translations and other static files. 2025-06-13 15:14:11 -04:00
Cody Henthorne
5ff795b25d Bump to okhttp 5.0.0-alpha.16 2025-06-13 12:35:07 -04:00
Cody Henthorne
ca6a7baace Revert "Do not send app level keep-alives for unauth WebSocket."
This reverts commit 54a2628797.
2025-06-13 11:30:09 -04:00
Cody Henthorne
4df6f89fcf Fix potential crash in RemoteDeleteSendJob. 2025-06-12 10:54:18 -04:00
Greyson Parrelli
f4af90d3c5 Bump version to 7.45.0 2025-06-11 12:59:42 -04:00
Greyson Parrelli
09fd22d5c6 Update baseline profile. 2025-06-11 12:59:16 -04:00
Greyson Parrelli
e72c78be68 Update translations and other static files. 2025-06-11 12:49:13 -04:00
jeffrey-signal
cd18db613a Upload large backup attachments using a foreground service. 2025-06-11 12:02:23 -04:00
Greyson Parrelli
f8d8558cdb Convert AttachmentCipherTest to kotlin. 2025-06-11 11:58:40 -04:00
Michelle Tang
a46e1a451f Add foreign key reference to notification profile members. 2025-06-11 10:40:13 -04:00
Greyson Parrelli
f80d5d54ca Log inserted messageIds. 2025-06-10 16:51:57 -04:00
Cody Henthorne
2394972620 Add archive state indicator to media chat items. 2025-06-10 15:24:18 -04:00
Greyson Parrelli
536b599449 Remove deprecated PNI initialization job. 2025-06-10 14:35:48 -04:00
Alex Hart
9361acd72f Add check before setting downgrade flag. 2025-06-10 14:33:09 -03:00
Alex Hart
c4da61cd93 Add backup alert fragment tag to prevent concurrent opens. 2025-06-10 14:06:05 -03:00
Alex Hart
faa12bf377 Do not run subscription check if backups are disabled. 2025-06-10 13:51:50 -03:00
Alex Hart
8446c8d60f Show entire create backup sheet. 2025-06-10 13:44:33 -03:00
lisa-signal
844d511b72 Update edit message timestamp. 2025-06-10 12:14:42 -04:00
Cody Henthorne
178c468436 Prevent viewing backup key when unregistered. 2025-06-10 11:04:01 -04:00
Cody Henthorne
fa9229779e Fix copy for no backup key bottom sheet. 2025-06-10 10:53:30 -04:00
Cody Henthorne
38adb519e3 Improve speed/feedback of final steps of backup restore. 2025-06-10 10:32:45 -04:00
Alex Hart
37c3578329 Fix crash when accessing backup settings without being logged into Google. 2025-06-10 11:32:31 -03:00
Alex Hart
0c98439070 Add proper media ttl to restore screen. 2025-06-10 11:29:35 -03:00
Greyson Parrelli
5fe114c0eb Update archiveReconciliationSyncInterval to use global config. 2025-06-10 08:23:56 -04:00
Alex Hart
3588d646d2 Don't skip cancelled google purchase when checking subscription state in check job. 2025-06-09 20:21:06 -04:00
Alex Hart
dd5941b884 Add UX for out of remote storage space error presentation. 2025-06-09 20:21:06 -04:00
Alex Hart
1424dd6892 Add new dialog and sheet for handling offloaded media after a subscription is canceled or expires. 2025-06-09 20:21:06 -04:00
Cody Henthorne
18b5354944 Fix backup receipt crash. 2025-06-09 20:21:06 -04:00
Michelle Tang
bf4049d002 Fix lint. 2025-06-09 20:21:06 -04:00
Michelle Tang
59b747ee63 Add insufficient storage error message to link+sync. 2025-06-09 20:21:06 -04:00
Michelle Tang
e0726ce62f Fix missing profile avatars on restore. 2025-06-09 20:21:06 -04:00
Greyson Parrelli
828fa238c5 Update optimize media threshold to 7 days. 2025-06-09 20:21:06 -04:00
Greyson Parrelli
c8f389028e Ensure that we have the latest recipient copy after refreshing serviceIds.
Fixes #14163
2025-06-09 20:21:06 -04:00
lisa-signal
e2c32c1172 Fix multiselect to make in memory messages unselectable. 2025-06-09 20:21:06 -04:00
Michelle Tang
d20abec813 Update remove from group copy. 2025-06-09 20:21:06 -04:00
Greyson Parrelli
6edfcfdc4e Properly order attachment archive copies. 2025-06-09 20:21:06 -04:00
Greyson Parrelli
9860b990e5 Split archive deletes and reconciliations into separate jobs. 2025-06-09 20:21:06 -04:00
Greyson Parrelli
e7115a3a71 Switch the snapshot table to use incrementing versions. 2025-06-09 20:21:06 -04:00
lisa-signal
8c1e221afd Fix chat folder test. 2025-06-09 20:21:06 -04:00
lisa-signal
64ddc24720 Add test case for folder without chat. 2025-06-09 20:21:06 -04:00
Alex Hart
f9ee222d5d Add logging to check purchase information on RemoteBackupsSettings screen. 2025-06-09 20:21:06 -04:00
Alex Hart
23d8969015 Allow staging users to utilize internal backup switch. 2025-06-09 20:21:06 -04:00
Cody Henthorne
882a11c420 Calculate remote backup media quota usage locally. 2025-06-09 20:21:06 -04:00
Cody Henthorne
efa9dd6ec3 Fix path escaping issues.
Acknowledgment to Mouad & Ostorlab team for bringing this to our attention.
2025-06-09 20:21:06 -04:00
gram-signal
2767e298c4 API changes associated with update to libsignal 0.74.0 2025-06-09 20:21:06 -04:00
Michelle Tang
cc7b26d342 Fix read calls being shown as unread in backups. 2025-06-09 20:21:06 -04:00
jeffrey-signal
bf0c9ec1c7 Fix story reactions rendering improperly after restoring a backup. 2025-06-09 20:21:06 -04:00
Jim Gustafson
a9475ef153 Update to RingRTC v2.53.0 2025-06-09 20:21:05 -04:00
Michelle Tang
6b6980811b Use config to determine deletion lifespan in storage service. 2025-06-09 20:21:05 -04:00
Cody Henthorne
df2e88eaac Reset backup auth credentials on verification failure. 2025-06-09 20:21:05 -04:00
Alex Hart
297bca4c0f Fix archive export tests. 2025-06-09 20:21:05 -04:00
Alex Hart
b40c7d0e06 Add crossfade to action-mode toolbar. 2025-06-09 20:21:05 -04:00
Greyson Parrelli
9f54de8b39 Bump version to 7.44.2 2025-06-09 20:19:31 -04:00
Greyson Parrelli
976d3670c9 Update translations and other static files. 2025-06-09 20:19:00 -04:00
Greyson Parrelli
ef797f6ed8 Fix possible crash in story send. 2025-06-09 20:08:47 -04:00
Michelle Tang
59cc8c636d Ignore non-existing recipients in notification profiles storage sync. 2025-06-09 14:59:28 -04:00
Cody Henthorne
e147d4762d Bump version to 7.44.1 2025-06-06 13:57:51 -04:00
Cody Henthorne
d3b7219352 Update baseline profile. 2025-06-06 13:33:50 -04:00
Cody Henthorne
6abf55dc55 Update translations and other static files. 2025-06-06 13:29:01 -04:00
andrew-signal
7bd52e661d Refactor LibSignalChatConnection to use an explicit queue sendRequest handling while CONNECTING. 2025-06-06 08:14:20 -04:00
Cody Henthorne
89944d778b Bump version to 7.44.0 2025-06-04 15:42:03 -04:00
Cody Henthorne
357f82809a Update baseline profile. 2025-06-04 15:34:00 -04:00
Cody Henthorne
4222c70b4a Update translations and other static files. 2025-06-04 15:28:35 -04:00
lisa-signal
a66031cfce Fix chat folder to not show mute option if there isn't any chat. 2025-06-04 15:17:37 -04:00
Alex Hart
cf0dfdceb1 Display resume over cellular only if awaiting wifi. 2025-06-04 15:17:37 -04:00
Cody Henthorne
26b6019b28 Add internal backup stats tab. 2025-06-04 15:17:37 -04:00
Cody Henthorne
be4af1d560 Use dynamic quality and webp for archive thumbnail generation. 2025-06-04 15:17:37 -04:00
Michelle Tang
e3ee3d3dba Add notification profiles to storage service. 2025-06-04 15:17:37 -04:00
lisa-signal
07d961fc09 Fix cut off string in stories. 2025-06-04 15:17:37 -04:00
andrew-signal
7bcb3fa4d9 Make .tool-versions more specific. 2025-06-04 15:17:37 -04:00
Alex Hart
5e07e428c0 Fix instrumentation tests for message backups checkout flow. 2025-06-04 15:17:37 -04:00
Alex Hart
a85b8c49d9 Rework billing client integration. 2025-06-04 15:17:37 -04:00
Alex Hart
c3dcdd2010 Check network tier on export. 2025-06-04 15:17:37 -04:00
lisa-signal
74d9195d94 Fix action mode to use our own action mode toolbar instead of the built in androidx one. 2025-06-04 15:17:37 -04:00
lisa-signal
4db60ac63f Fix select all count in conversation list to be accurate. 2025-06-04 15:17:37 -04:00
jeffrey-signal
17bfb118d8 Update missing password manager dialog copy.
Updates the copy of the dialog that shows when attempting to save a backup key, but there is no credential manager configured on the device that supports saving passwords.
2025-06-04 15:17:37 -04:00
Alex Hart
d6dd2cc633 Polish backup type selection UI. 2025-06-04 15:17:37 -04:00
Alex Hart
dd2e219272 Add additional method tracing. 2025-06-04 15:17:37 -04:00
Alex Hart
88ec96bf2d Ensure connection status logs are kept for monitoring in debug logs. 2025-06-04 15:17:37 -04:00
Alex Hart
e17a4c80b2 Various UI polish items for backups. 2025-06-04 15:17:37 -04:00
Alex Hart
c0f3189a5b Add restore type check and download specific messaging. 2025-06-04 15:17:36 -04:00
Alex Hart
ac9f6c0b4a Fix spelling error. 2025-06-04 15:17:36 -04:00
Alex Hart
5903551cdb When we move to awaiting download state, display dialog. 2025-06-04 15:17:36 -04:00
Cody Henthorne
54a2628797 Do not send app level keep-alives for unauth WebSocket. 2025-06-04 15:17:36 -04:00
Cody Henthorne
0f2a066a30 Increase WebSocket idle delayed disconnect timings. 2025-06-04 15:17:36 -04:00
Alex Hart
2ff0df9ef6 Add skip dialog for during deletion. 2025-06-04 15:17:36 -04:00
Alex Hart
ad652dbaf2 Backup delete resub flow state fix. 2025-06-04 15:17:36 -04:00
lisa-signal
109d37c0d2 Fix audio duck due to MP4 gif. 2025-06-04 15:17:36 -04:00
jeffrey-signal
015fc9be2c Add ability to save remote backup key to device password manager.
Co-authored-by: Cody Henthorne <cody@signal.org>
2025-06-04 15:17:36 -04:00
Alex Hart
7616ec1fd2 Add rememberRecipientField composable function for reading live recipient fields. 2025-06-04 15:17:36 -04:00
Alex Hart
df170dac32 Polish deletion UX. 2025-06-04 15:17:36 -04:00
andrew-signal
ccce37d023 Bump to libsignal v0.73.2; revert ProGuard workaround. 2025-06-04 15:17:36 -04:00
Cody Henthorne
13ddd067ef Update to latest backup protos; Bump to libsignal v0.73.1 2025-06-04 15:17:36 -04:00
Miriam Zimmerman
340b94f849 Improve handling of missing camera during calls. 2025-06-04 15:17:36 -04:00
Greyson Parrelli
faf0b630c1 Move profile fetches to ProfileApi. 2025-06-04 15:17:36 -04:00
Cody Henthorne
b2f1867787 Exclude remote megaphones from local backups. 2025-06-04 15:17:36 -04:00
Greyson Parrelli
3bd4e39093 Add more backup cancellation checks. 2025-06-04 15:17:36 -04:00
Alex Hart
98e06081af Fix advanced pin settings routing. 2025-06-04 15:17:36 -04:00
Alex Hart
0d51faf618 Fix rendering after rotation. 2025-06-04 15:17:36 -04:00
Cody Henthorne
21e53e360e Remove Media tab from backup playground. 2025-06-04 15:17:36 -04:00
andrew-signal
9083359b33 Silence noisy double stack trace when a LibSignalChatConnection connect() is canceled. 2025-05-29 11:57:30 -04:00
Cody Henthorne
7b30ac1524 Fix various archive related attachment bugs.
Co-authored-by: Greyson Parrelli <greyson@signal.org>
2025-05-29 11:34:09 -04:00
andrew-signal
4b41d7afaa Only fetch profiles if we haven't fetched them in the last five minutes. 2025-05-29 11:00:15 -04:00
Alex Hart
38a9452de0 Cache product pricing for 24hrs. 2025-05-29 11:10:23 -03:00
Alex Hart
1bd638be46 Allow badge to update in toolbar when user changes their featured badge. 2025-05-28 16:26:39 -03:00
Cody Henthorne
e912bf3bc8 Attempt to fix reproducible build issue caused by EditProxyFragment. 2025-05-28 14:52:25 -04:00
Greyson Parrelli
13d7bc54d3 Re-run the e164 formatting application migration. 2025-05-28 13:33:58 -04:00
Greyson Parrelli
5bdf10b1bd Fix crash in storage sync validation. 2025-05-28 12:26:16 -04:00
Alex Hart
6a40f4a4f4 Perform backup deletion in a durable job. 2025-05-28 13:07:09 -03:00
lisa-signal
8900721064 Fix scheduled message logo from Signal logo to Calendar logo. 2025-05-28 09:59:53 -04:00
lisa-signal
7738e6bc9a Fix backtrack symbol to change from ic_arrow_left_24 to symbol_arrow_start_24. 2025-05-28 09:39:12 -04:00
Alex Hart
7c7833263a Fix possible crash in conversation activity. 2025-05-27 14:33:47 -03:00
Alex Hart
96d6a0e68d Launch checkout flow on renew press. 2025-05-27 13:20:08 -03:00
Greyson Parrelli
7c04b56a32 Fix validation errors around bad e164s in SSE's and merge events. 2025-05-27 10:29:13 -04:00
Jim Gustafson
5009e86d56 Update to RingRTC v2.52.3 2025-05-27 10:03:11 -04:00
Alex Hart
daa3e5d95a Convert InternalConversationSettings to compose. 2025-05-27 10:48:34 -03:00
Michelle Tang
6879778f4b Fix missing avatars in notifications. 2025-05-22 14:32:11 -04:00
Jeffrey Starke
de12691cfe Add new sticker pack preview screen.
Adds a new jetpack compose and kotlin implementation of the sticker pack preview screen, which will soon replace `StickerPackPreviewActivity.java` and `StickerPackPreviewViewModel.java`.
2025-05-22 11:23:23 -04:00
lisa-signal
dce883bcf5 Fix clear filter position. 2025-05-22 11:23:23 -04:00
Michelle Tang
be02c1bc0a Update editorconfig with new ktlint rules. 2025-05-22 11:23:23 -04:00
Cody Henthorne
52c7a9a214 Add copy media backup id to backup playground. 2025-05-22 11:23:23 -04:00
Alex Bakon
ea0b8fc594 Remove unused code. 2025-05-22 11:23:23 -04:00
Jeffrey Starke
15aa941436 Limit delete archived media requests to 1000 items at a time.
Fixes an error that occurs when attempting to delete all archived media caused by exceeding the API's 1000 item limit.
2025-05-22 11:23:23 -04:00
Alex Hart
8e92ddbd53 Fix skipping subsequent call links. 2025-05-21 15:49:20 -04:00
Michelle Tang
23669c3c37 Bump version to 7.43.1 2025-05-21 15:20:18 -04:00
Michelle Tang
ea970c1936 Update translations and other static files. 2025-05-21 15:17:26 -04:00
Cody Henthorne
52ffe4408d Fix NoSuchMethodError on CompletableFuture crash. 2025-05-21 15:14:03 -04:00
Michelle Tang
b753990ee3 Bump version to 7.43.0 2025-05-21 12:20:12 -04:00
Michelle Tang
9642e19d53 Update translations and other static files. 2025-05-21 12:02:05 -04:00
Michelle Tang
7dc4cb4ce7 Ensure default chat folder exists. 2025-05-21 11:33:13 -04:00
andrew-signal
4f6bedf323 Rotate key for libsignalWebSocket RemoteConfig. 2025-05-21 11:28:08 -04:00
Cody Henthorne
ca16d0e6f8 Fix decryption errors post remote restore. 2025-05-21 09:24:33 -04:00
Cody Henthorne
690b171d57 Default remote backups to daily. 2025-05-21 08:58:17 -04:00
Alex Bakon
2254b7f680 Remove unused CdsiSocket class. 2025-05-21 07:49:04 -04:00
andrew-signal
a6540880c9 Cancel chatConnectionFuture when we get disconnect() while CONNECTING. 2025-05-21 07:43:18 -04:00
andrew-signal
e7e59d9481 Bump to libsignal v0.73.0 2025-05-21 07:41:02 -04:00
lisa-signal
b5b71c6464 Fix ability to remove link preview without changing message text. 2025-05-20 15:47:07 -04:00
lisa-signal
437a1755ce Fixed color of Get started text. 2025-05-20 15:33:19 -04:00
Cody Henthorne
14dbaa7d05 Prevent safety number changes during quick restore flow. 2025-05-20 15:14:29 -04:00
Alex Hart
58e462de06 Fix scrolling highlight on backups checkout page. 2025-05-20 16:10:43 -03:00
Alex Hart
b6b6f7a527 Allow free tier subscription if Google Play Billing is not available. 2025-05-20 16:09:43 -03:00
Alex Hart
09e47dba3a Add support for cancelling an in-progress archive upload.
Co-authored-by: Jeffrey Starke <jeffrey@signal.org>
2025-05-20 15:46:24 -03:00
Cody Henthorne
3751052697 Force new auth WebSocket during various IMO recovery flows. 2025-05-20 14:42:54 -04:00
Cody Henthorne
da639d086f Attempt to fix duplicate e164s due to short codes. 2025-05-19 14:45:34 -04:00
Sagar
59a9a38c1f Fix country code filtering by removing "+" prefix handling.
Closes #14137
2025-05-19 14:45:34 -04:00
Alex Hart
dd634343d7 Change button size on backups management screen. 2025-05-19 14:45:34 -04:00
Alex Hart
7ee1b1386b Backups ui polish. 2025-05-19 14:45:34 -04:00
Alex Hart
0e4c09224c Ensure all billing states are emitted. 2025-05-19 14:45:34 -04:00
Alex Hart
fc5aae34f3 Add cancellation support and renew support for canceled subscriptions. 2025-05-19 14:45:34 -04:00
Alex Hart
1aa2c85edd Fix alignment of progress spinner when waiting for network.: 2025-05-19 14:45:34 -04:00
Alex Hart
a6bfeebb24 Add UI for when the user's grace period expires or while they are in the grace period. 2025-05-19 14:45:34 -04:00
Alex Bakon
5e9824a180 Update test client prekey usage to include kyber keys. 2025-05-19 14:45:34 -04:00
Cody Henthorne
3644466263 Bump version to 7.42.2 2025-05-19 14:44:07 -04:00
Cody Henthorne
e9b43e7c25 Update baseline profile. 2025-05-19 14:43:05 -04:00
Cody Henthorne
e9e53d6d84 Update translations and other static files. 2025-05-19 14:38:15 -04:00
Cody Henthorne
03f2feb335 Fix megaphone missing asset crash. 2025-05-19 14:31:48 -04:00
Cody Henthorne
3b657ea7bd Bump version to 7.42.1 2025-05-16 13:32:56 -04:00
Cody Henthorne
2635ffcbc9 Update baseline profile. 2025-05-16 13:29:24 -04:00
Cody Henthorne
927c079cc4 Update translations and other static files. 2025-05-16 13:23:44 -04:00
Cody Henthorne
a2f7afcb68 Detect and recycle WebSockets stuck in connecting state. 2025-05-16 13:13:32 -04:00
Alex Hart
b6c033b075 Fix timer updating on chats list. 2025-05-15 13:52:18 -03:00
Jeffrey Starke
31d0b81624 Sticker Management v2 - Exit multi select mode after all items are deselected.
To match the behavior of the conversations and messages screens.
2025-05-15 11:08:08 -04:00
Cody Henthorne
96ece3f424 Allow REST fallback via remote config. 2025-05-15 10:52:36 -04:00
Alex Hart
2bc9926d97 Fix crash when backing out of archive. 2025-05-15 11:40:00 -03:00
Alex Hart
f1537cb8a9 Fix rationale dialog height on small devices. 2025-05-15 11:30:23 -03:00
andrew-signal
af8dee9c38 Bump to libsignal v0.71.1 2025-05-15 10:28:45 -04:00
Cody Henthorne
39f78273c0 Async start network and message retrieval. 2025-05-15 09:22:46 -04:00
Michelle Tang
d66a0f618d Bump version to 7.42.0 2025-05-14 17:35:09 -04:00
Michelle Tang
497a8188fd Update translations and other static files. 2025-05-14 17:20:57 -04:00
Jeffrey Starke
f3a475d0c8 Sticker management v2 – Improve list animations and state transitions.
- Uninstall selected packs in a single database transaction to avoid UI flickering.
- Add section header keys to prevent them from animating wildly while scrolling.
2025-05-14 17:10:41 -04:00
Michelle Tang
8b828677de Rotate libsignal net config flag. 2025-05-14 16:43:17 -04:00
Alex Hart
a050b37f3a Remove bank selection from iDEAL. 2025-05-14 16:43:17 -04:00
Doug Melton
c865ed0cdc Improve handling of 12/24 hour timestamps on configuration change.
This fixes an edge case seen on ConversationFragment, where if the
device time format is switched between 12/24 hour format while the app
is running, the old time format will still be displayed when the app
is resumed.

This is due to a design flaw in `DateTimeFormatter.ofLocalizedTime`,
where the time format is statically cached and not updated upon
configuration change. The `LocalTime.formatHours()` extension method
was updated to no longer rely on the misbehaving `ofLocalTime` method.

In addition, `ConversationMessaageComputeWorkers.recomputeFormattedDate`
was designed to skip recomputing non-relative timestamps. This works
in most cases but not this specific edge case. A `force: Boolean` flag
was added to force all items to be updated. And the `force = true` flag
was passed upon `onResume` of the fragment.

Closes #14121
2025-05-14 16:43:17 -04:00
Alex Hart
918b792d83 Fix filter display when returning to conversation list from another tab. 2025-05-14 16:43:17 -04:00
Alex Hart
28ecb37103 Add additional logging for stopped processing. 2025-05-14 16:43:17 -04:00
Alex Hart
7c43462771 Disconnect groupCall object when network is unavailable. 2025-05-14 16:43:17 -04:00
Cody Henthorne
7e00739240 Remove MMS related encryption error messaging. 2025-05-14 16:43:17 -04:00
Cody Henthorne
feae417af5 Flag username for restore on re-register. 2025-05-14 16:43:17 -04:00
Michelle Tang
e5d55418ac Restore chat colors after backup. 2025-05-14 16:43:17 -04:00
Cody Henthorne
5d8e0e370d Fix pnp settings not properly syncing or dynamically updating. 2025-05-14 16:43:17 -04:00
Michelle Tang
e2bffd0fd3 Fix mentions being displayed as obj. 2025-05-14 16:43:17 -04:00
Alex Hart
8d2979d8ce Fix camera rotation / phone orientation syncing. 2025-05-14 16:43:17 -04:00
Jeffrey Starke
288eda5bb1 Add support for animated images to GlideImage.
Our GlideImage implementation doesn't support animated images, because it loads them as bitmaps and therefore only displays the first image frame as a static image. This change works around that issue by having GlideImage wrap an ImageView to handle cases where we need to display animated images.
2025-05-14 16:43:17 -04:00
Cody Henthorne
fb111619d7 Downgrade notify of key warning to info. 2025-05-14 16:43:17 -04:00
Alex Hart
fb68f3fed1 Work around off-by-one error causing thin line to display when it shouldn't. 2025-05-14 16:43:17 -04:00
Alex Hart
791f1677fa Update RecyclerView to 1.4.0 2025-05-14 16:43:17 -04:00
Alex Hart
632b76081a Fix tab scroll-to-top on click. 2025-05-14 16:43:16 -04:00
Alex Hart
a474666ea7 Hide create call link button while in multiselect mode. 2025-05-14 16:43:16 -04:00
Greyson Parrelli
b3c9ec9691 Migrate to new SVR2 enclave.
Co-authored-by: Cody Henthorne <cody@signal.org>
2025-05-14 16:43:16 -04:00
Cody Henthorne
778db277c8 Update retrieve profile job. 2025-05-14 16:43:16 -04:00
Michelle Tang
1800507604 Add beta label to backups. 2025-05-14 16:43:16 -04:00
Alex Hart
b0aee1db05 Add proper title to expiration sheet. 2025-05-14 16:43:16 -04:00
Alex Hart
919cbbd7ca Use dispatch queue and join to ensure single-threaded requests. 2025-05-14 16:43:16 -04:00
Cody Henthorne
93403a0d2c Implement stop/resume media restore and update restore over cellular. 2025-05-14 16:43:16 -04:00
Jeffrey Starke
9867fa3f50 Add round checkbox composable.
Adds `RoundCheckbox` composable, which is styled to match the appearance of the other view checkboxes used in the app.
2025-05-14 16:43:16 -04:00
Michelle Tang
b79ec79644 Fix backups not being scheduled. 2025-05-14 16:43:16 -04:00
Cody Henthorne
961e9fd4b9 Fix shortcut update job crash for old installs without an aci. 2025-05-14 16:43:16 -04:00
Alex Hart
6d04c8ba42 Remove MainListHostFragment and rescope list vms to the activity. 2025-05-14 16:43:16 -04:00
andrew-signal
bc94a92f68 Remove pendingResponses; libsignal-net now completes futures with disconnectReason. 2025-05-14 16:43:16 -04:00
andrew-signal
9b9888565b Bump to libsignal v0.71.0. 2025-05-14 16:43:16 -04:00
Alex Hart
a2a3dd28ee Remove activity override in favour of alias down the road. 2025-05-14 16:43:16 -04:00
Jeffrey Starke
844dec06b1 Delete old/unused sticker management v1 code.
Deletes the old code related to sticker management v1 and removes the v2 prefix from the new classes.
2025-05-14 16:43:16 -04:00
Sagar
5306a9dd7a Fix system emoji not showing in video call reactions. 2025-05-14 16:43:16 -04:00
Sagar
cdd595432b Update header on recipient change. 2025-05-14 16:43:00 -04:00
Alex Hart
fabec719ab Prevent multiple activity instances and fix strange launch behavior. 2025-05-06 17:58:48 -04:00
Jeffrey Starke
04c14a82be Sticker management v2 - Implement remaining functionality.
- Fix bottom action bar shadow clipping during visibility animations.
- Show snackbar after installing/uninstalling sticker packs.
- Navigate to sticker preview on row click.
- Add top app bar menu to enable multi-select mode.
- Start StickerManagementActivityV2 instead of the old StickerManagementActivity
2025-05-06 17:58:48 -04:00
Sagar
51851fa5fe Fix crash for leave gv1. 2025-05-06 17:58:48 -04:00
Jeffrey Starke
3c77a3d7aa Sticker management v2 - Implement multi-delete. 2025-05-06 17:58:48 -04:00
andrew-signal
7c9bab421a Pass down RemoteConfig for TLS minimum version enforcement to libsignal. 2025-05-06 17:58:48 -04:00
Michelle Tang
9d1960f065 Clear aep from clipboard after 60 seconds. 2025-05-06 17:58:48 -04:00
Sagar
ae4c0d1242 Add paging for getArchivedRecipients. 2025-05-06 17:58:48 -04:00
Alex Hart
df3396633b Add nav spacing to action bar in compact mode. 2025-05-06 17:58:48 -04:00
Michelle Tang
9aea264305 Fix backup dialog color. 2025-05-06 17:58:48 -04:00
Michelle Tang
866c232045 Convert InviteActivity to a fragment. 2025-05-06 17:58:48 -04:00
Alex Hart
524ffd9d79 Save search query to savedinstancestate. 2025-05-06 17:58:48 -04:00
Alex Hart
46ca979e59 Fix navigation bar offset. 2025-05-06 17:58:48 -04:00
Jeffrey Starke
c8bfc88bed Sticker management v2 - Implement multi-select. 2025-05-06 17:58:48 -04:00
Sagar
030678b029 Fix UI update on non-UI thread exception. 2025-05-06 17:58:48 -04:00
Sagar
e4b99e5cef Reapply query after contact refresh. 2025-05-06 17:58:48 -04:00
andrew-signal
367c0d0a8d Rotate libsignal-net trial RemoteConfig. 2025-05-06 17:58:48 -04:00
Sagar
6dfe3b9c33 Fix color resource linking in SignalSymbols. 2025-05-06 17:58:48 -04:00
Michelle Tang
3aa4e75ef3 Remove wrapped fragments from settings. 2025-05-06 17:58:48 -04:00
Jim Gustafson
570a475229 Add new remote config support for calling audio configuration. 2025-05-06 17:58:48 -04:00
Cody Henthorne
2421bbdabb Fix invalid constraint handling sql when calling update. 2025-05-06 17:58:48 -04:00
Sagar
39756fd0d4 Avoid recording empty voice messages during an ongoing call. 2025-05-06 17:58:48 -04:00
Sagar
7a69c96746 Add accessibility label on buttons. 2025-05-06 17:58:48 -04:00
Sagar
f0acc39829 Hide camera toggle button in PIP mode. 2025-05-06 17:58:48 -04:00
Sagar
a27daddb70 Fix media player incorrect state when switching videos in album. 2025-05-06 17:58:48 -04:00
Jeffrey Starke
fd47d28026 Sticker management v2 - Implement context menus.
Adds the context menus that appear when long pressing available or installed sticker pack list items.
2025-05-06 17:58:48 -04:00
Jeffrey Starke
fe853f7b65 Add missing long press haptic feedback to composables.
As recommended by https://developer.android.com/develop/ui/compose/touch-input/pointer-input/tap-and-press

> As a best practice, you should include haptic feedback when the user long-presses elements.
2025-05-06 17:58:48 -04:00
Cody Henthorne
c89fbbe49f Fix unread count asserts in read sync tests. 2025-05-06 17:58:48 -04:00
Cody Henthorne
5453f101ff Fix BackupRestoreMediaJob not correctly paging through attachments. 2025-05-06 17:58:48 -04:00
Cody Henthorne
87cbe305f0 Support accounts without pins in AEP restore flows. 2025-05-06 17:58:48 -04:00
Jeffrey Starke
b298cb6f89 Prevent sending sticker attachments with a blank contentType. 2025-05-06 17:58:48 -04:00
Sagar
65e1ffaed4 Do not play a media item if it was deleted. 2025-05-06 17:58:47 -04:00
Sagar
43b5cb0641 Fix crash when leaving group. 2025-05-06 17:58:47 -04:00
Greyson Parrelli
f73d929feb Add additional CDN reconciliations to BackupMediaSnapshotSyncJob.
Co-authored-by: Cody Henthorne <cody@signal.org>
2025-05-06 17:58:47 -04:00
andrew-signal
85647f1258 Bump to libsignal v0.70.1 2025-05-06 17:58:47 -04:00
Sagar
9164668b8b Duck and recover external audio on video play. 2025-05-06 17:58:47 -04:00
Sagar
76aaf22429 Duck and recover external audio on voice note play. 2025-05-06 17:58:47 -04:00
Miriam Zimmerman
3d7162cdd3 Implement remote mute receive; Update to RingRTC v2.52.0
Co-authored-by: Alex Hart <alex@signal.org>
Co-authored-by: Cody Henthorne <cody@signal.org>
2025-05-06 17:58:47 -04:00
Alex Hart
ed9a945f05 Fix issue where a test user could have a tier but no subscriber. 2025-05-06 17:58:47 -04:00
Cody Henthorne
f8d7c27583 Bump version to 7.41.3 2025-05-06 17:58:08 -04:00
Cody Henthorne
4e1072b8da Update baseline profile. 2025-05-06 16:53:06 -04:00
Cody Henthorne
057715226f Update translations and other static files. 2025-05-06 16:48:07 -04:00
Cody Henthorne
0f8fdda884 Revert "Remove message send REST fallback."
This reverts commit 7bdfec77ca.
2025-05-06 16:39:43 -04:00
Michelle Tang
393b88fb1f Bump version to 7.41.2 2025-04-30 15:55:00 -04:00
Michelle Tang
639c3ef883 Update translations and other static files. 2025-04-30 15:44:25 -04:00
Sagar
ad4142db1a Fix class cast crash for banners. 2025-04-30 15:38:41 -04:00
Cody Henthorne
5182987735 Fix cds crash by translating libsignal-net CDS protocol exception to IOException. 2025-04-30 15:37:47 -04:00
Michelle Tang
7f5bfc210b Fix story text previews. 2025-04-30 15:25:14 -04:00
Michelle Tang
daf87915d6 Bump version to 7.41.1 2025-04-28 16:49:36 -04:00
Michelle Tang
06996540cd Update translations and other static files. 2025-04-28 16:43:54 -04:00
andrew-signal
58ad3c746a Don't call single.onError with IOException in LibSignalChatConnection::sendRequest. 2025-04-28 12:46:52 -06:00
Sagar
a7ebe41570 Fix MediaSelectionViewModel crash. 2025-04-28 19:30:58 +05:30
Michelle Tang
b6cc702107 Add more logging for chat folders during storage sync. 2025-04-25 16:11:21 -04:00
Greyson Parrelli
9163c0ca4d Improve envelope timestamp validation. 2025-04-24 16:45:26 -04:00
Cody Henthorne
18290c1301 Bump version to 7.41.0 2025-04-24 16:15:11 -04:00
Cody Henthorne
347abe14ae Update baseline profile. 2025-04-24 16:09:51 -04:00
Cody Henthorne
eba55755ff Update translations and other static files. 2025-04-24 16:04:38 -04:00
Michelle Tang
7043558657 Add fixes for streamable videos. 2025-04-24 15:55:40 -04:00
Alex Hart
3aefd3bdc6 Prevent search state from clearing if user did not send a message. 2025-04-24 15:55:40 -04:00
Sagar
d6eb675fd0 Trim text before performing username search. 2025-04-24 15:55:40 -04:00
Alex Hart
ae90b2ecd9 Add support for conversation intent routing to MainActivity. 2025-04-24 15:55:39 -04:00
Jeffrey Starke
9d593bcaff Fix chat folders flickering during drag and drop.
Fixes the UI flickering that occurs when reordering chat folders. The issue was caused by the ViewModel updating the database each time a list item position changes when we were already updating list order in the UI state manually at the same time.
2025-04-24 15:55:39 -04:00
Jeffrey Starke
62ed823e42 Sticker management v2 - Implement drag and drop.
Adds the ability to use drag and drop to rearrange installed sticker packs.
2025-04-24 15:55:39 -04:00
Cody Henthorne
a53479e50d Do not process messages while pending restore decision. 2025-04-24 15:55:39 -04:00
Cody Henthorne
91140c41fd Revert "Depend on libsignal-net's connection backoff instead of duplicating at app-level."
This reverts commit 1aed82d5b7.
2025-04-24 15:55:39 -04:00
Cody Henthorne
68f567b0b7 Fix a few random crashes when using libsignal-net. 2025-04-24 15:55:39 -04:00
Cody Henthorne
501e169210 Make e164 formatter more leinent with + prefix. 2025-04-24 15:55:39 -04:00
Greyson Parrelli
09b818b048 Limit work that happens in LiveRecipientCache lock. 2025-04-24 15:55:39 -04:00
Sagar
7b3897cac6 Fix incorrect span indices for normalised search text. 2025-04-24 15:55:39 -04:00
Alex Hart
64239962fc Implement activated state for conversation list items. 2025-04-24 15:55:39 -04:00
Alex Hart
dac3a332d7 Remove main-thread usage of Recipient.self. 2025-04-24 15:55:39 -04:00
Sagar
83bbcd0618 Avoid message click listeners in Scheduled messages sheet. 2025-04-24 15:55:39 -04:00
andrew-signal
c7c0374c11 Add remote config for libsignal-net rollout. 2025-04-24 15:55:39 -04:00
Sagar
847f3bf08c Pause and play video correctly on TimeBar scrub drag. 2025-04-24 15:55:39 -04:00
Cody Henthorne
d02c610237 Fix unreads for new unread count scheme. 2025-04-24 15:55:39 -04:00
Cody Henthorne
8007045ca8 Convert change number back to WebSocket. 2025-04-24 15:55:39 -04:00
Sagar
901b4b469d Show correct time for Story view item. 2025-04-24 15:55:39 -04:00
Sagar
fa50696815 Ensure story viewed list in proper alphabetical order. 2025-04-24 15:55:39 -04:00
Alex Hart
be035456f7 Ensures chat folder is remembered when we leave page. 2025-04-24 15:55:39 -04:00
Sagar
252a4afa79 Update banner message for debug log. 2025-04-24 15:55:39 -04:00
Sagar
f5f56536bc Fix unread count for edited messages.
Co-authored-by: Cody Henthorne <cody@signal.org>
2025-04-24 15:55:39 -04:00
Michelle Tang
9e89d688f1 Send error message after cancelling a link+sync. 2025-04-24 15:55:39 -04:00
Sagar
2bb94089f7 Move to quoted message on quote preview click. 2025-04-24 15:55:39 -04:00
Jeffrey Starke
3fc386d4a3 Add StickerPackId and StickerPackKey value classes. 2025-04-24 15:55:39 -04:00
Sagar
3779dfd290 Open keyboard for a Draft message. 2025-04-24 15:55:39 -04:00
Jeffrey Starke
a5f766a333 Sticker management v2 - Implement sticker pack installation.
Adds the ability to install sticker packs using `StickerManagementActivityV2`.

When the install button is clicked, it will morph into an indeterminate progress bar, which will then animate into a checkmark once the installation completes successfully. Then a couple seconds later, the sticker pack row will be removed from the available sticker packs list.
2025-04-24 15:55:39 -04:00
Sagar
9f40bfc645 Replace glyphs in group update messages. 2025-04-24 15:55:39 -04:00
Greyson Parrelli
919f03522a Upgrade to mobilecoin to 6.1.2 for 16kb alignment. 2025-04-24 15:55:39 -04:00
Cody Henthorne
8aa6d0bbca Include AEP in link device provisioning message. 2025-04-24 15:55:39 -04:00
Cody Henthorne
4304ae2a96 Add notification profile id for backupsv2. 2025-04-24 15:55:39 -04:00
Sagar
b4a9189068 Add close icon in search toolbar. 2025-04-24 15:55:39 -04:00
Greyson Parrelli
ec6448bd1b Address possible invalid e164's in storage service splits. 2025-04-24 15:55:39 -04:00
Greyson Parrelli
8c5811581e Add additional logging around storage batch sizes. 2025-04-24 15:55:39 -04:00
Greyson Parrelli
4b4d3d33b1 Add additional safeguards around storage sync types. 2025-04-24 15:55:39 -04:00
Jeffrey Starke
dd6c39f7eb Update TransferProgressIndicator to support indeterminate progress.
Showing exact progress for sticker pack downloads is more complicated than necessary. This PR updates `TransferProgressIndicator` to support displaying indeterminate progress.

#### Changeset
- Display indeterminate progress when installing a sticker pack.
- Remove cancel button from `AvailableStickerPackRow`.
- Decrease progress indicator size to match updated design.
2025-04-24 15:55:39 -04:00
Sagar
b246e62504 Avoid setting blank folder name. 2025-04-24 15:55:39 -04:00
Sagar
ba08399d35 Add accessibility labels for MainToolbar. 2025-04-24 15:55:39 -04:00
Sagar
3f1bb7eac7 Improve choose chats save button enabled state. 2025-04-24 15:55:39 -04:00
Greyson Parrelli
a2a10fb0c1 Filter out bad E164s from GV1 groups. 2025-04-24 15:55:39 -04:00
Greyson Parrelli
e45eabc714 Convert avatar migration to just be a force push. 2025-04-24 15:55:39 -04:00
Alex Hart
138dae0484 Align pin reminder skip behavior with iOS. 2025-04-24 15:55:39 -04:00
Alex Hart
893725e304 Dynamic split pane support via internal setting. 2025-04-24 15:55:39 -04:00
Jeffrey Starke
2cfe321274 Convert StickerManagementRepository to kotlin.
Converts `StickerManagementRepository` to kotlin, so `getStickerPacks()` can return a `Flow` that emits updates after the database is changed.

This change simplifies the implementation of `StickerManagmentViewModelV2`, since `StickerManagementRepository.getStickerPacks()` will now automatically register and unregister the database observer.
2025-04-24 15:55:39 -04:00
Sagar
050dcb3eb1 Show correct message for empty archived screen. 2025-04-24 15:55:39 -04:00
Alex Hart
6ce01c6b0e Return an empty list instead of crashing when calling participantAcis. 2025-04-24 15:55:39 -04:00
Sagar
d2f44fee87 Avoid opening Media preview for not sent media. 2025-04-24 15:55:39 -04:00
Sagar
1228da8665 Fix transfer controls logic for checking isUpload. 2025-04-24 15:55:39 -04:00
Sagar
479632d6a8 Fix message info screen updates. 2025-04-24 15:55:39 -04:00
Greyson Parrelli
619d2997f6 Add additional local metrics around storage service writes/reads. 2025-04-24 15:55:39 -04:00
Alex Hart
c5e795b176 Wire up nav rail fabs and fix animation playing on leaving a tab. 2025-04-24 15:55:39 -04:00
andrew-signal
8b7b184224 Tweak Network.transformAndSetRemoteConfig to match changes to libsignal's RemoteConfig spec. 2025-04-24 15:55:39 -04:00
Jeffrey Starke
48d26beb77 Add TransferProgressIndicator composable.
Adds a composable version of `TransferProgressView`.
2025-04-24 15:55:39 -04:00
Jeffrey Starke
3d1895500c Sticker management v2 - Display available and installed stickers. 2025-04-24 15:55:39 -04:00
Alex Hart
e442c27555 Separate sheet that requires payment flow. 2025-04-24 15:55:39 -04:00
Alex Hart
c3d61bece1 Add MainContentLayoutData object and proper scaffolding directive. 2025-04-24 15:55:39 -04:00
Alex Hart
49853b2cca Move background color selection into theme. 2025-04-24 15:55:39 -04:00
Sagar
cd838c4bee Fix Video call screen bottom sheet weird animation and height. 2025-04-24 15:55:39 -04:00
Greyson Parrelli
2e50699a2d Make system keyboard sticker detection more reliable. 2025-04-24 15:55:39 -04:00
Michelle Tang
fe97c969ae Ensure keystore operations happen on the same thread. 2025-04-24 15:55:39 -04:00
Alex Hart
c70a8d48a8 Hide keyboard when navigating back to chat list via toolbar. 2025-04-24 15:55:39 -04:00
Alex Hart
322ea97377 Add logging to BackupsSettingsViewModel to help track down data loading race. 2025-04-24 15:55:39 -04:00
Sagar
e3a402394f Avoid message failed notification when bubble thread is visible. 2025-04-24 15:55:39 -04:00
Sagar
16b4b3b6b7 Fix SearchView loosing focus. 2025-04-24 15:55:39 -04:00
Jim Gustafson
cd98ccbf00 Update to RingRTC v2.50.6 2025-04-24 15:55:39 -04:00
Sagar
eecb18b436 Add correct dialog message while blocking group. 2025-04-24 15:55:39 -04:00
Sagar
d13a803dcd Fix resend button visibility logic. 2025-04-24 15:55:39 -04:00
Alex Hart
bd03f21cdf Allow specification of whether we utilize windowTypes to lay out inset guidelines. 2025-04-24 15:55:39 -04:00
Alex Hart
b46d891183 Dialog color fixes. 2025-04-24 15:55:38 -04:00
Alex Hart
54191433e0 Remove ConversationTabs* and migrate to MainActivity. 2025-04-24 15:55:38 -04:00
Sagar
462fcdce16 Add glyph icons and SignalSymbol methods. 2025-04-24 15:55:38 -04:00
Greyson Parrelli
f68bb2dc88 Add storage service optimization to avoid manifest reads. 2025-04-24 15:55:38 -04:00
andrew-signal
fe70637140 Bump to libsignal v0.70.0 2025-04-24 15:55:38 -04:00
Greyson Parrelli
1028d293a0 Temporarily remove bad assertion in MessageBackupsFlowViewModel. 2025-04-24 15:55:38 -04:00
andrew-signal
74c6e76808 Add system HTTP proxy support to libsignal-net.
Co-authored-by: Cody Henthorne <cody@signal.org>
2025-04-24 15:55:38 -04:00
Greyson Parrelli
8e880fe117 Fix another syncing crash when no archived media exists. 2025-04-24 15:55:38 -04:00
Greyson Parrelli
6525662071 Fix syncing crash when no archived media exists. 2025-04-24 15:55:38 -04:00
Alex Hart
94d07f7012 Decouple InlineQueryViewModelV2 instance from activity, parent to fragment instead. 2025-04-24 15:55:38 -04:00
Sagar
e3297ab593 Add accessibility labels for GIF categories and correct emoji labels. 2025-04-24 15:55:38 -04:00
Sagar
3ff7f89ef6 Support hiding image caption with press and hold. 2025-04-24 15:55:38 -04:00
Sagar
ac1165c8fd Avoid blocking yourself. 2025-04-24 15:55:38 -04:00
Sagar
69153cf339 Support drag multi-selection for media gallery. 2025-04-16 11:22:23 -03:00
Sagar
852541c361 Avoid setting blank custom story name. 2025-04-16 11:22:23 -03:00
Sagar
399a613c25 Avoid sending blank story. 2025-04-16 11:22:23 -03:00
Sagar
003c1082a9 Avoid setting blank group names. 2025-04-16 11:22:23 -03:00
Jeffrey Starke
885588db86 Create new sticker management screen with tabbed interface.
Adds a skeleton implementation of `StickerManagementActivityV2`. This new activity is not currently connected to anything, but once complete it will replace `StickerManagementActivity`.
2025-04-16 11:22:23 -03:00
Milan Stevanovic
90a356b29d Fix incorrect embedded druation in certain MP4 files.
The root cause:
- some MP4 files come with H.264/H.265 streams which explicitly
  state their timescale. In such cases, it is wise that MP4 muxer
  adopts these values
- unfortunately, the recent trend has been that such values coming
  from video stream SPS (vui_parameters/timing info) are exorbitantly
  high - instead of being FPS *1000, they tend to be FPS * 100,000,000
- when trying to express the duration of the movie, the MP4 muxer
  normally tries to find the adequate timescale value which will
  fit both audio and video timescaling domains. The most suitable
  approach is that the LCM (least common multiplier) value is taken
  which mathematically will be the least disruptive.

HOWEVER:
- in cases when video and timescale numeric values are mutually 'odd',
  say 30*100,000,000 and 44100, the LCM ends up being a huge number,
  which outgrows the 32-bit storage capacity granted by the ISO MP4
  spec (MVHD box).

Problem solution:
1) identifying when the LCM timescale exceeds 32-bit storage space
2) scaling down its value by nearest larger 10X factor, which will
   guarantee its value fitting the 32-bit space. Given the afore
   mentioned video timescale factors, dividing by 10X is harmless
3) rescaling the duration 64-bit value based on the new timescale
2025-04-16 11:22:23 -03:00
Greyson Parrelli
597623d23a Update conscrypt to 2.5.3 2025-04-16 11:22:23 -03:00
Greyson Parrelli
2028afc941 Update aesgcmprovider to 0.0.4 2025-04-16 11:22:23 -03:00
Greyson Parrelli
915580ddd3 Enable backups v2 for internal users. 2025-04-16 11:22:23 -03:00
Greyson Parrelli
9432cca14a Fix some media not appearing in the gallery picker.
Works around the glide issue by using the straight URI when possible,
which allows glide to not have to keep a buffer. However, as soon as you
select it, it'll be an encrypted file, and we'll run into this same
issue where glide needs to keep a buffer for the input stream.

Related to #11014
2025-04-16 11:22:23 -03:00
Sagar
4e07ac0300 Fix InputAwareLayout incorrectly overriding height in bubble mode. 2025-04-16 11:22:23 -03:00
Sagar
ad21c349cd Update quote icon for scheduled send. 2025-04-16 11:22:23 -03:00
Greyson Parrelli
383da335d8 Do not send sync messages if we have no linked devices. 2025-04-16 11:22:23 -03:00
Jim Gustafson
ebdffc171e Update to RingRTC v2.50.5 2025-04-16 11:22:23 -03:00
Cody Henthorne
721b70b7b7 Fallback to local reglock data if available when registering a previously verified session. 2025-04-16 11:22:23 -03:00
Greyson Parrelli
556bcda58a Bump version to 7.40.2 2025-04-15 17:20:29 -04:00
Greyson Parrelli
4cb5bd9edd Fix potential bad state with change numbers. 2025-04-15 17:20:29 -04:00
Cody Henthorne
193f6460b0 Convert change number back to REST. 2025-04-15 17:05:19 -04:00
Alex Hart
f8d8c8af2d Add internal preference for large screen UI. 2025-04-15 15:29:37 -03:00
Alex Hart
efac6990c8 Apply display cutout for chat list. 2025-04-15 15:24:09 -03:00
Alex Hart
250ac481c8 Move cancel and retry to bg thread. 2025-04-15 13:15:16 -03:00
Michelle Tang
44bfa514a5 Fix member count description. 2025-04-15 11:05:58 -04:00
Alex Hart
74cedf99d8 Fix snackbar vertical offset on archive screen. 2025-04-15 11:33:11 -03:00
Alex Hart
4c81c321be Utilize root window insets for grabbing system bar sizes. 2025-04-15 11:14:16 -03:00
Alex Hart
d00fbcd886 Fix snackbar dismissal. 2025-04-15 10:25:47 -03:00
Alex Hart
416f80e745 Fix bad assumption about attachment count in validator. 2025-04-15 10:14:54 -03:00
Michelle Tang
6805826472 Bump version to 7.40.1 2025-04-11 11:03:55 -04:00
Michelle Tang
ce5d234186 Update translations and other static files. 2025-04-11 10:57:41 -04:00
Michelle Tang
c95c6e6ef0 Schedule storage sync job for add/remove from folder. 2025-04-11 10:49:33 -04:00
Cody Henthorne
904f8da8af Update settings for unregistered state. 2025-04-11 08:34:10 -04:00
Alex Hart
645e9bf16a Allow back press to return from archive to converation list. 2025-04-10 14:26:35 -03:00
Alex Hart
35235509ca Prevent wallpaper mode from overwriting navbar color. 2025-04-10 14:12:04 -03:00
Michelle Tang
021330a25d Fix adding to chats for chat folders. 2025-04-10 12:47:13 -04:00
Alex Hart
6613d5fccb Fix nav bar spacing and coloring. 2025-04-10 13:10:37 -03:00
Alex Hart
9d6e7560f0 Fix touch target for app toolbar avatar. 2025-04-10 12:14:18 -03:00
Alex Hart
09e36e0ed8 Fix 3 button nav styling. 2025-04-10 11:47:40 -03:00
Alex Hart
8dde5ccd2e Fix padding below toolbar in search mode with chat folders enabled. 2025-04-10 10:13:23 -03:00
Alex Hart
f1ed2156e3 Prevent scaffold from being used if we do not have flag enabled. 2025-04-10 10:00:58 -03:00
Michelle Tang
40b9a60f6c Bump version to 7.40.0 2025-04-09 16:54:03 -04:00
Michelle Tang
59a135a1db Update translations and other static files. 2025-04-09 16:53:42 -04:00
Michelle Tang
0123c17e7e Remove unnecessary boolean return for conversations. 2025-04-09 15:51:10 -04:00
Cody Henthorne
ac36eeb84d Use unauth WebSocket after quick restore for transfer mode decision. 2025-04-09 15:29:55 -04:00
Alex Hart
143b2b5bd5 Move live state into if statement for AvatarImage. 2025-04-09 15:29:54 -04:00
Michelle Tang
6006c047d8 Remove old deleted folders from storage service. 2025-04-09 15:29:54 -04:00
Alex Hart
94d5fe3e43 Fix how navigation bar colors are set and interacted with in MainActivity. 2025-04-09 15:29:54 -04:00
Alex Hart
e0ba8a1d60 Fix color issue on call toast popup. 2025-04-09 15:29:54 -04:00
Alex Hart
2f8b0ff3a8 Set corner radius of nav bar icons to half height. 2025-04-09 15:29:54 -04:00
Greyson Parrelli
4700846fad Align the libnative-utils to 16kb pages. 2025-04-09 15:29:54 -04:00
Greyson Parrelli
6ddf2ab5f8 Update to NDK r28 for 16kb page support. 2025-04-09 15:29:54 -04:00
Alex Hart
545a26ff04 Fix conversation nav bar click. 2025-04-09 15:29:54 -04:00
Sagar
f0f6b80f43 Prevent child clickable in message selection state. 2025-04-09 15:29:54 -04:00
Alex Hart
0227af199b Clear window insets listener when view is detached from window. 2025-04-09 15:29:54 -04:00
Alex Hart
970f5f2480 Add progress dialog support to bottom snackbar. 2025-04-09 15:29:54 -04:00
Sagar
13d0d25f77 Notify conversations for deleted stories. 2025-04-09 15:29:54 -04:00
Alex Hart
b64f3a48bf Add proper adaptive material app scaffolding. 2025-04-09 15:29:54 -04:00
Sagar
86ea3e8572 Fix thumbPositon jitter while editing video. 2025-04-09 15:29:54 -04:00
andrew-signal
f15a67c8b2 Remove outdated config check affecting proximity lock behavior during calling. 2025-04-09 15:29:54 -04:00
Alex Hart
659ae75a20 Fix content width shrinking megaphones. 2025-04-09 15:29:54 -04:00
Sagar
0d686b2f44 Fix Image expanded caption scroll to top. 2025-04-09 15:29:54 -04:00
andrew-signal
0d611cf4c9 Bump libsignal to v0.69.1. 2025-04-09 15:29:54 -04:00
Sagar
6afeb45f43 Remove duplicate error handling in MediaSelection. 2025-04-09 15:29:54 -04:00
Alex Hart
d81616d23c Prevent conversation re-launch on reconfiguration of screen. 2025-04-09 15:29:54 -04:00
Sagar
6ea63f3e34 Avoid sending blank replies and do not clear input when sending reactions. 2025-04-09 15:29:54 -04:00
Sagar
af52765821 Support opening scheduled document files. 2025-04-09 15:29:54 -04:00
Cody Henthorne
acbab9e736 Allow long text to be sent via notification replies. 2025-04-09 15:29:54 -04:00
Alex Hart
5bce2884a7 Add predictive back gesture support to MainActivity. 2025-04-09 15:29:52 -04:00
Alex Hart
b92998be13 Fix image loading for megaphones. 2025-04-09 15:27:46 -04:00
Michelle Tang
1339929de4 Update chat folder tests. 2025-04-09 15:27:46 -04:00
Alex Hart
b0cd27e203 Add compose megaphone stuff to MainBottomChrome composable. 2025-04-09 15:27:46 -04:00
Sagar
65e7c4c053 Support zoom for avatar preview. 2025-04-09 15:27:46 -04:00
Sagar
8d8519b52e Linkify story captions. 2025-04-09 15:27:46 -04:00
Sagar
9c95cfd64b Fix donation pills UI for large Font and other UI improvements. 2025-04-09 15:27:46 -04:00
Sagar
b0a903b17d Make FABs stack scrollable for small height in landscape mode. 2025-04-09 15:27:46 -04:00
Alex Hart
855b315067 Reimplement megaphone UI in compose. 2025-04-09 15:27:46 -04:00
Jeffrey Starke
aa7b61ecb1 Consolidate duplicated logic to retrieve groups in common.
Merges all of these into GroupsInCommonRepository:
- ConversationSettingsRepository.getGroupsInCommon()
- CallLinkIncomingRequestRepository.getGroupsInCommon()
- ContactSearchPagedDataSourceRepository.getGroupsInCommon()
- ReviewUtil.getGroupsInCommonCount()
- AboutSheetRepository.getGroupsInCommonCount()
2025-04-09 15:27:46 -04:00
Alex Hart
c9795141df Pass InAppPayments around by ID instead of passing the entire object. 2025-04-09 15:27:46 -04:00
andrew-signal
1aed82d5b7 Depend on libsignal-net's connection backoff instead of duplicating at app-level. 2025-04-09 15:27:46 -04:00
Michelle Tang
752ed93b6f Update blocked string for groups. 2025-04-09 15:27:46 -04:00
Ciphreon
de3088f706 Show "declined" for declined voice and video calls instead of "missed".
Closes #14081
Fixes #14080
2025-04-09 15:27:46 -04:00
Jeffrey Starke
2608e9165c Fix group member review avatar and "other groups in common" copy. (#4813)
- Fixes `ReviewBannerView` erroneously using the note to self icon instead of the current user's profile photo.
- Fixes the "other groups in common" copy, which was missing the word "other".
2025-04-09 15:27:46 -04:00
Cody Henthorne
1e0e165eaf Fix decryptionDrained flag if race for WebSocket state emission is lost. 2025-04-09 15:27:46 -04:00
Michelle Tang
eff90aaa64 Fix job checks when syncing folders with storage service id. 2025-04-09 15:27:46 -04:00
Jeffrey Starke
77078e1844 Add the ability to navigate to conversations by tapping groups in common rows. 2025-04-09 15:27:46 -04:00
Michelle Tang
5929021166 Fix null storageIds in chat folder crash. 2025-04-09 15:27:46 -04:00
andrew-signal
8317e2e055 Correct RemoteConfig to enable libsignalWebSocket for nightly builds. 2025-04-09 15:27:46 -04:00
Michelle Tang
eb1cf8d62f Add chat folder support to storage service. 2025-04-09 15:27:46 -04:00
Cody Henthorne
f6ecb572b1 Fix lint for IAP test and main toolbar. 2025-04-09 15:27:46 -04:00
Alex Bakon
8b9fc30b97 Migrate calls to deprecated libsignal methods. 2025-04-09 15:27:46 -04:00
Sagar
d65954c26f Improve AvatarImage to update on recipient changes. 2025-04-09 15:27:46 -04:00
Cody Henthorne
8a0e260061 Re-migrate delete account to WebSocket. 2025-04-09 15:27:46 -04:00
Jeffrey Starke
bb608dbfa7 Fix missing timestamps on undownloaded media messages. 2025-04-09 15:27:46 -04:00
Michelle Tang
ec5a7e1e48 Prevent recipient hot loop on main thread. 2025-04-09 15:27:46 -04:00
Sagar
6251dad6e0 Update MyStoryItem on profile change. 2025-04-09 15:27:46 -04:00
Sagar
3982f5a4db Remove prefix before username aci fetch. 2025-04-09 15:27:46 -04:00
Sagar
a8f8760a11 Support scroll for call link screens. 2025-04-09 15:27:46 -04:00
Sagar
fb571ffdbf fixup! Update profile initials after name change. 2025-04-09 15:27:46 -04:00
Sagar
dc2956d05b Update quoteIds for edited message and ignore stale messages in isQuoted. 2025-04-09 15:27:46 -04:00
Jeffrey Starke
85b19bfe23 Fix incorrectly oriented back navigation icons for top app bar RTL layouts.
Replace `symbol_arrow_left_24` with `symbol_arrow_start_24` (which has auto-mirroring enabled) for top app bar navigation back icons to properly support RTL layouts.
2025-04-09 15:27:46 -04:00
andrew-signal
5b04107447 Update to and integrate with libsignal v0.69.0. 2025-04-09 15:27:46 -04:00
Cody Henthorne
7a5790a6ce Attempt to reclaim username in more places during/after registration. 2025-04-09 15:27:46 -04:00
Jeffrey Starke
9d3f4ffa08 Add groups in common screen.
Adds a new screen to show which groups the user has in common with another user.
2025-04-09 15:27:46 -04:00
Sagar
bc2d4a0415 Fix badge bottomsheet color and scrolling. 2025-04-09 15:27:46 -04:00
Alex Hart
cc346351f7 Use state to support back pressed callback. 2025-04-09 15:27:46 -04:00
Cody Henthorne
fcc6032ee0 Generalize preventing WebSocket from connecting in various app states. 2025-04-09 15:27:46 -04:00
Cody Henthorne
ecb040ce98 Convert donations apis to WebSocket. 2025-04-09 15:27:46 -04:00
Sagar
2f9692a1a0 Prevent wrong closing animation for stories. 2025-04-09 15:27:46 -04:00
Sagar
042ab95738 Fix EmojiView scroll in bottomsheet. 2025-04-09 15:27:45 -04:00
Sagar
13be8d511c Focus on correct textfield when adding a description. 2025-04-09 15:27:45 -04:00
Cody Henthorne
7bdfec77ca Remove message send REST fallback. 2025-04-09 15:27:45 -04:00
Alex Hart
bc176b8c50 Fix application crash when failing to download backup types. 2025-04-09 15:27:45 -04:00
Alex Hart
68c0307b73 Upgrade compose bom to latest stable. 2025-04-09 15:27:45 -04:00
Michelle Tang
bc3d533b5f Bump version to 7.39.4 2025-04-09 14:49:18 -04:00
Michelle Tang
84bbac22cb Update translations and other static files. 2025-04-09 14:43:52 -04:00
Alex Hart
4d6c620f51 Sync toolbar state in tabs fragment. 2025-04-09 15:20:58 -03:00
1647 changed files with 91931 additions and 51862 deletions

View File

@@ -18,6 +18,8 @@ ktlint_standard_statement-wrapping = disabled
internal:ktlint-suppression = disabled
ktlint_standard_unnecessary-parentheses-before-trailing-lambda = disabled
ktlint_standard_value-parameter-comment = disabled
ktlint_standard_class-signature = disabled
ktlint_standard_function-expression-body = disabled
# Disable ktlint on generated source code, see
# https://github.com/JLLeitschuh/ktlint-gradle/issues/746

View File

@@ -8,7 +8,7 @@ permissions:
pull-requests: write # to comment on PR
env:
NDK_VERSION: '27.2.12479018'
NDK_VERSION: '28.0.13004108'
jobs:
assemble-base:

View File

@@ -16,6 +16,7 @@
<option name="ALIGN_MULTILINE_TEXT_BLOCKS" value="true" />
<option name="IMPORT_LAYOUT_TABLE">
<value>
<package name="" withSubpackages="true" static="false" module="true" />
<package name="android" withSubpackages="true" static="false" />
<emptyLine />
<package name="androidx" withSubpackages="true" static="false" />

View File

@@ -1 +1 @@
java 17.0.2
java openjdk-17.0.2

View File

@@ -21,14 +21,16 @@ plugins {
apply(from = "static-ips.gradle.kts")
val canonicalVersionCode = 1534
val canonicalVersionName = "7.39.3"
val canonicalVersionCode = 1567
val canonicalVersionName = "7.51.1"
val currentHotfixVersion = 0
val maxHotfixVersions = 100
val keystores: Map<String, Properties?> = mapOf("debug" to loadKeystoreProperties("keystore.debug.properties"))
val selectableVariants = listOf(
"nightlyBackupRelease",
"nightlyBackupSpinner",
"nightlyProdSpinner",
"nightlyProdPerf",
"nightlyProdRelease",
@@ -70,6 +72,8 @@ wire {
protoPath {
srcDir("${project.rootDir}/libsignal-service/src/main/protowire")
}
// Handled by libsignal
prune("signalservice.DecryptionErrorMessage")
}
ktlint {
@@ -210,7 +214,9 @@ android {
buildConfigField("String[]", "SIGNAL_CDSI_IPS", rootProject.extra["cdsi_ips"] as String)
buildConfigField("String[]", "SIGNAL_SVR2_IPS", rootProject.extra["svr2_ips"] as String)
buildConfigField("String", "SIGNAL_AGENT", "\"OWA\"")
buildConfigField("String", "SVR2_MRENCLAVE", "\"9314436a9a144992bb3680770ea5fd7934a7ffd29257844a33763a238903d570\"")
buildConfigField("String", "SVR2_MRENCLAVE_LEGACY_LEGACY", "\"9314436a9a144992bb3680770ea5fd7934a7ffd29257844a33763a238903d570\"")
buildConfigField("String", "SVR2_MRENCLAVE_LEGACY", "\"093be9ea32405e85ae28dbb48eb668aebeb7dbe29517b9b86ad4bec4dfe0e6a6\"")
buildConfigField("String", "SVR2_MRENCLAVE", "\"29cd63c87bea751e3bfd0fbd401279192e2e5c99948b4ee9437eafc4968355fb\"")
buildConfigField("String", "UNIDENTIFIED_SENDER_TRUST_ROOT", "\"BXu6QIKVz5MA8gstzfOgRQGqyLqOwNKHL6INkv3IHWMF\"")
buildConfigField("String", "ZKGROUP_SERVER_PUBLIC_PARAMS", "\"AMhf5ywVwITZMsff/eCyudZx9JDmkkkbV6PInzG4p8x3VqVJSFiMvnvlEKWuRob/1eaIetR31IYeAbm0NdOuHH8Qi+Rexi1wLlpzIo1gstHWBfZzy1+qHRV5A4TqPp15YzBPm0WSggW6PbSn+F4lf57VCnHF7p8SvzAA2ZZJPYJURt8X7bbg+H3i+PEjH9DXItNEqs2sNcug37xZQDLm7X36nOoGPs54XsEGzPdEV+itQNGUFEjY6X9Uv+Acuks7NpyGvCoKxGwgKgE5XyJ+nNKlyHHOLb6N1NuHyBrZrgtY/JYJHRooo5CEqYKBqdFnmbTVGEkCvJKxLnjwKWf+fEPoWeQFj5ObDjcKMZf2Jm2Ae69x+ikU5gBXsRmoF94GXTLfN0/vLt98KDPnxwAQL9j5V1jGOY8jQl6MLxEs56cwXN0dqCnImzVH3TZT1cJ8SW1BRX6qIVxEzjsSGx3yxF3suAilPMqGRp4ffyopjMD1JXiKR2RwLKzizUe5e8XyGOy9fplzhw3jVzTRyUZTRSZKkMLWcQ/gv0E4aONNqs4P+NameAZYOD12qRkxosQQP5uux6B2nRyZ7sAV54DgFyLiRcq1FvwKw2EPQdk4HDoePrO/RNUbyNddnM/mMgj4FW65xCoT1LmjrIjsv/Ggdlx46ueczhMgtBunx1/w8k8V+l8LVZ8gAT6wkU5J+DPQalQguMg12Jzug3q4TbdHiGCmD9EunCwOmsLuLJkz6EcSYXtrlDEnAM+hicw7iergYLLlMXpfTdGxJCWJmP4zqUFeTTmsmhsjGBt7NiEB/9pFFEB3pSbf4iiUukw63Eo8Aqnf4iwob6X1QviCWuc8t0LUlT9vALgh/f2DPVOOmR0RW6bgRvc7DSF20V/omg+YBw==\"")
buildConfigField("String", "GENERIC_SERVER_PUBLIC_PARAMS", "\"AByD873dTilmOSG0TjKrvpeaKEsUmIO8Vx9BeMmftwUs9v7ikPwM8P3OHyT0+X3EUMZrSe9VUp26Wai51Q9I8mdk0hX/yo7CeFGJyzoOqn8e/i4Ygbn5HoAyXJx5eXfIbqpc0bIxzju4H/HOQeOpt6h742qii5u/cbwOhFZCsMIbElZTaeU+BWMBQiZHIGHT5IE0qCordQKZ5iPZom0HeFa8Yq0ShuEyAl0WINBiY6xE3H/9WnvzXBbMuuk//eRxXgzO8ieCeK8FwQNxbfXqZm6Ro1cMhCOF3u7xoX83QhpN\"")
@@ -370,6 +376,7 @@ android {
buildConfigField("boolean", "MANAGES_APP_UPDATES", "true")
buildConfigField("String", "APK_UPDATE_MANIFEST_URL", "\"${apkUpdateManifestUrl}\"")
buildConfigField("String", "BUILD_DISTRIBUTION_TYPE", "\"nightly\"")
buildConfigField("boolean", "MESSAGE_BACKUP_RESTORE_ENABLED", "true")
}
create("prod") {
@@ -393,7 +400,9 @@ android {
buildConfigField("String", "SIGNAL_CDN3_URL", "\"https://cdn3-staging.signal.org\"")
buildConfigField("String", "SIGNAL_CDSI_URL", "\"https://cdsi.staging.signal.org\"")
buildConfigField("String", "SIGNAL_SVR2_URL", "\"https://svr2.staging.signal.org\"")
buildConfigField("String", "SVR2_MRENCLAVE", "\"38e01eff4fe357dc0b0e8ef7a44b4abc5489fbccba3a78780f3872c277f62bf3\"")
buildConfigField("String", "SVR2_MRENCLAVE_LEGACY_LEGACY", "\"38e01eff4fe357dc0b0e8ef7a44b4abc5489fbccba3a78780f3872c277f62bf3\"")
buildConfigField("String", "SVR2_MRENCLAVE_LEGACY", "\"2e8cefe6e3f389d8426adb24e9b7fb7adf10902c96f06f7bbcee36277711ed91\"")
buildConfigField("String", "SVR2_MRENCLAVE", "\"a75542d82da9f6914a1e31f8a7407053b99cc99a0e7291d8fbd394253e19b036\"")
buildConfigField("String", "UNIDENTIFIED_SENDER_TRUST_ROOT", "\"BbqY1DzohE4NUZoVF+L18oUPrK3kILllLEJh2UnPSsEx\"")
buildConfigField("String", "ZKGROUP_SERVER_PUBLIC_PARAMS", "\"ABSY21VckQcbSXVNCGRYJcfWHiAMZmpTtTELcDmxgdFbtp/bWsSxZdMKzfCp8rvIs8ocCU3B37fT3r4Mi5qAemeGeR2X+/YmOGR5ofui7tD5mDQfstAI9i+4WpMtIe8KC3wU5w3Inq3uNWVmoGtpKndsNfwJrCg0Hd9zmObhypUnSkfYn2ooMOOnBpfdanRtrvetZUayDMSC5iSRcXKpdlukrpzzsCIvEwjwQlJYVPOQPj4V0F4UXXBdHSLK05uoPBCQG8G9rYIGedYsClJXnbrgGYG3eMTG5hnx4X4ntARBgELuMWWUEEfSK0mjXg+/2lPmWcTZWR9nkqgQQP0tbzuiPm74H2wMO4u1Wafe+UwyIlIT9L7KLS19Aw8r4sPrXZSSsOZ6s7M1+rTJN0bI5CKY2PX29y5Ok3jSWufIKcgKOnWoP67d5b2du2ZVJjpjfibNIHbT/cegy/sBLoFwtHogVYUewANUAXIaMPyCLRArsKhfJ5wBtTminG/PAvuBdJ70Z/bXVPf8TVsR292zQ65xwvWTejROW6AZX6aqucUjlENAErBme1YHmOSpU6tr6doJ66dPzVAWIanmO/5mgjNEDeK7DDqQdB1xd03HT2Qs2TxY3kCK8aAb/0iM0HQiXjxZ9HIgYhbtvGEnDKW5ILSUydqH/KBhW4Pb0jZWnqN/YgbWDKeJxnDbYcUob5ZY5Lt5ZCMKuaGUvCJRrCtuugSMaqjowCGRempsDdJEt+cMaalhZ6gczklJB/IbdwENW9KeVFPoFNFzhxWUIS5ML9riVYhAtE6JE5jX0xiHNVIIPthb458cfA8daR0nYfYAUKogQArm0iBezOO+mPk5vCNWI+wwkyFCqNDXz/qxl1gAntuCJtSfq9OC3NkdhQlgYQ==\"")
buildConfigField("String", "GENERIC_SERVER_PUBLIC_PARAMS", "\"AHILOIrFPXX9laLbalbA9+L1CXpSbM/bTJXZGZiuyK1JaI6dK5FHHWL6tWxmHKYAZTSYmElmJ5z2A5YcirjO/yfoemE03FItyaf8W1fE4p14hzb5qnrmfXUSiAIVrhaXVwIwSzH6RL/+EO8jFIjJ/YfExfJ8aBl48CKHgu1+A6kWynhttonvWWx6h7924mIzW0Czj2ROuh4LwQyZypex4GuOPW8sgIT21KNZaafgg+KbV7XM1x1tF3XA17B4uGUaDbDw2O+nR1+U5p6qHPzmJ7ggFjSN6Utu+35dS1sS0P9N\"")
@@ -408,6 +417,18 @@ android {
buildConfigField("String", "STRIPE_PUBLISHABLE_KEY", "\"pk_test_sngOd8FnXNkpce9nPXawKrJD00kIDngZkD\"")
buildConfigField("boolean", "MESSAGE_BACKUP_RESTORE_ENABLED", "true")
}
create("backup") {
initWith(getByName("staging"))
dimension = "environment"
applicationIdSuffix = ".backup"
buildConfigField("boolean", "MANAGES_APP_UPDATES", "true")
buildConfigField("String", "BUILD_ENVIRONMENT_TYPE", "\"Backup\"")
buildConfigField("boolean", "MESSAGE_BACKUP_RESTORE_ENABLED", "true")
}
}
lint {
@@ -480,6 +501,7 @@ dependencies {
implementation(project(":device-transfer"))
implementation(project(":image-editor"))
implementation(project(":donations"))
implementation(project(":debuglogs-viewer"))
implementation(project(":contacts"))
implementation(project(":qr"))
implementation(project(":sticky-header-grid"))
@@ -537,6 +559,7 @@ dependencies {
}
implementation(libs.google.play.services.maps)
implementation(libs.google.play.services.auth)
implementation(libs.google.signin)
implementation(libs.bundles.media3)
implementation(libs.conscrypt.android)
implementation(libs.signal.aesgcmprovider)
@@ -580,6 +603,8 @@ dependencies {
implementation(libs.rxjava3.rxandroid)
implementation(libs.rxjava3.rxkotlin)
implementation(libs.rxdogtag)
implementation(libs.androidx.credentials)
implementation(libs.androidx.credentials.compat)
"playImplementation"(project(":billing"))
"nightlyImplementation"(project(":billing"))
@@ -711,13 +736,18 @@ fun getMapsKey(): String {
}
fun Project.languageList(): List<String> {
// In API 35, language codes for Hebrew and Indonesian now use the ISO 639-1 code ("he" and "id").
// However, the value resources still only support the outdated code ("iw" and "in") so we have
// to manually indicate that we support these languages.
val updatedLanguageCodes = listOf("he", "id")
return fileTree("src/main/res") { include("**/strings.xml") }
.map { stringFile -> stringFile.parentFile.name }
.map { valuesFolderName -> valuesFolderName.replace("values-", "") }
.filter { valuesFolderName -> valuesFolderName != "values" }
.map { languageCode -> languageCode.replace("-r", "_") }
.distinct()
.sorted() + "en"
.sorted() + updatedLanguageCodes + "en"
}
fun String.capitalize(): String {

View File

@@ -44,4 +44,7 @@
<issue id="OptionalUsedAsFieldOrParameterType" severity="ignore" />
<issue id="SameParameterValue" severity="ignore" />
<!-- Disables check for digital asset linking in manifest. It's not needed, since we are not using CredentialManager for passkey support. -->
<issue id="CredManMissingDal" severity="ignore" />
</lint>

Some files were not shown because too many files have changed in this diff Show More