android: allow changing settings while game is running
This commit is contained in:
parent
02d92c4096
commit
a02a70fd69
@ -100,6 +100,8 @@ public final class NativeLibrary {
|
||||
*/
|
||||
public static native void onTouchMoved(float x_axis, float y_axis);
|
||||
|
||||
public static native void ReloadSettings();
|
||||
|
||||
public static native String GetUserSetting(String gameID, String Section, String Key);
|
||||
|
||||
public static native void SetUserSetting(String gameID, String Section, String Key, String Value);
|
||||
|
@ -38,9 +38,11 @@ import org.citra.citra_emu.fragments.EmulationFragment;
|
||||
import org.citra.citra_emu.fragments.MenuFragment;
|
||||
import org.citra.citra_emu.model.settings.view.InputBindingSetting;
|
||||
import org.citra.citra_emu.ui.main.MainPresenter;
|
||||
import org.citra.citra_emu.ui.settings.SettingsActivity;
|
||||
import org.citra.citra_emu.utils.Animations;
|
||||
import org.citra.citra_emu.utils.ControllerMappingHelper;
|
||||
import org.citra.citra_emu.utils.EmulationMenuSettings;
|
||||
import org.citra.citra_emu.utils.SettingsFile;
|
||||
|
||||
import java.lang.annotation.Retention;
|
||||
import java.util.List;
|
||||
@ -64,6 +66,7 @@ public final class EmulationActivity extends AppCompatActivity {
|
||||
public static final int MENU_ACTION_SWAP_SCREENS = 9;
|
||||
public static final int MENU_ACTION_RESET_OVERLAY = 10;
|
||||
public static final int MENU_ACTION_SHOW_OVERLAY = 11;
|
||||
public static final int MENU_ACTION_OPEN_SETTINGS = 12;
|
||||
|
||||
private static final int EMULATION_RUNNING_NOTIFICATION = 0x1000;
|
||||
private static final String BACKSTACK_NAME_MENU = "menu";
|
||||
@ -482,6 +485,10 @@ public final class EmulationActivity extends AppCompatActivity {
|
||||
mEmulationFragment.stopEmulation();
|
||||
exitWithAnimation();
|
||||
break;
|
||||
|
||||
case MENU_ACTION_OPEN_SETTINGS:
|
||||
SettingsActivity.launch(this, SettingsFile.FILE_NAME_CONFIG,"");
|
||||
break;
|
||||
}
|
||||
|
||||
return true;
|
||||
|
@ -4,6 +4,7 @@ import android.content.IntentFilter;
|
||||
import android.os.Bundle;
|
||||
import android.text.TextUtils;
|
||||
|
||||
import org.citra.citra_emu.NativeLibrary;
|
||||
import org.citra.citra_emu.model.settings.SettingSection;
|
||||
import org.citra.citra_emu.services.DirectoryInitializationService;
|
||||
import org.citra.citra_emu.services.DirectoryInitializationService.DirectoryInitializationState;
|
||||
@ -119,6 +120,7 @@ public final class SettingsActivityPresenter {
|
||||
SettingsFile.saveFile(SettingsFile.FILE_NAME_CONFIG, mSettings.get(SettingsFile.SETTINGS_DOLPHIN), mView);
|
||||
mView.showToastMessage("Saved settings", false);
|
||||
}
|
||||
NativeLibrary.ReloadSettings();
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -395,6 +395,11 @@ void Java_org_citra_citra_1emu_NativeLibrary_WriteProfileResults(JNIEnv* env, jo
|
||||
void Java_org_citra_citra_1emu_NativeLibrary_Run__Ljava_lang_String_2Ljava_lang_String_2Z(
|
||||
JNIEnv* env, jobject obj, jstring jFile, jstring jSavestate, jboolean jDeleteSavestate) {}
|
||||
|
||||
void Java_org_citra_citra_1emu_NativeLibrary_ReloadSettings(JNIEnv* env, jclass type) {
|
||||
Config{};
|
||||
Settings::Apply();
|
||||
}
|
||||
|
||||
jstring Java_org_citra_citra_1emu_NativeLibrary_GetUserSetting(JNIEnv* env, jclass type,
|
||||
jstring gameID_,
|
||||
jstring Section_, jstring Key_) {
|
||||
|
@ -159,6 +159,9 @@ JNIEXPORT void JNICALL Java_org_citra_citra_1emu_NativeLibrary_InitGameIni(JNIEn
|
||||
jclass type,
|
||||
jstring gameID_);
|
||||
|
||||
JNIEXPORT void JNICALL Java_org_citra_citra_1emu_NativeLibrary_ReloadSettings(JNIEnv* env,
|
||||
jclass type);
|
||||
|
||||
JNIEXPORT void JNICALL Java_org_citra_citra_1emu_NativeLibrary_SetUserSetting(
|
||||
JNIEnv* env, jclass type, jstring gameID_, jstring Section_, jstring Key_, jstring Value_);
|
||||
|
||||
|
@ -68,4 +68,9 @@
|
||||
android:title="@string/emulation_show_overlay"
|
||||
android:checkable="true"/>
|
||||
|
||||
</menu>
|
||||
<item
|
||||
android:id="@+id/menu_emulation_open_settings"
|
||||
app:showAsAction="never"
|
||||
android:title="@string/emulation_open_settings"/>
|
||||
|
||||
</menu>
|
||||
|
@ -119,6 +119,7 @@
|
||||
<string name="emulation_control_scale">Adjust Scale</string>
|
||||
<string name="emulation_choose_controller">Choose Controller</string>
|
||||
<string name="emulation_controller_changed">You may have to reload the game after changing extensions.</string>
|
||||
<string name="emulation_open_settings">Open Settings</string>
|
||||
<string name="emulation_switch_screen_layout">Landscape Screen Layout</string>
|
||||
<string name="emulation_screen_layout_landscape">Default</string>
|
||||
<string name="emulation_screen_layout_portrait">Portrait</string>
|
||||
|
Loading…
x
Reference in New Issue
Block a user