diff options
Diffstat (limited to 'platform/android/java')
-rw-r--r-- | platform/android/java/lib/src/org/godotengine/godot/GodotIO.java | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/platform/android/java/lib/src/org/godotengine/godot/GodotIO.java b/platform/android/java/lib/src/org/godotengine/godot/GodotIO.java index f060c7aaff..5543745444 100644 --- a/platform/android/java/lib/src/org/godotengine/godot/GodotIO.java +++ b/platform/android/java/lib/src/org/godotengine/godot/GodotIO.java @@ -47,6 +47,7 @@ import android.util.DisplayMetrics; import android.util.Log; import android.view.Display; import android.view.DisplayCutout; +import android.view.Surface; import android.view.WindowInsets; import androidx.core.content.FileProvider; @@ -295,6 +296,28 @@ public class GodotIO { } } + /** + This function is used by DisplayServer::screen_get_internal_current_rotation (C++) + and is used to implement a performance optimization in devices that do not offer + a HW rotator. + @return + Rotation in degrees, in multiples of 90° + */ + public int getInternalCurrentScreenRotation() { + int rotation = activity.getWindowManager().getDefaultDisplay().getRotation(); + + switch (rotation) { + case Surface.ROTATION_90: + return 90; + case Surface.ROTATION_180: + return 180; + case Surface.ROTATION_270: + return 270; + default: + return 0; + } + } + public void setEdit(GodotEditText _edit) { edit = _edit; } |