From a3ff42793f18f0ec07f4eec6f0816036df94e0f6 Mon Sep 17 00:00:00 2001 From: Mat Sutcliffe Date: Sun, 16 Jun 2019 14:50:34 +0100 Subject: [PATCH] Disable X-Plane's built-in voice ATIS when XSwiftBus is active. --- src/xswiftbus/plugin.cpp | 5 +++++ src/xswiftbus/plugin.h | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/xswiftbus/plugin.cpp b/src/xswiftbus/plugin.cpp index 9dc935607..603217976 100644 --- a/src/xswiftbus/plugin.cpp +++ b/src/xswiftbus/plugin.cpp @@ -66,10 +66,15 @@ namespace XSwiftBus // Delay the start of XSwiftBus. // http://www.xsquawkbox.net/xpsdk/mediawiki/DeferredInitialization XPLMRegisterFlightLoopCallback(startServerDeferred, -1, this); + + m_atisSaved = m_atisEnabled.get(); + m_atisEnabled.set(0); } CPlugin::~CPlugin() { + m_atisEnabled.set(m_atisSaved); + XPLMUnregisterFlightLoopCallback(flightLoopCallback, this); m_dbusConnection->close(); m_shouldStop = true; diff --git a/src/xswiftbus/plugin.h b/src/xswiftbus/plugin.h index 656fed6ae..656a0aebb 100644 --- a/src/xswiftbus/plugin.h +++ b/src/xswiftbus/plugin.h @@ -72,6 +72,9 @@ namespace XSwiftBus CMenu m_planeViewSubMenu; CMenuItem planeViewOwnAircraftMenuItem; + DataRef m_atisEnabled; + decltype(m_atisEnabled.get()) m_atisSaved = 0; + std::thread m_dbusThread; bool m_isRunning = false; bool m_shouldStop = false;