v0.5.0a: improved how the game detects screen size

This will fix bugs for rooted users who force immersive mode externally
This commit is contained in:
Evan Debenham
2017-02-12 21:33:09 -05:00
parent da51b58ee9
commit 29d05e3857
@@ -185,7 +185,7 @@ public class ShatteredPixelDungeon extends Game {
} else { } else {
DisplayMetrics metrics = new DisplayMetrics(); DisplayMetrics metrics = new DisplayMetrics();
if (immersed() && Build.VERSION.SDK_INT > Build.VERSION_CODES.JELLY_BEAN_MR1) if (Build.VERSION.SDK_INT > Build.VERSION_CODES.JELLY_BEAN_MR1)
getWindowManager().getDefaultDisplay().getRealMetrics( metrics ); getWindowManager().getDefaultDisplay().getRealMetrics( metrics );
else else
getWindowManager().getDefaultDisplay().getMetrics( metrics ); getWindowManager().getDefaultDisplay().getMetrics( metrics );
@@ -330,13 +330,8 @@ public class ShatteredPixelDungeon extends Game {
} }
private void updateDisplaySize(){ private void updateDisplaySize(){
DisplayMetrics m = new DisplayMetrics(); dispWidth = view.getMeasuredWidth();
if (immersed() && Build.VERSION.SDK_INT >= 19) dispHeight = view.getMeasuredHeight();
getWindowManager().getDefaultDisplay().getRealMetrics( m );
else
getWindowManager().getDefaultDisplay().getMetrics( m );
dispHeight = m.heightPixels;
dispWidth = m.widthPixels;
float dispRatio = dispWidth / (float)dispHeight; float dispRatio = dispWidth / (float)dispHeight;