Qt: Fix overrides getting discarded (fixes #1354)
Vicki Pfau vi@endrift.com
Thu, 14 Mar 2019 18:33:08 -0700
2 files changed,
28 insertions(+),
2 deletions(-)
M
CHANGES
→
CHANGES
@@ -21,6 +21,7 @@ Other fixes:
- Qt: More app metadata fixes - Qt: Fix load recent from archive (fixes mgba.io/i/1325) - LR35902: Fix disassembly of several CB-prefix instructions + - Qt: Fix overrides getting discarded (fixes mgba.io/i/1354) Misc: - GBA Savedata: EEPROM performance fixes - GBA Savedata: Automatically map 1Mbit Flash files as 1Mbit Flash
M
src/platform/qt/CoreController.cpp
→
src/platform/qt/CoreController.cpp
@@ -866,8 +866,33 @@ m_threadContext.core->opts.mute = fakeBool;
m_threadContext.impl->sync.fpsTarget = m_fpsTarget; setSync(true); } - // XXX: Have a way of just updating opts - m_threadContext.core->loadConfig(m_threadContext.core, &m_threadContext.core->config); + // XXX: Have a way of just updating volume + switch (platform()) { +#ifdef M_CORE_GBA + case PLATFORM_GBA: { + GBA* gba = static_cast<GBA*>(m_threadContext.core->board); + if (m_threadContext.core->opts.mute) { + gba->audio.masterVolume = 0; + } else { + gba->audio.masterVolume = m_threadContext.core->opts.volume; + } + break; + } +#endif +#ifdef M_CORE_GB + case PLATFORM_GB: { + GB* gb = static_cast<GB*>(m_threadContext.core->board); + if (m_threadContext.core->opts.mute) { + gb->audio.masterVolume = 0; + } else { + gb->audio.masterVolume = m_threadContext.core->opts.volume; + } + break; + } +#endif + default: + break; + } } CoreController::Interrupter::Interrupter(CoreController* parent, bool fromThread)