evgeny
780e7220c3
Include model roles and row actions required by subgroup details
2026-11-02 23:34:22 +01:00
evgeny
7062905d48
Add simultaneous calls to device groups
2026-11-02 21:53:20 +01:00
evgeny
24cb0eb463
Refine device group controls and aggregate status indicators
2026-11-02 21:02:14 +01:00
evgeny
d7006aecb5
Add signed device groups and compact NODEINFO packing
2026-11-02 18:47:58 +01:00
evgeny
54fdd167c2
Use server and storage role icons instead of member avatars
2026-10-28 17:49:24 +01:00
evgeny
a7a7e4b5a1
Cancel member actions when a click becomes a drag
2026-10-27 03:54:03 +01:00
evgeny
37cf6089e7
Add caller decision controls and colored phone presence on desktop
2026-10-19 14:54:01 +02:00
evgeny
fdd39e82e2
Show desktop radio subscription on the call icon and allow Android icon tint
2026-10-19 14:30:35 +02:00
evgeny
a8c2ce8401
Render and handle speaker, radio call, and phone buttons in desktop member rows
2026-10-19 14:21:37 +02:00
evgeny
d5174262d8
Show speaking waves for locally muted radio members
2026-10-07 19:16:15 +02:00
evgeny
e61fc8e392
Show silent, speaking and muted radio speakers in member rows
2026-10-07 19:01:53 +02:00
evgeny
7e19cbaf3a
Add local per-member radio mute controls on desktop and Android
2026-10-07 13:35:25 +02:00
evgeny
29ee55d751
Enlarge desktop chat and member avatars
2026-10-07 01:18:31 +02:00
evgeny
3f4df4233b
Keep member avatar drags separate from viewer clicks
2026-10-06 20:01:38 +02:00
evgeny
fd8054bc7b
Open user avatar galleries from desktop member icons
2026-10-06 19:36:35 +02:00
evgeny
6c5c1ef0a0
Show enabled radios in desktop member rows
2026-10-04 15:59:45 +02:00
evgeny
fe23f4ca56
Add invitation action to desktop member rows
2026-10-04 14:54:58 +02:00
evgeny
1e9264735b
Fix desktop hover and emoji playback; share Android chat background
2026-10-02 23:19:13 +03:00
evgeny
0f308fdbd7
chatgui/chatgui-android: уведомления со звуком, флаги и прочие улучшения UI
2026-09-10 00:23:14 +03:00
evgeny
a17a85a383
chat: deleted-аккаунты — колонка deleted, скрытие/зачёркивание, не подключаемся
2026-09-07 01:40:53 +03:00
evgeny
b2e4aadbf0
e2e: AES-128-CCM encryption via BGP router (ROUTER_FLAG_ENCRYPTED), ECDH key per peer-pair from NODEINFO pubkeys, cache 8 entries
...
- etcp_router.h/c: new flag ROUTER_FLAG_ENCRYPTED (0x04), etcp_route_send_encrypted(), inflight/retrans/send_q support
- utun_instance.h: e2e_ctx_cache[8] — per-peer sc_context_t cache with derived session key
- topo_node.c: topo_node_sign_self() — single point for Ed25519 self-signing of NODEINFO
- topo_node.c: fix stale x25519_self_sig after address update (topo_node_sign_self call)
- nat_detection.c: fix stale x25519_self_sig after in-place socket meta modification
- test_etcp_router_unit: 5 E2E tests (basic round-trip, no NODEINFO drop, tampered, cache reuse, ENCRYPTED+SIGNED combined)
- builds clean, 70/70 tests pass
2026-08-09 08:19:20 +03:00
evgeny
38c9f229bc
stcp: ed25519 pubkey exchange in handshake, fix instance destroy segfault, fix chat_tcp_test
...
- u_async.c: process immediate_queue BEFORE epoll_wait in uasync_poll
- stcp_link.c: defensive NULL etcp_conn/etcp_link in stcp_link_close
- utun_instance.c: move stcp_server_list_destroy_all to Phase J (before ETCP),
add deferred drain in both Phase J and L
- stcp.h/c: STCP_HS_ENC_CLIENT 6→38, STCP_HS_ENC_SERVER 7→39,
exchange ed25519_pubkey in both handshake directions
- etcp_connections.c: copy peer_ed25519 from STCP to ETCP_CONN in
etcp_link_enter_ready_tcp; guard link->etcp in tcp_link_close_cb
- chat_sync.c: fix lk->conn NULL dereference for TCP links
- test_stcp.c: update stcp_server_create/stcp_client_connect callsites
- tools/chat_tcp_test: change transport udp→tcp
2026-08-07 00:48:27 +03:00
evgeny
d773f1724a
refactor: STCP connections as ETCP links (is_tcp)
...
- Add is_tcp, tcp_link, tcp_reconnect_* fields to ETCP_LINK
- Remove transport_link from ETCP_CONN, add tcp_link_count
- stcp_link: replace embedded etcp_conn with pointer; add etcp_link backpointer
- stcp_link: link_rx_cb routes ETCP data to etcp_conn_input
- stcp_link: call on_close_cb in close
- New TCP functions: etcp_link_enter_ready_tcp, etcp_tcp_link_start_connect,
etcp_tcp_link_start_reconnect, tcp_link_close_cb, etcp_tcp_send
- etcp_link_new: handle NULL conn for TCP links; skip enter_init for TCP
- etcp_link_close: close stcp_link for TCP
- etcp_encrypt_send: redirect TCP to etcp_tcp_send (skips AES-CCM)
- tcp_server_on_link: create ETCP_LINK(is_tcp=1) + enter_ready_tcp
- etcp_connect: TCP addrs -> etcp_tcp_link_start_connect
- Remove ctx->tcp_link/tcp_ready
- test_stcp_traffic: find stcp_link via links->is_tcp instead of transport_link
- 66/68 tests pass; 2 STCP tests expected to fail (integration not complete)
2026-08-06 22:14:32 +03:00
evgeny
50156e12af
android: member list screen + link status dots, ipv6 autoconnect fixes
...
Android chatgui:
- New MemberListScreen with member list, detail card, edit dialog
- Link status dots (green/red/grey) per address in detail card (1s poll)
- Self-node name coloured green
- ChatScreen: people icon in TopAppBar
IPv6 autoconnect fixes (3 bugs in conn_mgr/topo):
- topo_node_sqlite_node_load: load v6 addresses from DB
- topo_node_registry_store: merge v6_addrs into existing node
- cm_sock_v6_classify: wildcard [::] treated as CM_V6_DIR
- cm_add_v6_link: htons(port) was missing
Memory fixes:
- strdup→u_strdup in bridge (7 instances)
- u_realloc cap update before success check (3 instances)
- char sql[256]→[512] for truncated SELECT
Chat member hash now includes addresses for change detection
Linux chatgui:
- Link status dots in AccountList detail panel (1s poll)
- Self-node name in green in member list
2026-08-01 23:40:58 +03:00
Evgeny
12904a97e0
chatgui: AccountDelegate — palette-consistent colors (light/alternateBase instead of hardcoded)
2026-07-26 07:43:01 +03:00
Evgeny
77d89b841a
chatgui: double-click member edit, fix delegate backgrounds; transport: invite_sync/member_sync robustness
2026-07-26 07:18:27 +03:00
Evgeny
090acc1f00
etc/rtt: UPSERT node_update_verified; gui: account delegate (rtt+nat subline), context menu member props (admin/supernode), cleanOrphanedPeers, refreshRtt timer 2s
2026-07-22 01:15:33 +03:00