You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-11-18 14:21:41 +00:00
Merge pull request #94703 from fstxz/fix_get_selected_paths
Fix `EditorInterface.get_selected_paths()` working incorrectly when FileSystemDock is in split mode
This commit is contained in:
@@ -685,7 +685,15 @@ void FileSystemDock::_tree_multi_selected(Object *p_item, int p_column, bool p_s
|
||||
}
|
||||
|
||||
Vector<String> FileSystemDock::get_selected_paths() const {
|
||||
return _tree_get_selected(false);
|
||||
if (display_mode == DISPLAY_MODE_TREE_ONLY) {
|
||||
return _tree_get_selected(false);
|
||||
} else {
|
||||
Vector<String> selected = _file_list_get_selected();
|
||||
if (selected.is_empty()) {
|
||||
selected.push_back(get_current_directory());
|
||||
}
|
||||
return selected;
|
||||
}
|
||||
}
|
||||
|
||||
String FileSystemDock::get_current_path() const {
|
||||
@@ -2050,6 +2058,15 @@ Vector<String> FileSystemDock::_tree_get_selected(bool remove_self_inclusion, bo
|
||||
return selected_strings;
|
||||
}
|
||||
|
||||
Vector<String> FileSystemDock::_file_list_get_selected() const {
|
||||
Vector<String> selected;
|
||||
|
||||
for (int idx : files->get_selected_items()) {
|
||||
selected.push_back(files->get_item_metadata(idx));
|
||||
}
|
||||
return selected;
|
||||
}
|
||||
|
||||
Vector<String> FileSystemDock::_remove_self_included_paths(Vector<String> selected_strings) {
|
||||
// Remove paths or files that are included into another.
|
||||
if (selected_strings.size() > 1) {
|
||||
|
||||
Reference in New Issue
Block a user