From c7c79f920315b7a028f92893917abe4333cf8cd3 Mon Sep 17 00:00:00 2001 From: Emmanouil Papadeas <35376950+OverloadedOrama@users.noreply.github.com> Date: Sun, 9 Feb 2025 20:39:12 +0200 Subject: [PATCH] Always open the import dialog when opening images from File > Open --- src/Autoload/OpenSave.gd | 12 ++++++++---- src/Main.gd | 2 +- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/src/Autoload/OpenSave.gd b/src/Autoload/OpenSave.gd index 044d50245..d6d73b5d7 100644 --- a/src/Autoload/OpenSave.gd +++ b/src/Autoload/OpenSave.gd @@ -25,7 +25,7 @@ func _ready() -> void: update_autosave() -func handle_loading_file(file: String) -> void: +func handle_loading_file(file: String, force_import_dialog_on_images := false) -> void: file = file.replace("\\", "/") var file_ext := file.get_extension().to_lower() if file_ext == "pxo": # Pixelorama project file @@ -74,7 +74,7 @@ func handle_loading_file(file: String) -> void: var file_name: String = file.get_file() Global.popup_error(tr("Can't load file '%s'.") % [file_name]) return - handle_loading_image(file, image) + handle_loading_image(file, image, force_import_dialog_on_images) func add_import_option(import_name: StringName, import_scene: PackedScene) -> int: @@ -118,8 +118,12 @@ func load_image_from_buffer(buffer: PackedByteArray) -> Image: return image -func handle_loading_image(file: String, image: Image) -> void: - if Global.projects.size() <= 1 and Global.current_project.is_empty(): +func handle_loading_image(file: String, image: Image, force_import_dialog := false) -> void: + if ( + Global.projects.size() <= 1 + and Global.current_project.is_empty() + and not force_import_dialog + ): open_image_as_new_tab(file, image) return var preview_dialog := preview_dialog_tscn.instantiate() as ImportPreviewDialog diff --git a/src/Main.gd b/src/Main.gd index 3dc33ed3d..e98439a2a 100644 --- a/src/Main.gd +++ b/src/Main.gd @@ -443,7 +443,7 @@ func load_recent_project_file(path: String) -> void: func _on_OpenSprite_files_selected(paths: PackedStringArray) -> void: for path in paths: - OpenSave.handle_loading_file(path) + OpenSave.handle_loading_file(path, true) save_sprite_dialog.current_dir = paths[0].get_base_dir()