diff options
Diffstat (limited to 'Source/Android/app/src/main/java')
7 files changed, 18 insertions, 12 deletions
diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/NativeLibrary.java b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/NativeLibrary.java index 43880bd0ba..1cdd9fa473 100644 --- a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/NativeLibrary.java +++ b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/NativeLibrary.java @@ -381,11 +381,17 @@ public final class NativeLibrary */ public static native boolean IsRunning(); - public static native boolean IsRunningAndStarted(); - + /** + * Returns true if emulation is running and not paused. + */ public static native boolean IsRunningAndUnpaused(); /** + * Returns true if emulation is fully shut down. + */ + public static native boolean IsUninitialized(); + + /** * Writes out the JitBlock Cache log dump */ public static native void WriteJitBlockLogDump(); diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/settings/model/Settings.kt b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/settings/model/Settings.kt index c5c1851e5d..eedc1405ff 100644 --- a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/settings/model/Settings.kt +++ b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/settings/model/Settings.kt @@ -36,7 +36,7 @@ class Settings : Closeable { if (isGameSpecific) { // Loading game INIs while the core is running will mess with the game INIs loaded by the core - check(!NativeLibrary.IsRunning()) { "Attempted to load game INI while emulating" } + check(NativeLibrary.IsUninitialized()) { "Attempted to load game INI while emulating" } NativeConfig.loadGameInis(gameId, revision) } } diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/settings/model/view/RunRunnable.kt b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/settings/model/view/RunRunnable.kt index f9d5786e22..c52964ff0b 100644 --- a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/settings/model/view/RunRunnable.kt +++ b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/settings/model/view/RunRunnable.kt @@ -20,5 +20,5 @@ class RunRunnable( override val setting: AbstractSetting? = null override val isEditable: Boolean - get() = worksDuringEmulation || !NativeLibrary.IsRunning() + get() = worksDuringEmulation || NativeLibrary.IsUninitialized() } diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/settings/model/view/SettingsItem.kt b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/settings/model/view/SettingsItem.kt index 3209400ff6..01c4796e68 100644 --- a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/settings/model/view/SettingsItem.kt +++ b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/settings/model/view/SettingsItem.kt @@ -54,7 +54,7 @@ abstract class SettingsItem { open val isEditable: Boolean get() { - if (!NativeLibrary.IsRunning()) return true + if (NativeLibrary.IsUninitialized()) return true val setting = setting return setting != null && setting.isRuntimeEditable } diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/settings/ui/SettingsFragmentPresenter.kt b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/settings/ui/SettingsFragmentPresenter.kt index 6de39ed1e9..1573b6408c 100644 --- a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/settings/ui/SettingsFragmentPresenter.kt +++ b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/settings/ui/SettingsFragmentPresenter.kt @@ -69,7 +69,7 @@ class SettingsFragmentPresenter( } else if ( menuTag == MenuTag.GRAPHICS && this.gameId.isNullOrEmpty() - && !NativeLibrary.IsRunning() + && NativeLibrary.IsUninitialized() && GpuDriverHelper.supportsCustomDriverLoading() ) { this.gpuDriver = @@ -1303,7 +1303,7 @@ class SettingsFragmentPresenter( if ( this.gpuDriver != null && this.gameId.isNullOrEmpty() - && !NativeLibrary.IsRunning() + && NativeLibrary.IsUninitialized() && GpuDriverHelper.supportsCustomDriverLoading() ) { sl.add( diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/fragments/EmulationFragment.kt b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/fragments/EmulationFragment.kt index 637f4fb924..eeb223c3db 100644 --- a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/fragments/EmulationFragment.kt +++ b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/fragments/EmulationFragment.kt @@ -180,11 +180,11 @@ class EmulationFragment : Fragment(), SurfaceHolder.Callback { private fun run(isActivityRecreated: Boolean) { if (isActivityRecreated) { - if (NativeLibrary.IsRunning()) { + if (NativeLibrary.IsUninitialized()) { + loadPreviousTemporaryState = true + } else { loadPreviousTemporaryState = false deleteFile(temporaryStateFilePath) - } else { - loadPreviousTemporaryState = true } } else { Log.debug("[EmulationFragment] activity resumed or fresh start") @@ -203,7 +203,7 @@ class EmulationFragment : Fragment(), SurfaceHolder.Callback { private fun runWithValidSurface() { runWhenSurfaceIsValid = false - if (!NativeLibrary.IsRunning()) { + if (NativeLibrary.IsUninitialized()) { NativeLibrary.SetIsBooting() val emulationThread = Thread({ if (loadPreviousTemporaryState) { diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/overlay/InputOverlay.kt b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/overlay/InputOverlay.kt index dfe557e712..7964cc1ebc 100644 --- a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/overlay/InputOverlay.kt +++ b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/overlay/InputOverlay.kt @@ -83,7 +83,7 @@ class InputOverlay(context: Context?, attrs: AttributeSet?) : SurfaceView(contex fun initTouchPointer() { // Check if we have all the data we need yet - val aspectRatioAvailable = NativeLibrary.IsRunningAndStarted() + val aspectRatioAvailable = NativeLibrary.IsRunning() if (!aspectRatioAvailable || surfacePosition == null) return |
