commit 3441bb94924b4aac499ed7c6bd6a23b9bd37bd03
Author: Leszek Koltunski <leszek@koltunski.pl>
Date:   Wed Jul 20 00:03:49 2022 +0200

    Lots of progress with the main screen

diff --git a/distorted-sokoban/src/main/AndroidManifest.xml b/distorted-sokoban/src/main/AndroidManifest.xml
index 7ade1da..f3cf87a 100644
--- a/distorted-sokoban/src/main/AndroidManifest.xml
+++ b/distorted-sokoban/src/main/AndroidManifest.xml
@@ -15,7 +15,7 @@
     <uses-feature android:name="android.hardware.touchscreen"/>
     
     <application android:icon="@drawable/icon" android:label="@string/app_name">
-        <activity android:name=".SokobanSplash"
+        <activity android:name=".SokobanActivity"
                   android:label="@string/app_name"
                   android:exported="true"
                   android:screenOrientation="portrait"
@@ -26,17 +26,6 @@
                 <category android:name="android.intent.category.LAUNCHER" />
             </intent-filter>
         </activity>
-        <activity android:name=".SokobanActivity"
-                  android:exported="true"
-                  android:screenOrientation="portrait"
-                  android:label="@string/app_name"
-                  android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
-                  android:finishOnTaskLaunch="true">
-            <intent-filter>
-                <action android:name="android.intent.action.MAIN" />
-                <category android:name="android.intent.category.DEFAULT" />
-            </intent-filter>
-        </activity>
     </application>
 
 </manifest>
\ No newline at end of file
diff --git a/distorted-sokoban/src/main/java/org/distorted/sokoban/SokobanActivity.java b/distorted-sokoban/src/main/java/org/distorted/sokoban/SokobanActivity.java
index 3d4175d..02d67ce 100644
--- a/distorted-sokoban/src/main/java/org/distorted/sokoban/SokobanActivity.java
+++ b/distorted-sokoban/src/main/java/org/distorted/sokoban/SokobanActivity.java
@@ -76,6 +76,24 @@ public class SokobanActivity extends Activity
 
     LinearLayout upper = findViewById(R.id.upper_layout);
     createUpperLayout(upper);
+
+    SokobanLevels.init(this);
+    SokobanLevels sl = SokobanLevels.getInstance();
+    SokobanDatabase.init(this);
+    SokobanTimer.init();
+    SokobanRecords.setLevels(sl);
+
+    GridView gridview = findViewById(R.id.gridview);
+    gridview.setAdapter(new SokobanGridAdapter(this));
+
+    gridview.setOnItemClickListener(new AdapterView.OnItemClickListener()
+      {
+      @Override
+      public void onItemClick(AdapterView<?> parent, View v, int position, long id)
+        {
+        android.util.Log.e("D", "position="+position);
+        }
+      });
     }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
@@ -116,18 +134,6 @@ public class SokobanActivity extends Activity
   public void onResume()
     {
     super.onResume();
-
-    GridView gridview = findViewById(R.id.gridview);
-    gridview.setAdapter(new SokobanGridAdapter(this));
-
-    gridview.setOnItemClickListener(new AdapterView.OnItemClickListener()
-      {
-      @Override
-      public void onItemClick(AdapterView<?> parent, View v, int position, long id)
-        {
-        android.util.Log.e("D", "position="+position);
-        }
-      });
     }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
@@ -136,6 +142,7 @@ public class SokobanActivity extends Activity
   public void onPause()
     {
     super.onPause();
+    SokobanDatabase.onExit();
     }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
diff --git a/distorted-sokoban/src/main/java/org/distorted/sokoban/SokobanDatabase.java b/distorted-sokoban/src/main/java/org/distorted/sokoban/SokobanDatabase.java
index f1c0ac3..a2aea38 100644
--- a/distorted-sokoban/src/main/java/org/distorted/sokoban/SokobanDatabase.java
+++ b/distorted-sokoban/src/main/java/org/distorted/sokoban/SokobanDatabase.java
@@ -628,7 +628,6 @@ public class SokobanDatabase
 	private SokobanDatabase( Context co )
 	{
 	    mContext = new WeakReference<>(co);
-	    
 	    SokobanLevels levels = SokobanLevels.getInstance();
 	    mNumRunnings = 0;
 	    mNumPlayings = 0;
@@ -766,6 +765,13 @@ public class SokobanDatabase
 	  if( mThis==null ) mThis = new SokobanDatabase((Context)act);
 	}
 
+///////////////////////////////////////////////////////////////////
+
+  public static void onExit()
+		{
+		mThis = null;
+		}
+
 ///////////////////////////////////////////////////////////////////
 
 	public int getNumRunnings()
diff --git a/distorted-sokoban/src/main/java/org/distorted/sokoban/SokobanGridAdapter.java b/distorted-sokoban/src/main/java/org/distorted/sokoban/SokobanGridAdapter.java
index 038c36a..979e645 100644
--- a/distorted-sokoban/src/main/java/org/distorted/sokoban/SokobanGridAdapter.java
+++ b/distorted-sokoban/src/main/java/org/distorted/sokoban/SokobanGridAdapter.java
@@ -1,7 +1,5 @@
 package org.distorted.sokoban;
 
-import android.content.Context;
-
 import android.util.TypedValue;
 import android.view.LayoutInflater;
 import android.view.View;
diff --git a/distorted-sokoban/src/main/java/org/distorted/sokoban/SokobanLevels.java b/distorted-sokoban/src/main/java/org/distorted/sokoban/SokobanLevels.java
index 1fe2412..ed360b2 100644
--- a/distorted-sokoban/src/main/java/org/distorted/sokoban/SokobanLevels.java
+++ b/distorted-sokoban/src/main/java/org/distorted/sokoban/SokobanLevels.java
@@ -114,7 +114,7 @@ public class SokobanLevels
       mNumLevels = 0;
       mScrollPos = 0;
       mScrollSpeed=0;
-      
+
       res = context.getResources();
       
       mVertical = (scrWidth<=scrHeight);
diff --git a/distorted-sokoban/src/main/java/org/distorted/sokoban/SokobanSplash.java b/distorted-sokoban/src/main/java/org/distorted/sokoban/SokobanSplash.java
deleted file mode 100644
index e5e3675..0000000
--- a/distorted-sokoban/src/main/java/org/distorted/sokoban/SokobanSplash.java
+++ /dev/null
@@ -1,90 +0,0 @@
-package org.distorted.sokoban;
-
-import android.app.Activity;
-import android.content.Intent;
-import android.os.Bundle;
-import android.util.Log;
-
-import com.google.firebase.analytics.FirebaseAnalytics;
-import com.google.firebase.inappmessaging.FirebaseInAppMessaging;
-
-import org.distorted.messaging.SokobanInAppMessanging;
-
-///////////////////////////////////////////////////////////////////
-
-public class SokobanSplash extends Activity
-{
-	private int sleepTime=2000;
-
-  private class SplashThread extends Thread
-    {
-    private boolean bootup=true;
-		
-		public void run() 
-		  {
-			int milis=0;
-			
-			while(bootup)
-			  {
-				try
-				  {
-					milis+=100;
-					Thread.sleep(100);
-				  }
-				catch( InterruptedException ex) { }
-			  }
-			
-			if( milis<sleepTime )
-			  {
-				try
-				  {
-					Thread.sleep(sleepTime-milis);
-				  }
-				catch( InterruptedException ex) { }
-			  }
-
-			finish();
-			Intent mainInt = new Intent( getApplicationContext(), SokobanActivity.class);
-			startActivity(mainInt);
-		  }
-		public void bootupReady()
-		{
-			bootup=false;
-		}
-    };
-    
-///////////////////////////////////////////////////////////////////
-	
-  public void onCreate(Bundle savedInstanceState)
-    {
-    super.onCreate(savedInstanceState);
-  	setContentView(R.layout.splash);
-    sleepTime=2000;
-    }
-
-///////////////////////////////////////////////////////////////////
-
-  public void onStart()
-    {
-    super.onStart();
-    	
-    SplashThread splashThread = new SplashThread();
-    splashThread.start();
-    	
-    SokobanLevels.init(this);
-    SokobanLevels sl = SokobanLevels.getInstance();
-        
-    SokobanCanvas.init(this);
-    SokobanCanvas.setActivity(this);
-    	
-    SokobanDatabase.init(this);
-    SokobanTimer.init();
-    SokobanCanvas.setLevels(sl);
-    SokobanRecords.setLevels(sl);
-
-    splashThread.bootupReady();
-    }
-
-///////////////////////////////////////////////////////////////////
-// end of file
-}
\ No newline at end of file
