]> git.jsancho.org Git - lugaru.git/blobdiff - Source/OpenGL_Windows.cpp
Allow Mac OS X builds to quit with Apple-Q hotkey.
[lugaru.git] / Source / OpenGL_Windows.cpp
index 59df351e4574ceea0416e978c3e18ddb1757ef52..2efaac415be6bcf6fdc188de8a408bd63ad35fee 100644 (file)
@@ -504,6 +504,16 @@ static void sdlEventProc(const SDL_Event &e, Game &game)
                 }
             }
 
+            #if (defined(__APPLE__) && defined(__MACH__))
+            if (e.key.keysym.sym == SDLK_q)
+            {
+                if (e.key.keysym.mod & KMOD_META)
+                {
+                    gDone=true;
+                }
+            }
+            #endif
+
             else if (e.key.keysym.sym == SDLK_RETURN)
             {
                 if (e.key.keysym.mod & KMOD_ALT)
@@ -1442,6 +1452,19 @@ static inline void chdirToAppPath(const char *argv0)
     char *dir = calcBaseDir(argv0);
     if (dir)
     {
+        #if (defined(__APPLE__) && defined(__MACH__))
+        // Chop off /Contents/MacOS if it's at the end of the string, so we
+        //  land in the base of the app bundle.
+        const size_t len = strlen(dir);
+        const char *bundledirs = "/Contents/MacOS";
+        const size_t bundledirslen = strlen(bundledirs);
+        if (len > bundledirslen)
+        {
+            char *ptr = (dir + len) - bundledirslen;
+            if (strcasecmp(ptr, bundledirs) == 0)
+                *ptr = '\0';
+        }
+        #endif
         chdir(dir);
         free(dir);
     }