Android: Use AfterDirectoryInitializationRunner more comprehensively
Should fix the crash reported in https://bugs.dolphin-emu.org/issues/12885
This commit is contained in:
parent
c5c4169bc8
commit
342af6512c
|
@ -26,6 +26,7 @@ import org.dolphinemu.dolphinemu.utils.AfterDirectoryInitializationRunner;
|
||||||
import org.dolphinemu.dolphinemu.utils.BooleanSupplier;
|
import org.dolphinemu.dolphinemu.utils.BooleanSupplier;
|
||||||
import org.dolphinemu.dolphinemu.utils.CompletableFuture;
|
import org.dolphinemu.dolphinemu.utils.CompletableFuture;
|
||||||
import org.dolphinemu.dolphinemu.utils.ContentHandler;
|
import org.dolphinemu.dolphinemu.utils.ContentHandler;
|
||||||
|
import org.dolphinemu.dolphinemu.utils.DirectoryInitialization;
|
||||||
import org.dolphinemu.dolphinemu.utils.FileBrowserHelper;
|
import org.dolphinemu.dolphinemu.utils.FileBrowserHelper;
|
||||||
import org.dolphinemu.dolphinemu.utils.ThreadUtil;
|
import org.dolphinemu.dolphinemu.utils.ThreadUtil;
|
||||||
import org.dolphinemu.dolphinemu.utils.WiiUtils;
|
import org.dolphinemu.dolphinemu.utils.WiiUtils;
|
||||||
|
@ -92,7 +93,8 @@ public final class MainPresenter
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
case R.id.button_add_directory:
|
case R.id.button_add_directory:
|
||||||
mView.launchFileListActivity();
|
new AfterDirectoryInitializationRunner().runWithLifecycle(activity, true,
|
||||||
|
mView::launchFileListActivity);
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
case R.id.menu_open_file:
|
case R.id.menu_open_file:
|
||||||
|
@ -104,7 +106,8 @@ public final class MainPresenter
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
case R.id.menu_online_system_update:
|
case R.id.menu_online_system_update:
|
||||||
launchOnlineUpdate();
|
new AfterDirectoryInitializationRunner().runWithLifecycle(activity, true,
|
||||||
|
this::launchOnlineUpdate);
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
case R.id.menu_install_wad:
|
case R.id.menu_install_wad:
|
||||||
|
@ -310,18 +313,20 @@ public final class MainPresenter
|
||||||
|
|
||||||
private void launchWiiSystemMenu()
|
private void launchWiiSystemMenu()
|
||||||
{
|
{
|
||||||
WiiUtils.isSystemMenuInstalled();
|
|
||||||
|
|
||||||
if (WiiUtils.isSystemMenuInstalled())
|
if (WiiUtils.isSystemMenuInstalled())
|
||||||
{
|
{
|
||||||
EmulationActivity.launchSystemMenu(mActivity);
|
EmulationActivity.launchSystemMenu(mActivity);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
SystemMenuNotInstalledDialogFragment dialogFragment =
|
new AfterDirectoryInitializationRunner().runWithLifecycle(mActivity, true, () ->
|
||||||
new SystemMenuNotInstalledDialogFragment();
|
{
|
||||||
dialogFragment
|
SystemMenuNotInstalledDialogFragment dialogFragment =
|
||||||
.show(mActivity.getSupportFragmentManager(), "SystemMenuNotInstalledDialogFragment");
|
new SystemMenuNotInstalledDialogFragment();
|
||||||
|
dialogFragment
|
||||||
|
.show(mActivity.getSupportFragmentManager(),
|
||||||
|
"SystemMenuNotInstalledDialogFragment");
|
||||||
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue