Commit Graph
11633 Commits
Author SHA1 Message Date
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 HoltzmanandGitHub bf4b09bdc4 Update to MobileCoin enclave measurements. 2025-07-21 08:20:05 -04:00
jeffrey-signalandGitHub 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 ParrelliandGitHub 1cef53d82e Truncate message length based on utf8-byte size. 2025-07-18 16:27:41 -04:00
Alex HartandGitHub 84c6719d03 Attempt to heal if we have everything we need but no entitlement. 2025-07-18 16:58:24 -03:00
Cody HenthorneandGitHub e0df5e6df0 Exclude disappearing attachments from archive size estimation. 2025-07-18 15:57:35 -04:00
Michelle TangandGitHub eae0b43858 Generalize device authentication education sheet for backups. 2025-07-18 13:03:49 -04:00
Alex HartandGitHub b188c45cd9 Do not include view-once media in regular message backups. 2025-07-18 12:10:11 -03:00
Alex HartandGitHub 36de1284c7 Allow user to rotate AEP. 2025-07-18 10:36:49 -03:00
Greyson ParrelliandGitHub a9455b95ac Inline long text attachments into backup files. 2025-07-17 16:50:22 -04:00
Miriam ZimmermanandGitHub 6553c416f8 Revert attempts to fix broken camera issue 2025-07-17 15:30: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 TangandGitHub 85ff27d830 Fix missing chat folder crash. 2025-07-16 14:34:50 -04:00
Cody HenthorneandGitHub 8ee80b0d27 Fix backup message job cancel and start bugs. 2025-07-16 14:21:59 -04:00
Michelle TangandGitHub 141faf3fb6 Avoid uploading story-only media to backups. 2025-07-16 13:10:32 -04:00
lisa-signalandJeffrey Starke 559539dc3b Create search functionality for debug log page. 2025-07-16 12:42:36 -04:00
Greyson ParrelliandJeffrey Starke ded98c0d50 Fix rules for link+syncing expiring messages. 2025-07-16 12:42:36 -04:00
Greyson ParrelliandJeffrey Starke 4b75b9f1d6 Improve reconciliation task to reduce possible churn. 2025-07-16 12:42:36 -04:00
Greyson ParrelliandJeffrey Starke cfa96f4737 Remove internal-only crash during archive status reset. 2025-07-16 12:42:36 -04:00
Cody HenthorneandJeffrey Starke 2148eb8760 Prevent IMO retries when network unavailable. 2025-07-16 12:42:36 -04:00
Cody HenthorneandJeffrey Starke 269d5752c4 Fix add 1000 messages copy/paste error during compose conversion. 2025-07-16 12:42:36 -04:00
Cody HenthorneandJeffrey Starke 1a1e1ea631 Select first backup subscription if selection is unavailable. 2025-07-16 12:42:36 -04:00
Greyson ParrelliandJeffrey Starke 015a34f8d6 Only enqueue attachment archive syncing jobs if the user backs up media. 2025-07-16 12:42:36 -04:00
AnonAllyandJeffrey Starke f7d14c77b1 Migrate ChangeNumberFragment to compose. 2025-07-16 12:42:36 -04:00
Greyson ParrelliandJeffrey Starke 3c07a731c4 Add additional checks for serviceId during sending flow. 2025-07-16 12:42:36 -04:00
Alex HartandJeffrey Starke 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-signalandJeffrey Starke 24360a41ff Change debug log from RecyclerView to WebView. 2025-07-16 12:42:36 -04:00
Alex HartandJeffrey Starke b45fb28dbe Wire in NetworkResult for Types. 2025-07-16 12:42:36 -04:00
Michelle TangandJeffrey Starke 7753aadbf0 Adjust turn on backups megaphone schedule. 2025-07-16 12:42:36 -04:00
Michelle TangandJeffrey Starke 359f473b59 Add verify key megaphone. 2025-07-16 12:42:35 -04:00
FineFindusandJeffrey Starke 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 HartandJeffrey Starke 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 TangandJeffrey Starke 661fc9dd9e Add check before running backup jobs. 2025-07-15 17:45:30 -04:00
gram-signalandGitHub 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-signalandAlex Hart 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-signalandAlex Hart 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-signalandAlex Hart 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 TangandAlex Hart 177504a897 Fix database consistency test. 2025-07-10 09:12:48 -03:00
Michelle TangandAlex Hart 7d7c6c5130 Ensure story attachment data is deleted after expiration. 2025-07-10 09:12:48 -03:00