diff --git a/src/main/java/org/androidsoft/coloring/ui/activity/AbstractColoringActivity.java b/src/main/java/org/androidsoft/coloring/ui/activity/AbstractColoringActivity.java index 21412d1..e159ed7 100644 --- a/src/main/java/org/androidsoft/coloring/ui/activity/AbstractColoringActivity.java +++ b/src/main/java/org/androidsoft/coloring/ui/activity/AbstractColoringActivity.java @@ -24,6 +24,8 @@ import android.view.View; import android.view.ViewGroup; import android.view.WindowManager; + +import org.androidsoft.coloring.util.ScreenUtils; import org.androidsoft.utils.ui.NoTitleActivity; public abstract class AbstractColoringActivity extends NoTitleActivity @@ -37,6 +39,7 @@ public abstract class AbstractColoringActivity extends NoTitleActivity public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); + ScreenUtils.setFullscreen(this); WindowManager w = getWindowManager(); Display d = w.getDefaultDisplay(); @@ -45,6 +48,14 @@ public void onCreate(Bundle savedInstanceState) } + @Override + public void onWindowFocusChanged(boolean hasFocus) { + super.onWindowFocusChanged(hasFocus); + if (hasFocus) { + ScreenUtils.setFullscreen(this); + } + } + public static int getDisplayWitdh() { return _displayWidth; diff --git a/src/main/java/org/androidsoft/coloring/ui/activity/CreditsActivity.java b/src/main/java/org/androidsoft/coloring/ui/activity/CreditsActivity.java index 8c8aed6..e3c295a 100644 --- a/src/main/java/org/androidsoft/coloring/ui/activity/CreditsActivity.java +++ b/src/main/java/org/androidsoft/coloring/ui/activity/CreditsActivity.java @@ -18,6 +18,7 @@ import android.os.Bundle; import android.view.View; import org.androidsoft.coloring.R; +import org.androidsoft.coloring.util.ScreenUtils; import org.androidsoft.utils.credits.CreditsParams; import org.androidsoft.utils.credits.CreditsView; import org.androidsoft.utils.ui.BasicActivity; @@ -33,12 +34,22 @@ public class CreditsActivity extends BasicActivity public void onCreate(Bundle icicle) { super.onCreate(icicle); + ScreenUtils.setFullscreen(this); View view = new CreditsView(this, getCreditsParams()); setContentView(view); } + @Override + public void onWindowFocusChanged(boolean hasFocus) + { + super.onWindowFocusChanged(hasFocus); + if (hasFocus) { + ScreenUtils.setFullscreen(this); + } + } + /** * {@inheritDoc } */ diff --git a/src/main/java/org/androidsoft/coloring/ui/activity/StartNewActivity.java b/src/main/java/org/androidsoft/coloring/ui/activity/StartNewActivity.java index 29cac4d..f0b7bb8 100644 --- a/src/main/java/org/androidsoft/coloring/ui/activity/StartNewActivity.java +++ b/src/main/java/org/androidsoft/coloring/ui/activity/StartNewActivity.java @@ -31,6 +31,7 @@ import android.widget.GridView; import android.widget.ImageView; import org.androidsoft.coloring.R; +import org.androidsoft.coloring.util.ScreenUtils; import org.androidsoft.utils.ui.NoTitleActivity; public class StartNewActivity extends NoTitleActivity implements View.OnClickListener @@ -46,7 +47,7 @@ public static int randomOutlineId() public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - + ScreenUtils.setFullscreen(this); // Apparently this cannot be set from the style. getWindow().setFlags(WindowManager.LayoutParams.FLAG_BLUR_BEHIND, WindowManager.LayoutParams.FLAG_BLUR_BEHIND); @@ -57,6 +58,15 @@ public void onCreate(Bundle savedInstanceState) gridview.setAdapter(new ImageAdapter(this)); } + @Override + public void onWindowFocusChanged(boolean hasFocus) + { + super.onWindowFocusChanged(hasFocus); + if (hasFocus) { + ScreenUtils.setFullscreen(this); + } + } + public void onClick(View view) { setResult(view.getId()); diff --git a/src/main/java/org/androidsoft/coloring/util/ScreenUtils.java b/src/main/java/org/androidsoft/coloring/util/ScreenUtils.java new file mode 100644 index 0000000..ed671e8 --- /dev/null +++ b/src/main/java/org/androidsoft/coloring/util/ScreenUtils.java @@ -0,0 +1,17 @@ +package org.androidsoft.coloring.util; + +import android.app.Activity; +import android.view.View; + +// Based on http://stackoverflow.com/questions/22265945/full-screen-action-bar-immersive#22560946 +public class ScreenUtils { + static public void setFullscreen(Activity act) { + if (android.os.Build.VERSION.SDK_INT >= 19) { + act.getWindow().getDecorView().setSystemUiVisibility( + View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN + | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION + | View.SYSTEM_UI_FLAG_FULLSCREEN + | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY); + } + } +}