[Feature] [UI] 统一账户选择弹窗在列表为空时的表现 (#5054)
This commit is contained in:
@@ -19,6 +19,7 @@ package org.jackhuang.hmcl.ui.main;
|
|||||||
|
|
||||||
import com.jfoenix.controls.JFXPopup;
|
import com.jfoenix.controls.JFXPopup;
|
||||||
import javafx.beans.property.ReadOnlyObjectProperty;
|
import javafx.beans.property.ReadOnlyObjectProperty;
|
||||||
|
import javafx.scene.control.Label;
|
||||||
import javafx.scene.input.MouseButton;
|
import javafx.scene.input.MouseButton;
|
||||||
import org.jackhuang.hmcl.Metadata;
|
import org.jackhuang.hmcl.Metadata;
|
||||||
import org.jackhuang.hmcl.auth.Account;
|
import org.jackhuang.hmcl.auth.Account;
|
||||||
@@ -149,8 +150,7 @@ public class RootPage extends DecoratorAnimatedPage implements DecoratorPage {
|
|||||||
accountListItem.setOnAction(e -> Controllers.navigate(Controllers.getAccountListPage()));
|
accountListItem.setOnAction(e -> Controllers.navigate(Controllers.getAccountListPage()));
|
||||||
accountListItem.setOnMouseClicked(e -> {
|
accountListItem.setOnMouseClicked(e -> {
|
||||||
if (e.getButton() == MouseButton.SECONDARY) {
|
if (e.getButton() == MouseButton.SECONDARY) {
|
||||||
if (!Accounts.getAccounts().isEmpty())
|
showAccountListPopupMenu(accountListItem);
|
||||||
showAccountListPopupMenu(accountListItem);
|
|
||||||
e.consume();
|
e.consume();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
@@ -265,13 +265,19 @@ public class RootPage extends DecoratorAnimatedPage implements DecoratorPage {
|
|||||||
scrollPane.setPrefHeight(-1);
|
scrollPane.setPrefHeight(-1);
|
||||||
scrollPane.setMaxHeight(260);
|
scrollPane.setMaxHeight(260);
|
||||||
|
|
||||||
for (Account account : Accounts.getAccounts()) {
|
if (Accounts.getAccounts().isEmpty()) {
|
||||||
AccountAdvancedListItem item = new AccountAdvancedListItem(account);
|
Label placeholder = new Label(i18n("account.empty"));
|
||||||
item.setOnAction(e -> {
|
placeholder.setStyle("-fx-padding: 10px; -fx-text-fill: gray; -fx-font-style: italic;");
|
||||||
Accounts.setSelectedAccount(account);
|
scrollPane.add(placeholder);
|
||||||
popup.hide();
|
} else {
|
||||||
});
|
for (Account account : Accounts.getAccounts()) {
|
||||||
scrollPane.add(item);
|
AccountAdvancedListItem item = new AccountAdvancedListItem(account);
|
||||||
|
item.setOnAction(e -> {
|
||||||
|
Accounts.setSelectedAccount(account);
|
||||||
|
popup.hide();
|
||||||
|
});
|
||||||
|
scrollPane.add(item);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
popupMenu.getContent().add(scrollPane);
|
popupMenu.getContent().add(scrollPane);
|
||||||
|
|||||||
@@ -60,6 +60,7 @@ account.create.microsoft=Add a Microsoft Account
|
|||||||
account.create.offline=Add an Offline Account
|
account.create.offline=Add an Offline Account
|
||||||
account.create.authlibInjector=Add an authlib-injector Account
|
account.create.authlibInjector=Add an authlib-injector Account
|
||||||
account.email=Email
|
account.email=Email
|
||||||
|
account.empty=No Accounts
|
||||||
account.failed=Failed to refresh account.
|
account.failed=Failed to refresh account.
|
||||||
account.failed.character_deleted=The player has already been deleted.
|
account.failed.character_deleted=The player has already been deleted.
|
||||||
account.failed.connect_authentication_server=Failed to connect to the authentication server, your network connection may be down.
|
account.failed.connect_authentication_server=Failed to connect to the authentication server, your network connection may be down.
|
||||||
|
|||||||
@@ -59,6 +59,7 @@ account.create.microsoft=新增 Microsoft 帳戶
|
|||||||
account.create.offline=新增離線模式帳戶
|
account.create.offline=新增離線模式帳戶
|
||||||
account.create.authlibInjector=新增 authlib-injector 帳戶
|
account.create.authlibInjector=新增 authlib-injector 帳戶
|
||||||
account.email=電子信箱
|
account.email=電子信箱
|
||||||
|
account.empty=沒有帳戶
|
||||||
account.failed=帳戶重新整理失敗
|
account.failed=帳戶重新整理失敗
|
||||||
account.failed.character_deleted=已刪除此角色
|
account.failed.character_deleted=已刪除此角色
|
||||||
account.failed.connect_authentication_server=無法連線至認證伺服器。可能是網路問題,請檢查裝置能否正常上網或使用代理服務。
|
account.failed.connect_authentication_server=無法連線至認證伺服器。可能是網路問題,請檢查裝置能否正常上網或使用代理服務。
|
||||||
|
|||||||
@@ -59,6 +59,7 @@ account.create.microsoft=添加微软账户
|
|||||||
account.create.offline=添加离线模式账户
|
account.create.offline=添加离线模式账户
|
||||||
account.create.authlibInjector=添加外置登录账户 (authlib-injector)
|
account.create.authlibInjector=添加外置登录账户 (authlib-injector)
|
||||||
account.email=邮箱
|
account.email=邮箱
|
||||||
|
account.empty=没有账户
|
||||||
account.failed=账户刷新失败
|
account.failed=账户刷新失败
|
||||||
account.failed.character_deleted=此角色已被删除
|
account.failed.character_deleted=此角色已被删除
|
||||||
account.failed.connect_authentication_server=无法连接认证服务器。可能是网络问题,请检查设备能否正常上网或使用代理服务。\n你可以点击右上角帮助按钮进行求助。
|
account.failed.connect_authentication_server=无法连接认证服务器。可能是网络问题,请检查设备能否正常上网或使用代理服务。\n你可以点击右上角帮助按钮进行求助。
|
||||||
|
|||||||
Reference in New Issue
Block a user