Merge pull request #56706 from KoBeWi/we_need_to_go_higher

This commit is contained in:
Rémi Verschelde 2022-01-14 21:19:34 +01:00 committed by GitHub
commit c1e78f749e
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -130,6 +130,18 @@ void EditorFileDialog::_notification(int p_what) {
if (!is_visible()) {
set_process_unhandled_input(false);
}
} else if (p_what == NOTIFICATION_WM_WINDOW_FOCUS_IN) {
// Check if the current directory was removed externally (much less likely to happen while editor window is focused).
String previous_dir = get_current_dir();
while (!dir_access->dir_exists(get_current_dir())) {
_go_up();
// In case we can't go further up, use some fallback and break.
if (get_current_dir() == previous_dir) {
_dir_submitted(OS::get_singleton()->get_user_data_dir());
break;
}
}
}
}
@ -1306,7 +1318,7 @@ void EditorFileDialog::_recent_selected(int p_idx) {
}
void EditorFileDialog::_go_up() {
dir_access->change_dir("..");
dir_access->change_dir(get_current_dir().get_base_dir());
update_file_list();
update_dir();
_push_history();