mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-07-29 00:59:44 -06:00
@ -876,46 +876,39 @@ void CFrame::ToggleDisplayMode(bool bFullscreen)
|
||||
#elif defined(HAVE_XRANDR) && HAVE_XRANDR
|
||||
m_XRRConfig->ToggleDisplayMode(bFullscreen);
|
||||
#elif defined __APPLE__
|
||||
#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_7
|
||||
NSView *view = (NSView *) m_RenderFrame->GetHandle();
|
||||
NSWindow *window = [view window];
|
||||
|
||||
if (![window respondsToSelector:@selector(toggleFullScreen:)])
|
||||
#endif
|
||||
{
|
||||
if (!bFullscreen) {
|
||||
CGRestorePermanentDisplayConfiguration();
|
||||
CGDisplayRelease(CGMainDisplayID());
|
||||
return;
|
||||
}
|
||||
|
||||
CFArrayRef modes = CGDisplayAvailableModes(CGMainDisplayID());
|
||||
for (CFIndex i = 0; i < CFArrayGetCount(modes); i++)
|
||||
{
|
||||
CFDictionaryRef mode;
|
||||
CFNumberRef ref;
|
||||
int x, y, w, h, d;
|
||||
|
||||
sscanf(SConfig::GetInstance().m_LocalCoreStartupParameter.\
|
||||
strFullscreenResolution.c_str(), "%dx%d", &x, &y);
|
||||
|
||||
mode = (CFDictionaryRef)CFArrayGetValueAtIndex(modes, i);
|
||||
ref = (CFNumberRef)CFDictionaryGetValue(mode, kCGDisplayWidth);
|
||||
CFNumberGetValue(ref, kCFNumberIntType, &w);
|
||||
ref = (CFNumberRef)CFDictionaryGetValue(mode, kCGDisplayHeight);
|
||||
CFNumberGetValue(ref, kCFNumberIntType, &h);
|
||||
ref = (CFNumberRef)CFDictionaryGetValue(mode,
|
||||
kCGDisplayBitsPerPixel);
|
||||
CFNumberGetValue(ref, kCFNumberIntType, &d);
|
||||
|
||||
if (CFDictionaryContainsKey(mode, kCGDisplayModeIsStretched))
|
||||
continue;
|
||||
if (w != x || h != y || d != 32)
|
||||
continue;;
|
||||
|
||||
CGDisplaySwitchToMode(CGMainDisplayID(), mode);
|
||||
}
|
||||
if (!bFullscreen) {
|
||||
CGRestorePermanentDisplayConfiguration();
|
||||
CGDisplayRelease(CGMainDisplayID());
|
||||
return;
|
||||
}
|
||||
|
||||
CFArrayRef modes = CGDisplayAvailableModes(CGMainDisplayID());
|
||||
for (CFIndex i = 0; i < CFArrayGetCount(modes); i++)
|
||||
{
|
||||
CFDictionaryRef mode;
|
||||
CFNumberRef ref;
|
||||
int x, y, w, h, d;
|
||||
|
||||
sscanf(SConfig::GetInstance().m_LocalCoreStartupParameter.\
|
||||
strFullscreenResolution.c_str(), "%dx%d", &x, &y);
|
||||
|
||||
mode = (CFDictionaryRef)CFArrayGetValueAtIndex(modes, i);
|
||||
ref = (CFNumberRef)CFDictionaryGetValue(mode, kCGDisplayWidth);
|
||||
CFNumberGetValue(ref, kCFNumberIntType, &w);
|
||||
ref = (CFNumberRef)CFDictionaryGetValue(mode, kCGDisplayHeight);
|
||||
CFNumberGetValue(ref, kCFNumberIntType, &h);
|
||||
ref = (CFNumberRef)CFDictionaryGetValue(mode,
|
||||
kCGDisplayBitsPerPixel);
|
||||
CFNumberGetValue(ref, kCFNumberIntType, &d);
|
||||
|
||||
if (CFDictionaryContainsKey(mode, kCGDisplayModeIsStretched))
|
||||
continue;
|
||||
if (w != x || h != y || d != 32)
|
||||
continue;;
|
||||
|
||||
CGDisplaySwitchToMode(CGMainDisplayID(), mode);
|
||||
}
|
||||
|
||||
#endif
|
||||
}
|
||||
|
||||
@ -975,14 +968,6 @@ void CFrame::StartGame(const std::string& filename)
|
||||
m_RenderFrame->Show();
|
||||
}
|
||||
|
||||
#if defined(__APPLE__) && MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_7
|
||||
NSView *view = (NSView *) m_RenderFrame->GetHandle();
|
||||
NSWindow *window = [view window];
|
||||
|
||||
if ([window respondsToSelector:@selector(setCollectionBehavior:)])
|
||||
[window setCollectionBehavior:NSWindowCollectionBehaviorFullScreenPrimary];
|
||||
#endif
|
||||
|
||||
wxBeginBusyCursor();
|
||||
|
||||
DoFullscreen(SConfig::GetInstance().m_LocalCoreStartupParameter.bFullscreen);
|
||||
@ -1155,23 +1140,8 @@ void CFrame::DoStop()
|
||||
if (SConfig::GetInstance().m_LocalCoreStartupParameter.bHideCursor)
|
||||
m_RenderParent->SetCursor(wxNullCursor);
|
||||
DoFullscreen(false);
|
||||
|
||||
if (!SConfig::GetInstance().m_LocalCoreStartupParameter.bRenderToMain)
|
||||
{
|
||||
m_RenderFrame->Destroy();
|
||||
}
|
||||
#if defined(__APPLE__) && MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_7
|
||||
else
|
||||
{
|
||||
// Disable the full screen button when not in a game.
|
||||
NSView *view = (NSView *) m_RenderFrame->GetHandle();
|
||||
NSWindow *window = [view window];
|
||||
|
||||
if ([window respondsToSelector:@selector(setCollectionBehavior:)])
|
||||
[window setCollectionBehavior:NSWindowCollectionBehaviorDefault];
|
||||
}
|
||||
#endif
|
||||
|
||||
m_RenderParent = NULL;
|
||||
|
||||
// Clean framerate indications from the status bar.
|
||||
|
Reference in New Issue
Block a user