Fix #4538: 删除实例失败时弹出对话框 (#4540)

This commit is contained in:
Glavo
2025-11-08 21:52:01 +08:00
committed by GitHub
parent 81b61523df
commit 733b2c90c4
4 changed files with 11 additions and 1 deletions

View File

@@ -112,7 +112,14 @@ public final class Versions {
JFXButton deleteButton = new JFXButton(i18n("button.delete")); JFXButton deleteButton = new JFXButton(i18n("button.delete"));
deleteButton.getStyleClass().add("dialog-error"); deleteButton.getStyleClass().add("dialog-error");
deleteButton.setOnAction(e -> profile.getRepository().removeVersionFromDisk(version)); deleteButton.setOnAction(e -> {
Task.supplyAsync(Schedulers.io(), () -> profile.getRepository().removeVersionFromDisk(version))
.whenComplete(Schedulers.javafx(), (result, exception) -> {
if (exception != null || !Boolean.TRUE.equals(result)) {
Controllers.dialog(i18n("version.manage.remove.failed"), i18n("message.error"), MessageDialogPane.MessageType.ERROR);
}
}).start();
});
Controllers.confirmAction(message, i18n("message.warning"), MessageDialogPane.MessageType.WARNING, deleteButton); Controllers.confirmAction(message, i18n("message.warning"), MessageDialogPane.MessageType.WARNING, deleteButton);
} }

View File

@@ -1569,6 +1569,7 @@ version.manage.redownload_assets_index=Update Game Assets
version.manage.remove=Delete Instance version.manage.remove=Delete Instance
version.manage.remove.confirm.trash=Are you sure you want to remove the instance "%1$s"? You can still find its files in your recycle bin by the name of "%2$s". version.manage.remove.confirm.trash=Are you sure you want to remove the instance "%1$s"? You can still find its files in your recycle bin by the name of "%2$s".
version.manage.remove.confirm.independent=Since this instance is stored in an isolated directory, deleting it will also delete its saves and other data. Do you still want to delete the instance "%s"? version.manage.remove.confirm.independent=Since this instance is stored in an isolated directory, deleting it will also delete its saves and other data. Do you still want to delete the instance "%s"?
version.manage.remove.failed=Failed to delete the instance. Some files might be in use.
version.manage.remove_assets=Delete All Assets version.manage.remove_assets=Delete All Assets
version.manage.remove_libraries=Delete All Libraries version.manage.remove_libraries=Delete All Libraries
version.manage.rename=Rename Instance version.manage.rename=Rename Instance

View File

@@ -1353,6 +1353,7 @@ version.manage.redownload_assets_index=更新遊戲資源檔案
version.manage.remove=刪除該實例 version.manage.remove=刪除該實例
version.manage.remove.confirm.trash=真的要刪除實例「%s」嗎? 你可以在系統的資源回收筒 (或垃圾桶) 中還原目錄「%s」來找回該實例。 version.manage.remove.confirm.trash=真的要刪除實例「%s」嗎? 你可以在系統的資源回收筒 (或垃圾桶) 中還原目錄「%s」來找回該實例。
version.manage.remove.confirm.independent=由於該實例啟用了「(全域/實例特定) 遊戲設定 → 執行路徑 → 各實例獨立」設定,刪除該實例將導致該遊戲的存檔等資料一同被刪除!真的要刪除實例「%s」嗎? version.manage.remove.confirm.independent=由於該實例啟用了「(全域/實例特定) 遊戲設定 → 執行路徑 → 各實例獨立」設定,刪除該實例將導致該遊戲的存檔等資料一同被刪除!真的要刪除實例「%s」嗎?
version.manage.remove.failed=刪除實例失敗。可能檔案被占用。
version.manage.remove_assets=刪除所有遊戲資源檔案 version.manage.remove_assets=刪除所有遊戲資源檔案
version.manage.remove_libraries=刪除所有支援庫檔案 version.manage.remove_libraries=刪除所有支援庫檔案
version.manage.rename=重新命名該實例 version.manage.rename=重新命名該實例

View File

@@ -1363,6 +1363,7 @@ version.manage.redownload_assets_index=更新游戏资源文件
version.manage.remove=删除该实例 version.manage.remove=删除该实例
version.manage.remove.confirm.trash=真的要删除实例“%s”吗你可以在系统的回收站中还原“%s”文件夹来找回该实例。 version.manage.remove.confirm.trash=真的要删除实例“%s”吗你可以在系统的回收站中还原“%s”文件夹来找回该实例。
version.manage.remove.confirm.independent=由于该游戏启用了“(全局/实例特定) 游戏设置 → 版本隔离 → 各实例独立”选项,删除该实例将导致该游戏的存档等数据一同被删除!真的要删除实例“%s”吗 version.manage.remove.confirm.independent=由于该游戏启用了“(全局/实例特定) 游戏设置 → 版本隔离 → 各实例独立”选项,删除该实例将导致该游戏的存档等数据一同被删除!真的要删除实例“%s”吗
version.manage.remove.failed=删除实例失败。可能文件被占用。
version.manage.remove_assets=删除所有游戏资源文件 version.manage.remove_assets=删除所有游戏资源文件
version.manage.remove_libraries=删除所有库文件 version.manage.remove_libraries=删除所有库文件
version.manage.rename=重命名该实例 version.manage.rename=重命名该实例