evgeny
b3495349e1
Offer attachment encryption after selecting a file
2026-10-18 11:47:53 +02:00
evgeny
a31ade1054
Exercise group encryption choice through real Qt input events
2026-10-18 10:44:23 +02:00
evgeny
8a46a53a21
Verify cache restoration and channel cleanup for encrypted attachments
2026-10-18 10:40:24 +02:00
evgeny
de1da1c9b1
Translate encrypted attachment controls and request states
2026-10-18 02:26:01 +02:00
evgeny
ade9401e05
Fix desktop attachment UI include path
2026-10-18 02:17:54 +02:00
evgeny
7cffb15c73
Add author request list with individual key approvals
2026-10-18 02:17:08 +02:00
evgeny
2b7def369d
Render locked group attachments and local decrypted media
2026-10-18 02:16:29 +02:00
evgeny
9f813424bb
Deliver attachment key state changes to desktop UI
2026-10-18 02:15:25 +02:00
evgeny
4703a46eb9
Add per-send encryption toggle for group files and voice
2026-10-18 02:15:16 +02:00
evgeny
be295f768c
feat(chat): add local DM deletion and improve Android member list
...
Delete local conversations atomically, retain replay protection and sequence counters, and guard asynchronous media work by history generation. Add Android avatar menu and confirmation, persistent file cleanup, and regression coverage.
Fix unnamed member wire padding and compact Android member action spacing.
Validation: 158 core tests passed; targeted DM tests, desktop build, Android unit tests and debug APK build passed.
2026-10-18 02:04:05 +02:00
evgeny
3f7cfe1c86
fix(chatgui): distinguish untranslated addresses from unmeasured profiles
2026-10-17 23:19:25 +02:00
evgeny
a485b10e63
fix(chatgui): show measured NAT profile in member addresses
2026-10-17 23:18:57 +02:00
evgeny
60104ea093
fix(chatgui): label detected NAT with unknown type as NAT?
2026-10-17 22:02:36 +02:00
evgeny
b539a6f338
gui: display EIM? when unsolicited ingress remains unverified
2026-10-17 18:19:23 +02:00
evgeny
b9a5981f5c
gui: shorten unknown NAT status to NAT?
2026-10-17 17:55:32 +02:00
evgeny
78f71ddbb0
nat: distinguish public interface addresses from unknown NAT candidates
2026-10-17 17:53:20 +02:00
evgeny
79d8789410
nat: prioritize mapping candidates and label unknown NAT explicitly
2026-10-17 17:47:18 +02:00
evgeny
1dc26bf715
Add bounded mouse zoom and panning to live stream viewer
2026-10-17 01:49:35 +02:00
evgeny
93dc21f3c8
Exercise capture conversion failure with distinct source generations
2026-10-17 01:30:48 +02:00
evgeny
fd73fae77f
Keep stream capture failures and cursor snapshots tied to their source
2026-10-17 01:30:06 +02:00
evgeny
9c7d088f8b
Compare retained image pixels without assuming SIMD color rounding
2026-10-17 01:30:05 +02:00
evgeny
64bbbdc631
Guard RGB conversion bounds and use padded frames in file playback
2026-10-17 01:28:42 +02:00
evgeny
f81b93ad0d
Allocate padded RGB frames for FFmpeg video conversion
2026-10-17 01:28:04 +02:00
evgeny
88e3e27145
Show cursor in Windows stream preview
2026-10-17 01:02:46 +02:00
evgeny
bf729502a1
Improve Windows screen capture frame rate
2026-10-17 00:38:29 +02:00
evgeny
f5660a4642
Hide window capture sources
2026-10-17 00:19:28 +02:00
evgeny
e440c62339
Use native Windows monitor handle for cursor overlay
2026-10-17 00:16:56 +02:00
evgeny
4a6f95cebd
Add native Windows cursor overlay to screen broadcasts
2026-10-16 23:50:52 +02:00
evgeny
49d55a25a1
Poll stream image thread cleanup from GUI loop
2026-10-16 23:09:29 +02:00
evgeny
1e21912dc6
Trace stream image worker and GUI shutdown waits
2026-10-16 22:45:58 +02:00
evgeny
a63af43e59
Handle AMF periodic keyframes
2026-10-16 21:52:10 +02:00
evgeny
98d0040b27
Fix AMF live encoder startup probe
2026-10-16 21:26:58 +02:00
evgeny
2a439754ba
Fix Windows FFmpeg configure link flags
2026-10-16 19:42:47 +02:00
evgeny
4401c4b1e4
Fix libaom build with NASM 3
2026-10-16 19:27:51 +02:00
evgeny
8cb656dbdc
Minimize FFmpeg features for ChatGUI
2026-10-16 19:08:53 +02:00
evgeny
eb98d2c724
Fetch x265 tags before configuring version metadata
2026-10-16 19:04:25 +02:00
evgeny
f90cbae94a
Enable AMD AMF in Windows ChatGUI FFmpeg build
2026-10-16 18:50:42 +02:00
evgeny
7a2fa9e199
Move captured frame conversion to persistent worker
2026-10-16 18:08:42 +02:00
evgeny
5c9bf9e47c
Log capture conversion thread and completion
2026-10-16 18:05:58 +02:00
evgeny
8d7ab6a1a6
Keep a converted frame for encoder reconfiguration
2026-10-16 18:05:07 +02:00
evgeny
97e20d2f1c
Keep Qt video frame conversion off the publisher worker
2026-10-16 18:04:27 +02:00
evgeny
16e547d15d
Drain publisher while asynchronous microphone teardown completes
2026-10-16 17:34:21 +02:00
evgeny
114c0b3e2f
Aggregate recurring audio glitch logs between buffer changes
2026-10-16 17:33:32 +02:00
evgeny
688d559787
Wait for native thread exit outside GUI and cover FIN drain in tests
2026-10-16 17:31:20 +02:00
evgeny
0f5a5580c5
Test publisher shutdown with GUI-dependent thread-local cleanup
2026-10-16 17:27:15 +02:00
evgeny
85101765eb
Keep GUI responsive until publisher threads finish resource cleanup
2026-10-16 17:26:30 +02:00
evgeny
fb2a615165
Reproduce Android audio startup deadlock with real Opus playback
2026-10-16 17:25:19 +02:00
evgeny
0c26daf3f5
Document adaptive buffer limits and preserve failed-open backoff
2026-10-16 17:18:13 +02:00
evgeny
b463fc3309
Keep adaptive requests above baseline and test backend fault events
2026-10-16 17:17:22 +02:00
evgeny
e37b3be7da
Defer new shared subscribers during microphone buffer resizing
2026-10-16 17:15:51 +02:00