643 Commits

Author SHA1 Message Date
jack
7fb93eb522 Hide absolute paths in media messages 2025-10-15 00:37:41 +01:00
jack
cb8b34f8ea Stub file transfer methods in mock 2025-10-15 00:37:41 +01:00
jack
b872113a4b Stub file transfer methods in mock 2025-10-15 00:37:41 +01:00
jack
de3795289d Use unique transfer identifiers 2025-10-15 00:37:41 +01:00
jack
bd37cc69a0 Preserve packet version when signing 2025-10-15 00:37:41 +01:00
jack
788e21c4ea Fix CFMutableData handling 2025-10-15 00:37:40 +01:00
jack
c179e34c43 Target image byte size across platforms 2025-10-15 00:37:40 +01:00
jack
aa8b257e68 Normalize mac JPEG color space 2025-10-15 00:37:40 +01:00
jack
7b4aeb506e Strip metadata in mac image encoding 2025-10-15 00:37:40 +01:00
jack
5d5ed94952 Revert unsupported JPEG option 2025-10-15 00:37:40 +01:00
jack
4945688eca Align mac image JPEG encoding 2025-10-15 00:37:40 +01:00
jack
22bd975059 Allow user-selected write access 2025-10-15 00:37:40 +01:00
jack
d28b58ecb2 Fix image attachment detection 2025-10-15 00:37:40 +01:00
jack
e17163b3da Use save panel for mac image export 2025-10-15 00:37:40 +01:00
jack
9346e62971 Keep processed images for outgoing messages 2025-10-15 00:37:40 +01:00
jack
a89fd153ee Lowercase image preview buttons 2025-10-15 00:37:40 +01:00
jack
25bc737919 Reblur images via swipe 2025-10-15 00:37:40 +01:00
jack
8218c12f69 Allow long-press reblur on images 2025-10-15 00:37:40 +01:00
jack
60c2263a46 Use Photos picker on mac 2025-10-15 00:37:40 +01:00
jack
e2fcb44982 Restore mac photo picker access 2025-10-15 00:37:40 +01:00
jack
ebbb7b356f Display recording milliseconds 2025-10-15 00:37:40 +01:00
jack
2d0f55ae84 Harden attachment transfer bookkeeping 2025-10-15 00:37:40 +01:00
jack
51e8e4e51a Describe microphone usage 2025-10-15 00:37:40 +01:00
jack
fb251a3fa8 Permit mac media library access 2025-10-15 00:37:40 +01:00
jack
4052ba581a Allow mac microphone access 2025-10-15 00:37:40 +01:00
jack
235fefe4ab Enable mac attachment importers 2025-10-15 00:37:40 +01:00
jack
8389961269 Fix compressed BLE file transfers 2025-10-15 00:37:40 +01:00
jack
a244c4084f Stop dropping partial BLE frames while assembling notifications 2025-10-15 00:37:40 +01:00
jack
ed320fb0ad Log incomplete BLE frames for debugging 2025-10-15 00:37:40 +01:00
jack
2bdc1535c7 Add detailed logging for BLE fragment assembly 2025-10-15 00:37:40 +01:00
jack
60a375469a Let BLE assembler accept large frames up to hard cap 2025-10-15 00:37:40 +01:00
jack
640567b7e4 Add guard to drop oversized BLE notification assemblies 2025-10-15 00:37:40 +01:00
jack
f58bcaf615 Revert "Raise BLE notification buffer cap for large file transfers"
This reverts commit b624523af843475db84e4a846db8dcbe824ae408.
2025-10-15 00:37:40 +01:00
jack
6e19995de2 Raise BLE notification buffer cap for large file transfers 2025-10-15 00:37:40 +01:00
jack
78d72f5814 Allow file transfers from connected but unverified peers 2025-10-15 00:37:40 +01:00
jack
f145d13992 Copy imported files before sending to preserve access 2025-10-15 00:37:40 +01:00
jack
f607413caf Restore iOS file importer for attachments 2025-10-15 00:37:40 +01:00
jack
47db836a22 Reduce vertical padding between chat rows 2025-10-15 00:37:40 +01:00
jack
aa7a5efe6a Tighten spacing above media message bubbles 2025-10-15 00:37:40 +01:00
jack
c8d196f106 Gracefully disable mac attachment pickers in sandbox 2025-10-15 00:37:40 +01:00
jack
2cd90ff813 Add BLE file transfer support and media UX 2025-10-15 00:37:40 +01:00
Islam
5267489fa2 Convert the remaining tests to Swift Testing (#781)
* SwiftTesting: NoiseProtocolTests + BinaryProtocolPaddingTests

* SwiftTesting: `NotificationStreamAssemblerTests`

* SwiftTesting: `NostrProtocolTests`

* SwiftTesting: `BinaryProtocolTests`

* SwiftTesting: `PeerIDTests`

* SwiftTesting: `BLEServiceTests`

* SwiftTesting: `CommandProcessorTests`

* SwiftTesting: `GCSFilterTests`

* SwiftTesting: `GeohashBookmarksStoreTests`

* Remove `peerID` test constants

* Remove PeerID + String interop from tests

* Refactor IntegrationTests to extract state management

* Refactor global state management of MockBLEService

* NoiseProtocolSwiftTests: `actor` -> `struct`

* Remove measurement tests w/ no benchmark

* `NoiseProtocolSwiftTests` -> `NoiseProtocolTests`

* SwiftTesting: `LocationChannelsTests`

* SwiftTesting: `GossipSyncManagerTests`

* SwiftTesting: `LocationNotesManagerTests`

* Global `sleep` function for tests

* SwiftTesting: `IntegrationTests`

---------

Co-authored-by: jack <jackjackbits@users.noreply.github.com>
2025-10-15 00:33:35 +01:00
Islam
790dcda8e5 Refactor Noise: Extract files and remove dead code (#806)
* Extract each type to a separate file

* NoiseSessionManager: Remove unused functions

---------

Co-authored-by: jack <212554440+jackjackbits@users.noreply.github.com>
2025-10-15 00:33:35 +01:00
jack
3479c7d5df
Fix people sheet dismiss gestures (#803)
* Allow closing people sheet from X and swipe

* Swipe right to return from DM to people list

---------

Co-authored-by: jack <jackjackbits@users.noreply.github.com>
2025-10-14 21:11:44 +02:00
jack
8a0727fcf7
Guard BLE link state lookups on BLE queue (#805)
Co-authored-by: jack <jackjackbits@users.noreply.github.com>
2025-10-14 21:11:07 +02:00
jack
6588861e34
Align gossip sync stale cleanup with Android client (#798)
* Align DM sheet toolbar with people list

* Gate stale gossip announcements

* Remove stale peer messages during gossip cleanup

---------

Co-authored-by: jack <jackjackbits@users.noreply.github.com>
2025-10-14 13:54:36 +02:00
fikarme
a1647901e5
Add Turkish translations for share extension & Add Turkey to knownRegions (#787)
* Add Turkish translations for share extension

* Add Turkey to knownRegions

---------

Co-authored-by: jack <212554440+jackjackbits@users.noreply.github.com>
2025-10-14 12:45:23 +02:00
Islam
23249f3e41
PeerID 22/n: PrivateChatManager (#800)
* PrivateChatManager: functions to use `PeerID`

* PrivateChatManager: properties to use `PeerID`
2025-10-14 12:30:18 +02:00
Islam
ad4103bacc
Refactor Nostr ID Bridge & Keychain Helper (#796)
* Extract each type to a separate file

* Nostr ID Bridge: Convert static func/vars to instance

* `KeychainHelper` behind a protocol to easily mock

* Update tests with ID Bridge and MockKeychainHelper

---------

Co-authored-by: jack <212554440+jackjackbits@users.noreply.github.com>
2025-10-14 12:26:18 +02:00
jack
e3149fa098
Process incoming fragments on message queue (#804)
Co-authored-by: jack <jackjackbits@users.noreply.github.com>
2025-10-14 12:20:39 +02:00