Frame: Move exclusive mode switching to helper function.
This commit is contained in:
parent
aab6b70868
commit
aa0e4472c0
|
@ -521,15 +521,7 @@ void CFrame::OnActive(wxActivateEvent& event)
|
||||||
if (SConfig::GetInstance().bRenderToMain)
|
if (SConfig::GetInstance().bRenderToMain)
|
||||||
m_RenderParent->SetFocus();
|
m_RenderParent->SetFocus();
|
||||||
else if (RendererIsFullscreen() && g_ActiveConfig.ExclusiveFullscreenEnabled())
|
else if (RendererIsFullscreen() && g_ActiveConfig.ExclusiveFullscreenEnabled())
|
||||||
{
|
DoExclusiveFullscreen(true); // Regain exclusive mode
|
||||||
// Regain exclusive mode if it was lost due to a focus change.
|
|
||||||
if (g_renderer && !g_renderer->IsFullscreen())
|
|
||||||
{
|
|
||||||
bool was_unpaused = Core::PauseAndLock(true);
|
|
||||||
g_renderer->SetFullscreen(true);
|
|
||||||
Core::PauseAndLock(false, was_unpaused);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (SConfig::GetInstance().m_PauseOnFocusLost && Core::GetState() == Core::CORE_PAUSE)
|
if (SConfig::GetInstance().m_PauseOnFocusLost && Core::GetState() == Core::CORE_PAUSE)
|
||||||
DoPause();
|
DoPause();
|
||||||
|
@ -1170,22 +1162,14 @@ void CFrame::DoFullscreen(bool enable_fullscreen)
|
||||||
}
|
}
|
||||||
else if (g_ActiveConfig.ExclusiveFullscreenEnabled())
|
else if (g_ActiveConfig.ExclusiveFullscreenEnabled())
|
||||||
{
|
{
|
||||||
if (g_renderer && !enable_fullscreen)
|
if (!enable_fullscreen)
|
||||||
{
|
DoExclusiveFullscreen(false);
|
||||||
bool was_unpaused = Core::PauseAndLock(true);
|
|
||||||
g_renderer->SetFullscreen(false);
|
|
||||||
Core::PauseAndLock(false, was_unpaused);
|
|
||||||
}
|
|
||||||
|
|
||||||
m_RenderFrame->ShowFullScreen(enable_fullscreen, wxFULLSCREEN_ALL);
|
m_RenderFrame->ShowFullScreen(enable_fullscreen, wxFULLSCREEN_ALL);
|
||||||
m_RenderFrame->Raise();
|
m_RenderFrame->Raise();
|
||||||
|
|
||||||
if (g_renderer && enable_fullscreen)
|
if (enable_fullscreen)
|
||||||
{
|
DoExclusiveFullscreen(true);
|
||||||
bool was_unpaused = Core::PauseAndLock(true);
|
|
||||||
g_renderer->SetFullscreen(true);
|
|
||||||
Core::PauseAndLock(false, was_unpaused);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -1194,6 +1178,16 @@ void CFrame::DoFullscreen(bool enable_fullscreen)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void CFrame::DoExclusiveFullscreen(bool enable_fullscreen)
|
||||||
|
{
|
||||||
|
if (g_renderer && g_renderer->IsFullscreen() != enable_fullscreen)
|
||||||
|
{
|
||||||
|
bool was_unpaused = Core::PauseAndLock(true);
|
||||||
|
g_renderer->SetFullscreen(enable_fullscreen);
|
||||||
|
Core::PauseAndLock(false, was_unpaused);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
const CGameListCtrl* CFrame::GetGameListCtrl() const
|
const CGameListCtrl* CFrame::GetGameListCtrl() const
|
||||||
{
|
{
|
||||||
return m_GameListCtrl;
|
return m_GameListCtrl;
|
||||||
|
|
|
@ -106,6 +106,7 @@ public:
|
||||||
bool RendererHasFocus();
|
bool RendererHasFocus();
|
||||||
bool RendererIsFullscreen();
|
bool RendererIsFullscreen();
|
||||||
void DoFullscreen(bool bF);
|
void DoFullscreen(bool bF);
|
||||||
|
void DoExclusiveFullscreen(bool bF);
|
||||||
void ToggleDisplayMode(bool bFullscreen);
|
void ToggleDisplayMode(bool bFullscreen);
|
||||||
static void ConnectWiimote(int wm_idx, bool connect);
|
static void ConnectWiimote(int wm_idx, bool connect);
|
||||||
void UpdateTitle(const std::string& str);
|
void UpdateTitle(const std::string& str);
|
||||||
|
|
Loading…
Reference in New Issue