summaryrefslogtreecommitdiffstats
path: root/src/android/app/src/main/jni/native.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/android/app/src/main/jni/native.cpp')
-rw-r--r--src/android/app/src/main/jni/native.cpp21
1 files changed, 18 insertions, 3 deletions
diff --git a/src/android/app/src/main/jni/native.cpp b/src/android/app/src/main/jni/native.cpp
index bbe6abdb0..d503ef61d 100644
--- a/src/android/app/src/main/jni/native.cpp
+++ b/src/android/app/src/main/jni/native.cpp
@@ -89,8 +89,16 @@ public:
return m_native_window;
}
- void SetNativeWindow(ANativeWindow* m_native_window_) {
- m_native_window = m_native_window_;
+ void SetNativeWindow(ANativeWindow* native_window) {
+ m_native_window = native_window;
+ }
+
+ u32 ScreenRotation() const {
+ return m_screen_rotation;
+ }
+
+ void SetScreenRotation(u32 screen_rotation) {
+ m_screen_rotation = screen_rotation;
}
void InitializeGpuDriver(const std::string& hook_lib_dir, const std::string& custom_driver_dir,
@@ -379,6 +387,7 @@ private:
// Window management
std::unique_ptr<EmuWindow_Android> m_window;
ANativeWindow* m_native_window{};
+ u32 m_screen_rotation{};
// Core emulation
Core::System m_system;
@@ -404,6 +413,10 @@ private:
} // Anonymous namespace
+u32 GetAndroidScreenRotation() {
+ return EmulationSession::GetInstance().ScreenRotation();
+}
+
static Core::SystemResultStatus RunEmulation(const std::string& filepath) {
Common::Log::Initialize();
Common::Log::SetColorConsoleBackendEnabled(true);
@@ -450,7 +463,9 @@ void Java_org_yuzu_yuzu_1emu_NativeLibrary_surfaceDestroyed(JNIEnv* env,
void Java_org_yuzu_yuzu_1emu_NativeLibrary_notifyOrientationChange(JNIEnv* env,
[[maybe_unused]] jclass clazz,
jint layout_option,
- jint rotation) {}
+ jint rotation) {
+ return EmulationSession::GetInstance().SetScreenRotation(static_cast<u32>(rotation));
+}
void Java_org_yuzu_yuzu_1emu_NativeLibrary_setAppDirectory(JNIEnv* env,
[[maybe_unused]] jclass clazz,