|
|
@ -5,7 +5,6 @@ import android.content.Intent;
|
|
|
|
import android.content.SharedPreferences;
|
|
|
|
import android.content.SharedPreferences;
|
|
|
|
import android.content.pm.PackageManager;
|
|
|
|
import android.content.pm.PackageManager;
|
|
|
|
import android.os.Bundle;
|
|
|
|
import android.os.Bundle;
|
|
|
|
import android.os.Handler;
|
|
|
|
|
|
|
|
import android.preference.PreferenceManager;
|
|
|
|
import android.preference.PreferenceManager;
|
|
|
|
import android.util.SparseIntArray;
|
|
|
|
import android.util.SparseIntArray;
|
|
|
|
import android.view.InputDevice;
|
|
|
|
import android.view.InputDevice;
|
|
|
@ -124,7 +123,6 @@ public final class EmulationActivity extends AppCompatActivity {
|
|
|
|
.append(R.id.menu_emulation_close_game, EmulationActivity.MENU_ACTION_CLOSE_GAME);
|
|
|
|
.append(R.id.menu_emulation_close_game, EmulationActivity.MENU_ACTION_CLOSE_GAME);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
private View mDecorView;
|
|
|
|
|
|
|
|
private EmulationFragment mEmulationFragment;
|
|
|
|
private EmulationFragment mEmulationFragment;
|
|
|
|
private SharedPreferences mPreferences;
|
|
|
|
private SharedPreferences mPreferences;
|
|
|
|
private ControllerMappingHelper mControllerMappingHelper;
|
|
|
|
private ControllerMappingHelper mControllerMappingHelper;
|
|
|
@ -170,16 +168,6 @@ public final class EmulationActivity extends AppCompatActivity {
|
|
|
|
|
|
|
|
|
|
|
|
mControllerMappingHelper = new ControllerMappingHelper();
|
|
|
|
mControllerMappingHelper = new ControllerMappingHelper();
|
|
|
|
|
|
|
|
|
|
|
|
// Get a handle to the Window containing the UI.
|
|
|
|
|
|
|
|
mDecorView = getWindow().getDecorView();
|
|
|
|
|
|
|
|
mDecorView.setOnSystemUiVisibilityChangeListener(visibility ->
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
if ((visibility & View.SYSTEM_UI_FLAG_FULLSCREEN) == 0) {
|
|
|
|
|
|
|
|
// Go back to immersive fullscreen mode in 3s
|
|
|
|
|
|
|
|
Handler handler = new Handler(getMainLooper());
|
|
|
|
|
|
|
|
handler.postDelayed(this::enableFullscreenImmersive, 3000 /* 3s */);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
// Set these options now so that the SurfaceView the game renders into is the right size.
|
|
|
|
// Set these options now so that the SurfaceView the game renders into is the right size.
|
|
|
|
enableFullscreenImmersive();
|
|
|
|
enableFullscreenImmersive();
|
|
|
|
|
|
|
|
|
|
|
@ -275,14 +263,14 @@ public final class EmulationActivity extends AppCompatActivity {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
private void enableFullscreenImmersive() {
|
|
|
|
private void enableFullscreenImmersive() {
|
|
|
|
// It would be nice to use IMMERSIVE_STICKY, but that doesn't show the toolbar.
|
|
|
|
getWindow().getDecorView().setSystemUiVisibility(
|
|
|
|
mDecorView.setSystemUiVisibility(
|
|
|
|
|
|
|
|
View.SYSTEM_UI_FLAG_LAYOUT_STABLE |
|
|
|
|
View.SYSTEM_UI_FLAG_LAYOUT_STABLE |
|
|
|
|
View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION |
|
|
|
|
View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION |
|
|
|
|
View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN |
|
|
|
|
View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN |
|
|
|
|
View.SYSTEM_UI_FLAG_HIDE_NAVIGATION |
|
|
|
|
View.SYSTEM_UI_FLAG_HIDE_NAVIGATION |
|
|
|
|
View.SYSTEM_UI_FLAG_FULLSCREEN |
|
|
|
|
View.SYSTEM_UI_FLAG_FULLSCREEN |
|
|
|
|
View.SYSTEM_UI_FLAG_IMMERSIVE);
|
|
|
|
View.SYSTEM_UI_FLAG_IMMERSIVE |
|
|
|
|
|
|
|
|
View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
@Override
|
|
|
|