commit 98e7cc0f99b27b877473acdfb877fe7ec6544aae
Author: Leszek Koltunski <leszek@koltunski.pl>
Date:   Sat Jun 20 22:50:39 2020 +0100

    Improvements to the UI - make it proportional regardless of the physical screen size. (Part 4)

diff --git a/src/main/java/org/distorted/states/RubikStatePlay.java b/src/main/java/org/distorted/states/RubikStatePlay.java
index 769545f5..dcdd77dd 100644
--- a/src/main/java/org/distorted/states/RubikStatePlay.java
+++ b/src/main/java/org/distorted/states/RubikStatePlay.java
@@ -97,7 +97,7 @@ public class RubikStatePlay extends RubikStateAbstract implements AdapterView.On
     LinearLayout layoutLeft = act.findViewById(R.id.mainBarLeft);
     layoutLeft.removeAllViews();
 
-    setupSettingsButton(act,scale);
+    setupSettingsButton(act,scale,width);
     layoutLeft.addView(mSettingsButton);
     setupSolveButton(act,scale);
     layoutLeft.addView(mSolveButton);
@@ -208,10 +208,11 @@ public class RubikStatePlay extends RubikStateAbstract implements AdapterView.On
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
-  private void setupSettingsButton(final RubikActivity act, final float scale)
+  private void setupSettingsButton(final RubikActivity act, final float scale, final float width)
     {
     int padding = (int)(3*scale + 0.5f);
-    LinearLayout.LayoutParams objectParams = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT,LinearLayout.LayoutParams.MATCH_PARENT);
+    int widthBut = (int)(width/6);
+    LinearLayout.LayoutParams objectParams = new LinearLayout.LayoutParams(widthBut,LinearLayout.LayoutParams.MATCH_PARENT);
     mSettingsButton = new ImageButton(act);
     mSettingsButton.setLayoutParams(objectParams);
     mSettingsButton.setPadding(padding,0,padding,0);
diff --git a/src/main/java/org/distorted/states/RubikStateSolving.java b/src/main/java/org/distorted/states/RubikStateSolving.java
index 37200154..8406b391 100644
--- a/src/main/java/org/distorted/states/RubikStateSolving.java
+++ b/src/main/java/org/distorted/states/RubikStateSolving.java
@@ -114,7 +114,7 @@ public class RubikStateSolving extends RubikStateAbstract implements RubikPreRen
     LinearLayout layoutLeft = act.findViewById(R.id.mainBarLeft);
     layoutLeft.removeAllViews();
 
-    setupPrevMoveButtom(act,scale);
+    setupPrevMoveButtom(act,scale,width);
     layoutLeft.addView(mPrevButton);
 
     LinearLayout layoutRight = act.findViewById(R.id.mainBarRight);
@@ -143,11 +143,12 @@ public class RubikStateSolving extends RubikStateAbstract implements RubikPreRen
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
-  private void setupPrevMoveButtom(final RubikActivity act, float scale)
+  private void setupPrevMoveButtom(final RubikActivity act, float scale, float width)
     {
     int padding = (int)( 3*scale + 0.5f);
-    int width   = (int)(60*scale + 0.5f);
-    LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(width,LinearLayout.LayoutParams.MATCH_PARENT);
+    int widthBut= (int)(width/6);
+
+    LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(widthBut,LinearLayout.LayoutParams.MATCH_PARENT);
     mPrevButton = new ImageButton(act);
     mPrevButton.setLayoutParams(params);
     mPrevButton.setPadding(padding,0,padding,0);
