]> git.localhorst.tv Git - blank.git/blobdiff - src/app/init.cpp
fix direct rendering
[blank.git] / src / app / init.cpp
index 81c2e9291cec57c61d039e223922c73d52adf8fd..fea5653cf1cf6499bb378b22286169cf2c15fff8 100644 (file)
@@ -77,8 +77,8 @@ SDLError::SDLError(const std::string &msg)
 
 
 InitSDL::InitSDL() {
-       if (SDL_Init(0) != 0) {
-               throw SDLError("SDL_Init(0)");
+       if (SDL_Init(SDL_INIT_EVENTS) != 0) {
+               throw SDLError("SDL_Init(SDL_INIT_EVENTS)");
        }
 }
 
@@ -91,6 +91,8 @@ InitVideo::InitVideo() {
        if (SDL_InitSubSystem(SDL_INIT_VIDEO) != 0) {
                throw SDLError("SDL_InitSubSystem(SDL_INIT_VIDEO)");
        }
+       // SDL seems to start out in text input state
+       SDL_StopTextInput();
 }
 
 InitVideo::~InitVideo() {
@@ -155,9 +157,9 @@ InitGL::InitGL(bool double_buffer, int sample_size) {
                throw SDLError("SDL_GL_SetAttribute(SDL_GL_CONTEXT_PROFILE_MASK, SDL_GL_CONTEXT_PROFILE_CORE)");
        }
 
-       if (double_buffer) {
-               if (SDL_GL_SetAttribute(SDL_GL_DOUBLEBUFFER, 1) != 0) {
-                       throw SDLError("SDL_GL_SetAttribute(SDL_GL_DOUBLEBUFFER, 1)");
+       if (!double_buffer) {
+               if (SDL_GL_SetAttribute(SDL_GL_DOUBLEBUFFER, 0) != 0) {
+                       throw SDLError("SDL_GL_SetAttribute(SDL_GL_DOUBLEBUFFER, 0)");
                }
        }