commit 9d591756288453f2502972c51ad239f0d92dea0e
Author: Leszek Koltunski <leszek@koltunski.pl>
Date:   Wed Jun 30 22:52:56 2021 +0200

    Fix the reddening the Lock icon.

diff --git a/src/main/java/org/distorted/helpers/MovesAndLockController.java b/src/main/java/org/distorted/helpers/MovesAndLockController.java
index 20230faf..abf2c66d 100644
--- a/src/main/java/org/distorted/helpers/MovesAndLockController.java
+++ b/src/main/java/org/distorted/helpers/MovesAndLockController.java
@@ -49,7 +49,7 @@ public class MovesAndLockController implements MovesFinished
       }
     }
 
-  private ArrayList<Move> mMoves;
+  private final ArrayList<Move> mMoves;
   private boolean mCanPrevMove;
   private TwistyPreRender mPre;
   private ImageButton mPrevButton, mLockButton;
@@ -62,12 +62,10 @@ public class MovesAndLockController implements MovesFinished
 
   public MovesAndLockController()
     {
-    mTimerRunning = false;
-    mLockTime = 0;
+    mTimerRunning= false;
+    mLockTime    = 0;
     mCanPrevMove = true;
-
-    if( mMoves==null ) mMoves = new ArrayList<>();
-    else               mMoves.clear();
+    mMoves       = new ArrayList<>();
     }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
diff --git a/src/main/java/org/distorted/main/RubikSurfaceView.java b/src/main/java/org/distorted/main/RubikSurfaceView.java
index c565fda6..9b1fbd6d 100644
--- a/src/main/java/org/distorted/main/RubikSurfaceView.java
+++ b/src/main/java/org/distorted/main/RubikSurfaceView.java
@@ -34,6 +34,7 @@ import org.distorted.library.type.Static2D;
 import org.distorted.library.type.Static4D;
 import org.distorted.objects.TwistyObject;
 import org.distorted.objects.Movement;
+import org.distorted.screens.RubikScreenReady;
 import org.distorted.solvers.SolverMain;
 import org.distorted.screens.ScreenList;
 import org.distorted.screens.RubikScreenPlay;
@@ -346,16 +347,34 @@ public class RubikSurfaceView extends GLSurfaceView
           mDragging           = (!locked || mIsAutomatic);
           mBeginningRotation  = false;
           mContinuingRotation = false;
-
-          if( locked )
-            {
-            RubikScreenPlay play = (RubikScreenPlay) ScreenList.PLAY.getScreenClass();
-            play.reddenLock(act);
-            }
+          if( locked ) reddenLockIcon(act);
           }
         }
       }
 
+///////////////////////////////////////////////////////////////////////////////////////////////////
+
+    private void reddenLockIcon(RubikActivity act)
+      {
+      ScreenList curr = ScreenList.getCurrentScreen();
+
+      if( curr==ScreenList.PLAY )
+        {
+        RubikScreenPlay play = (RubikScreenPlay) ScreenList.PLAY.getScreenClass();
+        play.reddenLock(act);
+        }
+      else if( curr==ScreenList.READ )
+        {
+        RubikScreenReady read = (RubikScreenReady) ScreenList.READ.getScreenClass();
+        read.reddenLock(act);
+        }
+      else if( curr==ScreenList.SOLV )
+        {
+        RubikScreenSolving solv = (RubikScreenSolving) ScreenList.SOLV.getScreenClass();
+        solv.reddenLock(act);
+        }
+      }
+
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
     private void drag(float x, float y)
