Disable the SDL event pump after the SDL main routine returns, since events will be dispatched by the Cocoa event loop.
This commit is contained in:
parent
909cf0f0b4
commit
655622dc62
3 changed files with 15 additions and 0 deletions
|
@ -43,6 +43,7 @@ extern "C" {
|
||||||
#include "SDL_video.h"
|
#include "SDL_video.h"
|
||||||
|
|
||||||
extern DECLSPEC int SDLCALL SDL_iPhoneSetAnimationCallback(SDL_Window * window, int interval, void (*callback)(void*), void *callbackParam);
|
extern DECLSPEC int SDLCALL SDL_iPhoneSetAnimationCallback(SDL_Window * window, int interval, void (*callback)(void*), void *callbackParam);
|
||||||
|
extern DECLSPEC void SDLCALL SDL_iPhoneSetEventPump(SDL_bool enabled);
|
||||||
|
|
||||||
extern DECLSPEC int SDLCALL SDL_iPhoneKeyboardShow(SDL_Window * window);
|
extern DECLSPEC int SDLCALL SDL_iPhoneKeyboardShow(SDL_Window * window);
|
||||||
extern DECLSPEC int SDLCALL SDL_iPhoneKeyboardHide(SDL_Window * window);
|
extern DECLSPEC int SDLCALL SDL_iPhoneKeyboardHide(SDL_Window * window);
|
||||||
|
|
|
@ -26,6 +26,7 @@
|
||||||
#import "SDL_assert.h"
|
#import "SDL_assert.h"
|
||||||
#import "SDL_hints.h"
|
#import "SDL_hints.h"
|
||||||
#import "../../SDL_hints_c.h"
|
#import "../../SDL_hints_c.h"
|
||||||
|
#import "SDL_system.h"
|
||||||
|
|
||||||
#import "SDL_uikitappdelegate.h"
|
#import "SDL_uikitappdelegate.h"
|
||||||
#import "SDL_uikitopenglview.h"
|
#import "SDL_uikitopenglview.h"
|
||||||
|
@ -105,7 +106,9 @@ static void SDL_IdleTimerDisabledChanged(const char *name, const char *oldValue,
|
||||||
SDL_RegisterHintChangedCb(SDL_HINT_IDLE_TIMER_DISABLED, &SDL_IdleTimerDisabledChanged);
|
SDL_RegisterHintChangedCb(SDL_HINT_IDLE_TIMER_DISABLED, &SDL_IdleTimerDisabledChanged);
|
||||||
|
|
||||||
/* run the user's application, passing argc and argv */
|
/* run the user's application, passing argc and argv */
|
||||||
|
SDL_iPhoneSetEventPump(SDL_TRUE);
|
||||||
exit_status = SDL_main(forward_argc, forward_argv);
|
exit_status = SDL_main(forward_argc, forward_argv);
|
||||||
|
SDL_iPhoneSetEventPump(SDL_FALSE);
|
||||||
|
|
||||||
/* exit, passing the return status from the user's application */
|
/* exit, passing the return status from the user's application */
|
||||||
// We don't actually exit to support applications that do setup in
|
// We don't actually exit to support applications that do setup in
|
||||||
|
|
|
@ -30,9 +30,20 @@
|
||||||
#import <Foundation/Foundation.h>
|
#import <Foundation/Foundation.h>
|
||||||
#include "jumphack.h"
|
#include "jumphack.h"
|
||||||
|
|
||||||
|
static BOOL UIKit_EventPumpEnabled = YES;
|
||||||
|
|
||||||
|
void
|
||||||
|
SDL_iPhoneSetEventPump(SDL_bool enabled)
|
||||||
|
{
|
||||||
|
UIKit_EventPumpEnabled = enabled;
|
||||||
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
UIKit_PumpEvents(_THIS)
|
UIKit_PumpEvents(_THIS)
|
||||||
{
|
{
|
||||||
|
if (!UIKit_EventPumpEnabled)
|
||||||
|
return;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
When the user presses the 'home' button on the iPod
|
When the user presses the 'home' button on the iPod
|
||||||
the application exits -- immediatly.
|
the application exits -- immediatly.
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue