evgeny
abdca1acc7
Load chat background from embedded resources
2026-10-15 20:47:51 +02:00
evgeny
2caa9504c9
Report capture termination and preserve explicit microphone selection
2026-10-14 12:11:36 +02:00
evgeny
80bd17a28e
Open own broadcast controls and keep rejected voice recording idle
2026-10-14 12:08:01 +02:00
evgeny
ab01c6dc48
Expose broadcast setup even when a channel has no live sources
2026-10-14 02:53:22 +02:00
evgeny
061eb0f0f8
Preserve initial channel watches until desktop core attaches
2026-10-12 22:30:38 +02:00
evgeny
fe7734b9e0
Show live sources and select a stream in desktop channel headers
2026-10-12 22:12:41 +02:00
evgeny
b14bfa95c2
Collect group actions in the conversation header menu
2026-10-10 11:17:00 +02:00
evgeny
8f908c320a
Open own group files from the conversation header
2026-10-10 11:06:45 +02:00
evgeny
4463f8870a
Keep the viewed reply target stable until returning to latest messages
2026-10-08 00:50:17 +02:00
evgeny
adf1e9507a
Fill reply history windows at boundaries and preserve read position
2026-10-08 00:36:52 +02:00
evgeny
38257a7f54
Connect reply sending, quote resolution and history navigation
2026-10-08 00:27:02 +02:00
evgeny
ddcc36aa26
Open desktop chat polls with a single left click
2026-10-07 17:11:43 +02:00
evgeny
f71e5531e0
Open reaction picker from desktop heart and toggle existing reactions
2026-10-07 01:22:34 +02:00
evgeny
29ee55d751
Enlarge desktop chat and member avatars
2026-10-07 01:18:31 +02:00
evgeny
39e94fdfd3
Add message reaction menus and distinguish own reactions
2026-10-06 21:39:14 +02:00
evgeny
cf869770fb
Add desktop poll creation, voting and live result dialogs
2026-10-06 21:39:13 +02:00
evgeny
3a793e25b3
Open user avatar galleries from desktop messages
2026-10-06 19:36:34 +02:00
evgeny
0279ed84a9
chatgui: stage dropped files through the attachment composer
2026-10-06 18:58:33 +02:00
evgeny
405755f06a
Reuse shared channel avatars in direct message conversations
2026-10-06 12:40:07 +02:00
evgeny
694ed8e263
Display cached user avatars in member lists and chat messages
2026-10-06 12:32:33 +02:00
evgeny
0773a82342
Keep debug focused on file browser event delivery
2026-10-05 21:30:01 +02:00
evgeny
27d93ecaf9
Add English and Russian ChatGUI interface translations
2026-10-05 16:55:43 +02:00
evgeny
01fa1bc552
Route message link activation through the Qt conversation view
2026-10-04 19:05:08 +02:00
evgeny
6ad89a4f6a
Elide Qt invitation links with consistent layout and full-address selection
2026-10-04 18:08:43 +02:00
evgeny
0f9210e491
Share the desktop portable radio icon painter
2026-10-04 15:59:45 +02:00
evgeny
8e25ffb392
Wait for member replication after JOIN and include desktop diagnostics
2026-10-04 15:24:06 +02:00
evgeny
f07a5b7a83
Keep invite hit testing in the message presenter and show link cursor
2026-10-04 15:10:02 +02:00
evgeny
b7821121c3
Activate desktop invite links on clicks while preserving drag selection
2026-10-04 14:56:11 +02:00
evgeny
01aa692a56
Add group invitation button to desktop PM header
2026-10-04 14:54:59 +02:00
evgeny
afbce0efeb
Load radio settings after core startup and apply from dialog
2026-10-03 13:12:17 +03:00
evgeny
d1e2220e54
Place radio controls above desktop chat messages
2026-10-03 13:10:38 +03:00
evgeny
1e9264735b
Fix desktop hover and emoji playback; share Android chat background
2026-10-02 23:19:13 +03:00
evgeny
23368a5bbe
Add Android boot startup, lazy settings, emoji and DM calls
...
Add battery optimization controls and configurable boot startup. Keep message sounds in the application and render general settings lazily to avoid ANRs. Add animated emoji controls and live BGP availability for direct-message calls on Android and desktop.
2026-10-02 17:18:24 +03:00
evgeny
217e5795bf
Раздели PCM-сессии и исправь частоту и перемотку звука
2026-10-02 02:00:50 +03:00
evgeny
203ae61eda
Share bounded thumbnail workers and keep PM downloads in DM transport
2026-10-01 19:12:25 +03:00
evgeny
6da6471204
Apply task-scoped media preparation events to the shared Qt composer
2026-10-01 18:39:31 +03:00
evgeny
172cc3a649
Update shared Qt playback controls after background decoding
2026-10-01 18:29:07 +03:00
evgeny
c58b92ecd7
Render typed PM media using shared Qt message roles
2026-10-01 17:57:43 +03:00
evgeny
4f76b4d765
Dispatch Qt attachments using the target captured by the composer
2026-10-01 17:54:48 +03:00
evgeny
934f1ccd1f
Use the existing diagnostic macros for desktop PM errors
2026-10-01 16:32:14 +03:00
evgeny
7fee3ec551
Render asynchronous PM history and submit desktop file sends
2026-10-01 16:24:09 +03:00
evgeny
2d21c53b4b
Improve call buffering, CM handle lifecycle and radio PTT controls
2026-09-30 17:31:53 +03:00
evgeny
1176411b79
radio: Silero VAD + auto-PTT; chatgui/android: app icon and background
2026-09-29 16:19:25 +03:00
evgeny
3131dcbb7c
Fix ETCP session recovery and router lifecycle; confirm chat invites before publishing
2026-09-27 02:51:47 +03:00
evgeny
738cfe7835
radio: адаптивный джиттер-буфер (pre-roll, симметричный темп, reorder) + AGC-компрессор микрофона
...
- voice_jitter: vj_create_cfg (target_ms/min_tempo/max_tempo/pre_roll), pre-roll
с таймаутом, vj_end для дренажа остатка, глубина учитывает внутренний буфер SoundTouch
- radio_audio: reorder по seq (mesh, out-of-order через соседей), force-flush pending
по таймауту и FIN, компрессор микрофона (AGC, конфиг [chatserver]), статистика буфера
- audio_compressor: clear_output для потокового слива без потери gain_smoothed
- chatgui messagelist: fromUtf8 для emoji-строк
- тесты: pre-roll/симметричный темп, reorder, late-drop
2026-09-20 14:39:25 +03:00
evgeny
b96ed8bd00
radio: PTT-радио в каналах (src/radio + chatgui + chatgui-android)
...
Новый модуль src/radio (radio/radio_audio/radio_headless) — push-to-talk
радио поверх topo-групп, доставка аудио в канал, headless-режим и тесты.
Интеграция в chatgui (ptt_hotkey_manager, radio_audio_engine, радионастройки,
вызовы) и chatgui-android (RadioAudioEngine, RadioOverlayService, UI).
2026-09-19 17:09:00 +03:00
evgeny
b11e77e4c0
call: P2P аудиозвонки — сигналинг, релей медиа, аудио-контур, headless/desktop/android
...
- src/call/: сигналинг (call.c, call_proto.h, ETCP_RT_ID_CALL 0x36) + релей медиа
+ headless аудио-сокет (call_headless.c, call_audio_bind) + Opus/jitter/тоны
- chat: события CHAT_EVT_CALL_* (34–40), CHAT_EVT_DM_MESSAGES (41), DM-трамплины
- chatgui: call window, miniaudio I/O, audio_frame_ring, test_audio_jitter
- chatgui-android: CallScreen/IncomingCallDialog, аудио-роутинг, JNI, рингтон
- tests: test_call, test_call_headless
2026-09-16 10:17:57 +03:00
evgeny
73fe99b33f
dm: прямой обмен сообщениями (DM) + soundtouch + архитектура звонков
...
- src/dm/: dm_core/dm_crypto/dm_mailbox — прямой обмен сообщениями (DM)
- lib/soundtouch-master/: vendored SoundTouch (изменение темпа/высоты аудио)
- doc/dm_arch.md, doc/chat_call_arch.md: архитектура DM и звонков
- tests: test_dm.c, test_dm_e2e.c
- chat: рефакторинг chat_* модулей, member_sync, invite_build
- chatgui/chatgui-android: синхронизация с новым API чата
- lib/u_async, debug_config, utun_instance: сопутствующие изменения
2026-09-15 21:09:17 +03:00
evgeny
c474c37284
chatgui/chatgui-android: просмотр изображений с зумом + инфо о медиа
...
- chatgui: просмотрщик изображений (ImageViewerWindow) с зумом/поворотом
- chatgui: отправка картинок как image с определением разрешения и типа
- chatgui: у видео-пузыря строка info (res·size·bitrate) и бейдж только длительность
- chatgui: контекстное меню медиа (сохранить в файл/скачать)
- chatgui-android: большие emoji-only сообщения, битрейт/разрешение у видео
- chatgui-android: сохранение неактивных интерфейсов как закомментированные секции
- chatgui-android: отправка картинок по расширению (jpg/png/gif/bmp/webp)
- photo_sender: content-type и расширение по типу файла
2026-09-09 16:18:26 +03:00
evgeny
f2b34459c3
chatgui: баббл видео — размер + время m:ss (напр. 1.5MB · 0:45)
2026-09-08 01:47:32 +03:00