commit 10d0489257c79a2f82d599386951733a4aaa07d4
Author: leszek <leszek@koltunski.pl>
Date:   Wed Oct 4 12:55:51 2023 +0200

    Speed up the time when the HighScores Dialog appears

diff --git a/src/main/java/org/distorted/dialogs/RubikDialogScores.java b/src/main/java/org/distorted/dialogs/RubikDialogScores.java
index 4ad34c1e..52c8a3a3 100644
--- a/src/main/java/org/distorted/dialogs/RubikDialogScores.java
+++ b/src/main/java/org/distorted/dialogs/RubikDialogScores.java
@@ -56,21 +56,8 @@ public class RubikDialogScores extends RubikDialogAbstract
   public boolean hasArgument()  { return true; }
   public int getPositive()      { return R.string.ok; }
   public int getNegative()      { return -1; }
-
-///////////////////////////////////////////////////////////////////////////////////////////////////
-
-  public void positiveAction()
-    {
-    RubikDialogScoresThread thr = RubikDialogScoresThread.getInstance();
-    thr.exit();
-    }
-
-///////////////////////////////////////////////////////////////////////////////////////////////////
-
-  public void negativeAction()
-    {
-
-    }
+  public void positiveAction()  { RubikDialogScoresThread.getInstance().exit(); }
+  public void negativeAction()  { }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
diff --git a/src/main/java/org/distorted/dialogs/RubikDialogScoresPagerAdapter.java b/src/main/java/org/distorted/dialogs/RubikDialogScoresPagerAdapter.java
index 172a5e0d..54149636 100644
--- a/src/main/java/org/distorted/dialogs/RubikDialogScoresPagerAdapter.java
+++ b/src/main/java/org/distorted/dialogs/RubikDialogScoresPagerAdapter.java
@@ -161,7 +161,7 @@ class RubikDialogScoresPagerAdapter extends PagerAdapter implements RubikNetwork
 
     synchronized(mObj)
       {
-      view = new RubikDialogScoresView(mAct, metrics.heightPixels, mIsSubmitting);
+      view = new RubikDialogScoresView(mAct, metrics.heightPixels, mIsSubmitting, mNetworkState==NETWORK_SUCCESS );
       collection.addView(view);
 
       if( mNetworkState==NETWORK_SUCCESS )
@@ -171,12 +171,10 @@ class RubikDialogScoresPagerAdapter extends PagerAdapter implements RubikNetwork
         String[][] n = mName[position];
         int[][] tm = mTime[position];
 
-        for(int l=0; l<=num; l++)
-          {
-          String title = (l==num ? mAct.getString(R.string.levelM) : mAct.getString(R.string.lv_placeholder, l+1));
-          LinearLayout section = view.createSection(mAct, position, title, l, c[l], n[l], tm[l]);
-          view.addSection(mAct,section);
-          }
+        RubikDialogScoresThread thr = RubikDialogScoresThread.getInstance();
+        thr.equip(mAct,mViewPager);
+
+        for(int l=0; l<=num; l++)  thr.newWork(position, l, num, view, c[l], n[l], tm[l]);
         }
       else if( mNetworkState==NETWORK_FAILURE )
         {
diff --git a/src/main/java/org/distorted/dialogs/RubikDialogScoresView.java b/src/main/java/org/distorted/dialogs/RubikDialogScoresView.java
index 8d430884..0a4da862 100644
--- a/src/main/java/org/distorted/dialogs/RubikDialogScoresView.java
+++ b/src/main/java/org/distorted/dialogs/RubikDialogScoresView.java
@@ -49,16 +49,19 @@ public class RubikDialogScoresView extends FrameLayout
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
-  public RubikDialogScoresView(Context context, int height, boolean isSubmitting)
+  public RubikDialogScoresView(Context context, int height, boolean isSubmitting, boolean downloadedAlready )
     {
     super(context);
 
     mHeight = height;
 
-    View view = inflate(context, R.layout.dialog_scores_downloading, null);
-    addView(view);
-    TextView text = findViewById(R.id.message_text);
-    text.setText( context.getString(isSubmitting ? R.string.submitting : R.string.downloading) );
+    if( !downloadedAlready )
+      {
+      View view = inflate(context, R.layout.dialog_scores_downloading, null);
+      addView(view);
+      TextView text = findViewById(R.id.message_text);
+      text.setText(context.getString(isSubmitting ? R.string.submitting : R.string.downloading));
+      }
     }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
