commit 287e91a6795c9bacc7d57a3ca2a756878fb3bae2
Author: Leszek Koltunski <leszek@koltunski.pl>
Date:   Mon Oct 4 16:59:56 2021 +0200

    Remove from ObjectType info which row given object is supposed to be in. This belongs to the applcations.

diff --git a/src/main/java/org/distorted/screens/RubikScreenPlay.java b/src/main/java/org/distorted/screens/RubikScreenPlay.java
index b536b95b..1c7891ce 100644
--- a/src/main/java/org/distorted/screens/RubikScreenPlay.java
+++ b/src/main/java/org/distorted/screens/RubikScreenPlay.java
@@ -52,6 +52,7 @@ import org.distorted.network.RubikScores;
 
 public class RubikScreenPlay extends RubikScreenBase
   {
+  public static final int NUM_COLUMNS  = 4;
   public static final int LEVELS_SHOWN = 10;
   public static final int DEF_OBJECT= ObjectType.CUBE_3.ordinal();
 
@@ -96,8 +97,8 @@ public class RubikScreenPlay extends RubikScreenBase
     mButtonSize   = width*RubikActivity.BUTTON_TEXT_SIZE;
     mMenuItemSize = width*RubikActivity.MENU_ITEM_SIZE;
 
-    mRowCount = ObjectType.getRowCount();
-    mColCount = ObjectType.getColumnCount();
+    mRowCount = (ObjectType.NUM_OBJECTS + NUM_COLUMNS-1) / NUM_COLUMNS;
+    mColCount = NUM_COLUMNS;
 
     // TOP ////////////////////////////
     LinearLayout layoutTop = act.findViewById(R.id.upperBar);
@@ -222,8 +223,6 @@ public class RubikScreenPlay extends RubikScreenBase
       mObjectPopup.setContentView(objectGrid);
       }
 
-    int[] indices = ObjectType.getIndices();
-
     GridLayout.Spec[] rowSpecs = new GridLayout.Spec[mRowCount];
     GridLayout.Spec[] colSpecs = new GridLayout.Spec[mColCount];
 
@@ -248,7 +247,7 @@ public class RubikScreenPlay extends RubikScreenBase
       int iconSize = RubikActivity.getDrawableSize();
       int icons = list.getIconID(iconSize);
       final int obj = object;
-      int row = indices[object];
+      int row = object/NUM_COLUMNS;
 
       ImageButton button = new ImageButton(act);
       button.setBackgroundResource(icons);
