diff --git a/forge-gui-android/AndroidManifest.xml b/forge-gui-android/AndroidManifest.xml
index de69ff21824..2872eecf0d8 100644
--- a/forge-gui-android/AndroidManifest.xml
+++ b/forge-gui-android/AndroidManifest.xml
@@ -13,7 +13,8 @@
diff --git a/forge-gui-android/src/forge/app/Main.java b/forge-gui-android/src/forge/app/Main.java
index ebbd8689394..06de351443c 100644
--- a/forge-gui-android/src/forge/app/Main.java
+++ b/forge-gui-android/src/forge/app/Main.java
@@ -12,7 +12,6 @@ import android.content.res.Configuration;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.net.Uri;
-import android.os.Build;
import android.os.Bundle;
import android.os.Environment;
import android.webkit.MimeTypeMap;
@@ -32,13 +31,8 @@ public class Main extends AndroidApplication {
AndroidAdapter adapter = new AndroidAdapter(this.getContext());
- //enforce portrait orientation for non-tablet screens
- if (!adapter.isTablet) {
- this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
- if (Build.VERSION.SDK_INT > 8) { //use dual-side portrait mode if supported
- this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR_PORTRAIT);
- }
- }
+ //enforce orientation based on whether device is a tablet
+ adapter.setLandscapeMode(adapter.isTablet);
//establish assets directory
if (!Environment.MEDIA_MOUNTED.equals(Environment.getExternalStorageState())) {
@@ -161,5 +155,15 @@ public class Main extends AndroidApplication {
public boolean isTablet() {
return isTablet;
}
+
+ @Override
+ public void setLandscapeMode(boolean landscapeMode) {
+ if (landscapeMode) {
+ Main.this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
+ }
+ else {
+ Main.this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
+ }
+ }
}
}
diff --git a/forge-gui-mobile-dev/src/forge/app/Main.java b/forge-gui-mobile-dev/src/forge/app/Main.java
index 1359c543dcd..5e8579b6cf4 100644
--- a/forge-gui-mobile-dev/src/forge/app/Main.java
+++ b/forge-gui-mobile-dev/src/forge/app/Main.java
@@ -63,5 +63,10 @@ public class Main {
public boolean isTablet() {
return true; //treat desktop the same as a tablet
}
+
+ @Override
+ public void setLandscapeMode(boolean landscapeMode) {
+ //TODO: Consider supporting toggling this on desktop for testing
+ }
}
}
diff --git a/forge-gui/src/main/java/forge/interfaces/IDeviceAdapter.java b/forge-gui/src/main/java/forge/interfaces/IDeviceAdapter.java
index 0630021363a..16def7f852a 100644
--- a/forge-gui/src/main/java/forge/interfaces/IDeviceAdapter.java
+++ b/forge-gui/src/main/java/forge/interfaces/IDeviceAdapter.java
@@ -6,5 +6,6 @@ public interface IDeviceAdapter {
boolean isTablet();
String getDownloadsDir();
boolean openFile(String filename);
+ void setLandscapeMode(boolean landscapeMode);
void exit();
}