Fix preview in file dialog

If the preview is already cached, queue_ressource_preview calls
_thumbnail_done immediately, so preview_waiting is never set to false
again. The progress wheel isn't rendered, because the WaitPreview icons
don't exist. This should probably be Progress.
Fixes #25749
This commit is contained in:
Paul Trojahn 2019-03-02 13:33:54 +01:00
parent b69569415f
commit 6e865d1e11

View file

@ -75,7 +75,7 @@ void EditorFileDialog::_notification(int p_what) {
preview_wheel_index++; preview_wheel_index++;
if (preview_wheel_index >= 8) if (preview_wheel_index >= 8)
preview_wheel_index = 0; preview_wheel_index = 0;
Ref<Texture> frame = get_icon("WaitPreview" + itos(preview_wheel_index + 1), "EditorIcons"); Ref<Texture> frame = get_icon("Progress" + itos(preview_wheel_index + 1), "EditorIcons");
preview->set_texture(frame); preview->set_texture(frame);
preview_wheel_timeout = 0.1; preview_wheel_timeout = 0.1;
} }
@ -323,11 +323,10 @@ void EditorFileDialog::_request_single_thumbnail(const String &p_path) {
if (!FileAccess::exists(p_path)) if (!FileAccess::exists(p_path))
return; return;
EditorResourcePreview::get_singleton()->queue_resource_preview(p_path, this, "_thumbnail_done", p_path);
set_process(true); set_process(true);
preview_waiting = true; preview_waiting = true;
preview_wheel_timeout = 0; preview_wheel_timeout = 0;
EditorResourcePreview::get_singleton()->queue_resource_preview(p_path, this, "_thumbnail_done", p_path);
} }
void EditorFileDialog::_action_pressed() { void EditorFileDialog::_action_pressed() {