]> git.tdb.fi Git - libs/core.git/blobdiff - source/core/android/mainthread.cpp
Use default member initializers and constructor delegation
[libs/core.git] / source / core / android / mainthread.cpp
index d394f838bcd497495255dc14296313f546a7813f..b816bf638c4543957b3a0a7814c2010ff0f561ec 100644 (file)
@@ -1,5 +1,6 @@
 #include <cstring>
 #include <cstdlib>
+#include <android/window.h>
 #include <msp/fs/dir.h>
 #include <msp/fs/path.h>
 #include <msp/fs/utils.h>
@@ -14,8 +15,7 @@ namespace Android {
 
 MainThread::MainThread(ANativeActivity *a):
        asset_manager(a->assetManager),
-       int_data_path(a->internalDataPath),
-       starting_up(true)
+       int_data_path(a->internalDataPath)
 {
        attach_to_activity(a);
        startup_mutex.lock();
@@ -32,6 +32,8 @@ void MainThread::attach_to_activity(ANativeActivity *a)
        activity->callbacks->onInputQueueCreated = &input_queue_created;
        activity->callbacks->onInputQueueDestroyed = &input_queue_destroyed;
        activity->instance = this;
+
+       set_window_flags(AWINDOW_FLAG_FULLSCREEN, 0);
 }
 
 void MainThread::wait_for_app_created()
@@ -48,6 +50,19 @@ void MainThread::resume_startup()
        }
 }
 
+JavaVM *MainThread::get_java_vm() const
+{
+       if(!activity)
+               return 0;
+
+       return activity->vm;
+}
+
+void MainThread::set_window_flags(unsigned set, unsigned clear)
+{
+       ANativeActivity_setWindowFlags(activity, set, clear);
+}
+
 void MainThread::main()
 {
        /* I have no idea how dependable this is, but it seems to be the only way