Skip to content
Permalink
Browse files
Merge pull request #8962 from JosJuice/android-saf-wad
Android: Use storage access framework for importing WADs
  • Loading branch information
leoetlino committed Oct 21, 2020
2 parents 09e87b7 + 8f71211 commit 43d11ca
Show file tree
Hide file tree
Showing 5 changed files with 12 additions and 13 deletions.
@@ -297,9 +297,6 @@ public void onFilePickerFileClick(SettingsItem item)
case MainPresenter.REQUEST_GAME_FILE:
extensions = FileBrowserHelper.GAME_EXTENSIONS;
break;
case MainPresenter.REQUEST_WAD_FILE:
extensions = FileBrowserHelper.WAD_EXTENSION;
break;
default:
throw new InvalidParameterException("Unhandled request code");
}
@@ -175,8 +175,10 @@ public void launchOpenFileActivity()
@Override
public void launchInstallWAD()
{
FileBrowserHelper.openFilePicker(this, MainPresenter.REQUEST_WAD_FILE, false,
FileBrowserHelper.WAD_EXTENSION);
Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT);
intent.addCategory(Intent.CATEGORY_OPENABLE);
intent.setType("*/*");
startActivityForResult(intent, MainPresenter.REQUEST_WAD_FILE);
}

/**
@@ -203,7 +205,7 @@ protected void onActivityResult(int requestCode, int resultCode, Intent result)
break;

case MainPresenter.REQUEST_WAD_FILE:
mPresenter.installWAD(FileBrowserHelper.getSelectedPath(result));
mPresenter.installWAD(result.getData().toString());
break;
}
}
@@ -16,6 +16,7 @@
import org.dolphinemu.dolphinemu.features.settings.ui.MenuTag;
import org.dolphinemu.dolphinemu.model.GameFileCache;
import org.dolphinemu.dolphinemu.services.GameFileCacheService;
import org.dolphinemu.dolphinemu.utils.AfterDirectoryInitializationRunner;

public final class MainPresenter
{
@@ -99,7 +100,7 @@ public boolean handleOptionSelection(int itemId, Context context)
return true;

case R.id.menu_install_wad:
mView.launchInstallWAD();
new AfterDirectoryInitializationRunner().run(context, true, mView::launchInstallWAD);
return true;
}

@@ -179,8 +179,10 @@ public void launchOpenFileActivity()
@Override
public void launchInstallWAD()
{
FileBrowserHelper.openFilePicker(this, MainPresenter.REQUEST_WAD_FILE, false,
FileBrowserHelper.WAD_EXTENSION);
Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT);
intent.addCategory(Intent.CATEGORY_OPENABLE);
intent.setType("*/*");
startActivityForResult(intent, MainPresenter.REQUEST_WAD_FILE);
}

@Override
@@ -226,7 +228,7 @@ protected void onActivityResult(int requestCode, int resultCode, Intent result)
break;

case MainPresenter.REQUEST_WAD_FILE:
mPresenter.installWAD(FileBrowserHelper.getSelectedPath(result));
mPresenter.installWAD(result.getData().toString());
break;
}
}
@@ -27,9 +27,6 @@
public static final HashSet<String> RAW_EXTENSION = new HashSet<>(Collections.singletonList(
"raw"));

public static final HashSet<String> WAD_EXTENSION = new HashSet<>(Collections.singletonList(
"wad"));

public static void openDirectoryPicker(FragmentActivity activity, HashSet<String> extensions)
{
Intent i = new Intent(activity, CustomFilePickerActivity.class);

0 comments on commit 43d11ca

Please sign in to comment.