Properly set up default resolutions.
Fixes Bugzilla #1191. Thanks to Jeremy Jurksztowicz for the fix!
This commit is contained in:
parent
dfe639930e
commit
1fc724be50
1 changed files with 8 additions and 3 deletions
|
@ -202,7 +202,7 @@ UIKit_GetDisplayModes(_THIS, SDL_VideoDisplay * display)
|
||||||
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
UIKit_AddDisplay(UIScreen *uiscreen, int w, int h)
|
UIKit_AddDisplay(UIScreen *uiscreen, UIScreenMode *uimode, int w, int h)
|
||||||
{
|
{
|
||||||
SDL_VideoDisplay display;
|
SDL_VideoDisplay display;
|
||||||
SDL_DisplayMode mode;
|
SDL_DisplayMode mode;
|
||||||
|
@ -212,6 +212,9 @@ UIKit_AddDisplay(UIScreen *uiscreen, int w, int h)
|
||||||
mode.h = h;
|
mode.h = h;
|
||||||
mode.refresh_rate = 0;
|
mode.refresh_rate = 0;
|
||||||
|
|
||||||
|
[uimode retain];
|
||||||
|
mode.driverdata = uimode;
|
||||||
|
|
||||||
SDL_zero(display);
|
SDL_zero(display);
|
||||||
display.desktop_mode = mode;
|
display.desktop_mode = mode;
|
||||||
display.current_mode = mode;
|
display.current_mode = mode;
|
||||||
|
@ -238,8 +241,9 @@ UIKit_VideoInit(_THIS)
|
||||||
if (!SDL_UIKit_supports_multiple_displays) {
|
if (!SDL_UIKit_supports_multiple_displays) {
|
||||||
// Just give 'em the whole main screen.
|
// Just give 'em the whole main screen.
|
||||||
UIScreen *uiscreen = [UIScreen mainScreen];
|
UIScreen *uiscreen = [UIScreen mainScreen];
|
||||||
|
UIScreenMode *uiscreenmode = [uiscreen currentMode];
|
||||||
const CGRect rect = [uiscreen bounds];
|
const CGRect rect = [uiscreen bounds];
|
||||||
UIKit_AddDisplay(uiscreen, (int)rect.size.width, (int)rect.size.height);
|
UIKit_AddDisplay(uiscreen, uiscreenmode, (int)rect.size.width, (int)rect.size.height);
|
||||||
} else {
|
} else {
|
||||||
const NSArray *screens = [UIScreen screens];
|
const NSArray *screens = [UIScreen screens];
|
||||||
const NSUInteger screen_count = [screens count];
|
const NSUInteger screen_count = [screens count];
|
||||||
|
@ -247,8 +251,9 @@ UIKit_VideoInit(_THIS)
|
||||||
for (i = 0; i < screen_count; i++) {
|
for (i = 0; i < screen_count; i++) {
|
||||||
// the main screen is the first element in the array.
|
// the main screen is the first element in the array.
|
||||||
UIScreen *uiscreen = (UIScreen *) [screens objectAtIndex:i];
|
UIScreen *uiscreen = (UIScreen *) [screens objectAtIndex:i];
|
||||||
|
UIScreenMode *uiscreenmode = [uiscreen currentMode];
|
||||||
const CGSize size = [[uiscreen currentMode] size];
|
const CGSize size = [[uiscreen currentMode] size];
|
||||||
UIKit_AddDisplay(uiscreen, (int) size.width, (int) size.height);
|
UIKit_AddDisplay(uiscreen, uiscreenmode, (int)size.width, (int)size.height);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue