!81 !80fix:修复重命名同样的文件没有提示的bug

Merge pull request !81 from Luke/release-v1.1.12
This commit is contained in:
Luke 2023-09-08 17:17:53 +00:00 committed by Gitee
commit a619406005
No known key found for this signature in database
GPG Key ID: 173E9B9CA92EEF8F

View File

@ -62,11 +62,15 @@ public class RenameFile implements EventHandler<ActionEvent> {
textField.setOnKeyPressed(event -> { textField.setOnKeyPressed(event -> {
if (event.getCode() == KeyCode.ENTER) { if (event.getCode() == KeyCode.ENTER) {
String newTabName = textField.getText(); String newTabName = textField.getText();
// 检查是否存在相同名称的标签页 // 检查是否存在相同名称的标签页
if (isTabNameExists(newTabName)) { if (isTabNameExists(newTabName)) {
// 显示弹窗并提示用户更换名称 // 显示弹窗并提示用户更换名称
showDuplicateNameAlert(newTabName); showDuplicateNameAlert(newTabName);
// 恢复原始名称
centerTab.setText(centerTab.getUserData().toString());
} else { } else {
centerTab.setText(newTabName); centerTab.setText(newTabName);
// 可选移除 TextField 的图形 // 可选移除 TextField 的图形
@ -79,8 +83,14 @@ public class RenameFile implements EventHandler<ActionEvent> {
// 监听失去焦点事件完成编辑 // 监听失去焦点事件完成编辑
textField.focusedProperty().addListener((observable, oldValue, newValue) -> { textField.focusedProperty().addListener((observable, oldValue, newValue) -> {
String newTabName = textField.getText();
// 检查是否存在相同名称的标签页
if (isTabNameExists(newTabName)) {
// 恢复原始名称
centerTab.setText(centerTab.getUserData().toString());
}
if (Boolean.FALSE.equals(newValue)) { if (Boolean.FALSE.equals(newValue)) {
String newTabName = textField.getText();
centerTab.setText(newTabName); centerTab.setText(newTabName);
// 可选移除 TextField 的图形 // 可选移除 TextField 的图形
centerTab.setGraphic(null); centerTab.setGraphic(null);