Android: Show a dialog for scoped storage incompatible settings
The following settings are currently not SAF compatible, and might never be due to the performance impact: Dump Path Load Path Resource Pack Path Wii NAND Root This commit makes us show a message to the user if they try to change one of these settings while scoped storage is active. I don't want to entirely remove the settings from being listed in the settings activity, because it's important that the user is able to reset them if they were set to something custom in a previous version of Dolphin.
This commit is contained in:
parent
820420c5f5
commit
3adb07ac74
|
@ -44,6 +44,7 @@ import org.dolphinemu.dolphinemu.features.settings.ui.viewholder.SubmenuViewHold
|
|||
import org.dolphinemu.dolphinemu.utils.DirectoryInitialization;
|
||||
import org.dolphinemu.dolphinemu.utils.FileBrowserHelper;
|
||||
import org.dolphinemu.dolphinemu.utils.Log;
|
||||
import org.dolphinemu.dolphinemu.utils.PermissionsHandler;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
|
@ -300,7 +301,17 @@ public final class SettingsAdapter extends RecyclerView.Adapter<SettingViewHolde
|
|||
mClickedItem = item;
|
||||
mClickedPosition = position;
|
||||
|
||||
FileBrowserHelper.openDirectoryPicker(mView.getActivity(), FileBrowserHelper.GAME_EXTENSIONS);
|
||||
if (!PermissionsHandler.isExternalStorageLegacy())
|
||||
{
|
||||
AlertDialog.Builder builder = new AlertDialog.Builder(mContext, R.style.DolphinDialogBase);
|
||||
builder.setMessage(R.string.path_not_changeable_scoped_storage);
|
||||
builder.setPositiveButton(R.string.ok, (dialog, i) -> dialog.dismiss());
|
||||
builder.show();
|
||||
}
|
||||
else
|
||||
{
|
||||
FileBrowserHelper.openDirectoryPicker(mView.getActivity(), FileBrowserHelper.GAME_EXTENSIONS);
|
||||
}
|
||||
}
|
||||
|
||||
public void onFilePickerFileClick(SettingsItem item, int position)
|
||||
|
|
|
@ -481,6 +481,7 @@ It can efficiently compress both junk data and encrypted Wii data.
|
|||
<!-- Rumble -->
|
||||
<string name="rumble_not_found">Device rumble not found</string>
|
||||
|
||||
<string name="path_not_changeable_scoped_storage">Due to the Scoped Storage policy in Android 11 and newer, you can\'t change this path.</string>
|
||||
<string name="load_settings">Loading Settings...</string>
|
||||
<string name="setting_not_runtime_editable">This setting can\'t be changed while a game is running.</string>
|
||||
<string name="setting_clear_info">Long press a setting to clear it.</string>
|
||||
|
|
Loading…
Reference in New Issue