From 8820e9a3c9bba82b37f271f9067e484d16e59ea4 Mon Sep 17 00:00:00 2001 From: evgeny Date: Sat, 3 Oct 2026 13:13:28 +0300 Subject: [PATCH] Build desktop radio panel and retain audio recovery coverage --- tools/chatgui/CMakeLists.txt | 3 ++- tools/chatgui/tests/test_audio_recovery.cpp | 2 ++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/tools/chatgui/CMakeLists.txt b/tools/chatgui/CMakeLists.txt index 849aea92..7617f556 100644 --- a/tools/chatgui/CMakeLists.txt +++ b/tools/chatgui/CMakeLists.txt @@ -145,6 +145,7 @@ add_executable(vibechat src/callwindow.cpp src/call_audio_engine.cpp src/radio_audio_engine.cpp + src/radiopanel.cpp src/ptt_hotkey_manager.cpp src/radiosettingspage.cpp transport/utun_node.cpp @@ -305,7 +306,7 @@ add_test(NAME test_voice_file COMMAND test_voice_file) if(CMAKE_SYSTEM_NAME STREQUAL "Linux") add_executable(test_audio_recovery tests/test_audio_recovery.cpp src/audio_device.cpp src/sound_manager.cpp src/voice_audio_io.cpp src/audiorecorder.cpp src/call_audio_engine.cpp src/radio_audio_engine.cpp - transport/miniaudio_impl.c transport/audio_diagnostics.cpp) + transport/miniaudio_impl.c transport/audio_diagnostics.cpp transport/config_updater.cpp) target_include_directories(test_audio_recovery PRIVATE ${UTUN_INCLUDE_DIRS}) target_link_libraries(test_audio_recovery PRIVATE ${QT_LIBS} utun_voice utun pthread dl) target_link_options(test_audio_recovery PRIVATE "-Wl,--wrap=ma_context_init" "-Wl,--wrap=ma_context_uninit" diff --git a/tools/chatgui/tests/test_audio_recovery.cpp b/tools/chatgui/tests/test_audio_recovery.cpp index 90ffff07..8fbf7891 100644 --- a/tools/chatgui/tests/test_audio_recovery.cpp +++ b/tools/chatgui/tests/test_audio_recovery.cpp @@ -29,6 +29,8 @@ static bool failStart, failContext, failDevice; static bool pulseIntegration; extern "C" UTUN_INSTANCE* gui_bridge_get_inst() { return &instance; } +extern "C" int gui_bridge_is_uasync_ready() { return instance.ua != nullptr; } +extern "C" void gui_bridge_post_uasync_fn(void (*fn)(void*), void* arg) { uasync_post(instance.ua, fn, arg); } extern "C" ma_result __real_ma_context_init(const ma_backend*, ma_uint32, const ma_context_config*, ma_context*); extern "C" void __real_ma_context_uninit(ma_context*); extern "C" ma_result __real_ma_device_init(ma_context*, const ma_device_config*, ma_device*);