From c94a94c5971c85e2d12e5d2d906e46b977b0dd19 Mon Sep 17 00:00:00 2001 From: Tadeas Hejnic Date: Wed, 26 Aug 2026 11:10:53 +0200 Subject: [PATCH 01/14] test: disable combobox in copy & open dialog --- .../ayon_core/tools/workfiles/widgets/files_widget.py | 11 ++++++++--- .../tools/workfiles/widgets/save_as_dialog.py | 4 +++- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/client/ayon_core/tools/workfiles/widgets/files_widget.py b/client/ayon_core/tools/workfiles/widgets/files_widget.py index 9c12fa575c6..9fddf9fb1bf 100644 --- a/client/ayon_core/tools/workfiles/widgets/files_widget.py +++ b/client/ayon_core/tools/workfiles/widgets/files_widget.py @@ -99,7 +99,8 @@ def __init__(self, controller, parent): published_widget.save_as_requested.connect(self._on_save_as_request) published_btn_copy_n_open.clicked.connect( - self._on_published_save_clicked) + lambda: self._on_published_save_clicked( + enanble_ext_selection=False)) published_btn_change_context.clicked.connect( self._on_published_change_context_clicked) published_btn_cancel.clicked.connect( @@ -166,14 +167,18 @@ def set_text_filter(self, text_filter): self._workarea_widget.set_text_filter(text_filter) self._published_widget.set_text_filter(text_filter) - def _exec_save_as_dialog(self): + def _exec_save_as_dialog(self, enable_ext_selection=True): """Show SaveAs dialog using currently selected context. Returns: Union[dict[str, Any], None]: Result of the dialog. """ - dialog = SaveAsDialog(self._controller, self) + dialog = SaveAsDialog( + self._controller, + self, + enable_ext_selection=enable_ext_selection + ) dialog.update_context() dialog.exec_() return dialog.get_result() diff --git a/client/ayon_core/tools/workfiles/widgets/save_as_dialog.py b/client/ayon_core/tools/workfiles/widgets/save_as_dialog.py index 24d64319cad..7bd844e4faf 100644 --- a/client/ayon_core/tools/workfiles/widgets/save_as_dialog.py +++ b/client/ayon_core/tools/workfiles/widgets/save_as_dialog.py @@ -93,7 +93,7 @@ class SaveAsDialog(QtWidgets.QDialog): controller (AbstractWorkfilesFrontend): The control object. """ - def __init__(self, controller, parent): + def __init__(self, controller, parent, enable_ext_selection=True): super(SaveAsDialog, self).__init__(parent=parent) self.setWindowFlags(self.windowFlags() | QtCore.Qt.FramelessWindowHint) @@ -196,6 +196,8 @@ def __init__(self, controller, parent): subversion_input.text_changed.connect(self._on_comment_change) extension_combobox.currentIndexChanged.connect( self._on_extension_change) + if enable_ext_selection is False: + extension_combobox.setEnabled(False) btn_ok.pressed.connect(self._on_ok_pressed) btn_cancel.pressed.connect(self._on_cancel_pressed) From bc02174dd7cced75e0bed9b4feaea61bfe761326 Mon Sep 17 00:00:00 2001 From: Tadeas Hejnic Date: Wed, 26 Aug 2026 11:31:32 +0200 Subject: [PATCH 02/14] fix: add missing needed edits --- client/ayon_core/tools/workfiles/widgets/files_widget.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/client/ayon_core/tools/workfiles/widgets/files_widget.py b/client/ayon_core/tools/workfiles/widgets/files_widget.py index 9fddf9fb1bf..410c3693449 100644 --- a/client/ayon_core/tools/workfiles/widgets/files_widget.py +++ b/client/ayon_core/tools/workfiles/widgets/files_widget.py @@ -99,8 +99,8 @@ def __init__(self, controller, parent): published_widget.save_as_requested.connect(self._on_save_as_request) published_btn_copy_n_open.clicked.connect( - lambda: self._on_published_save_clicked( - enanble_ext_selection=False)) + lambda: self._on_published_save_clicked(False) + ) published_btn_change_context.clicked.connect( self._on_published_change_context_clicked) published_btn_cancel.clicked.connect( @@ -319,8 +319,8 @@ def _on_task_changed(self, event): self._update_published_btns_state() self._update_workarea_btns_state() - def _on_published_save_clicked(self): - result = self._exec_save_as_dialog() + def _on_published_save_clicked(self, enanble_ext_selection=True): + result = self._exec_save_as_dialog(enanble_ext_selection) if result is None: return From 5a7226fdeda7fa953e3e98027fd966d1220dd02c Mon Sep 17 00:00:00 2001 From: Tadeas Hejnic Date: Wed, 26 Aug 2026 12:25:18 +0200 Subject: [PATCH 03/14] fix typo + add keyword arg --- .../ayon_core/tools/workfiles/widgets/files_widget.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/client/ayon_core/tools/workfiles/widgets/files_widget.py b/client/ayon_core/tools/workfiles/widgets/files_widget.py index 410c3693449..9462f4b178d 100644 --- a/client/ayon_core/tools/workfiles/widgets/files_widget.py +++ b/client/ayon_core/tools/workfiles/widgets/files_widget.py @@ -99,7 +99,9 @@ def __init__(self, controller, parent): published_widget.save_as_requested.connect(self._on_save_as_request) published_btn_copy_n_open.clicked.connect( - lambda: self._on_published_save_clicked(False) + lambda: self._on_published_save_clicked( + enanble_ext_selection=False + ) ) published_btn_change_context.clicked.connect( self._on_published_change_context_clicked) @@ -319,8 +321,10 @@ def _on_task_changed(self, event): self._update_published_btns_state() self._update_workarea_btns_state() - def _on_published_save_clicked(self, enanble_ext_selection=True): - result = self._exec_save_as_dialog(enanble_ext_selection) + def _on_published_save_clicked(self, enable_ext_selection=True): + result = self._exec_save_as_dialog( + enable_ext_selection=enable_ext_selection + ) if result is None: return From c640c3d7acf0a6a6d21b4d48007c100416851622 Mon Sep 17 00:00:00 2001 From: Tadeas Hejnic Date: Mon, 31 Aug 2026 10:29:02 +0200 Subject: [PATCH 04/14] different approach, remove disable of the combobox, pass only the correct value --- .../ayon_core/tools/workfiles/widgets/files_widget.py | 11 ++++------- .../tools/workfiles/widgets/save_as_dialog.py | 6 ++---- 2 files changed, 6 insertions(+), 11 deletions(-) diff --git a/client/ayon_core/tools/workfiles/widgets/files_widget.py b/client/ayon_core/tools/workfiles/widgets/files_widget.py index 9462f4b178d..c4c14307c48 100644 --- a/client/ayon_core/tools/workfiles/widgets/files_widget.py +++ b/client/ayon_core/tools/workfiles/widgets/files_widget.py @@ -169,7 +169,7 @@ def set_text_filter(self, text_filter): self._workarea_widget.set_text_filter(text_filter) self._published_widget.set_text_filter(text_filter) - def _exec_save_as_dialog(self, enable_ext_selection=True): + def _exec_save_as_dialog(self): """Show SaveAs dialog using currently selected context. Returns: @@ -178,8 +178,7 @@ def _exec_save_as_dialog(self, enable_ext_selection=True): dialog = SaveAsDialog( self._controller, - self, - enable_ext_selection=enable_ext_selection + self ) dialog.update_context() dialog.exec_() @@ -321,10 +320,8 @@ def _on_task_changed(self, event): self._update_published_btns_state() self._update_workarea_btns_state() - def _on_published_save_clicked(self, enable_ext_selection=True): - result = self._exec_save_as_dialog( - enable_ext_selection=enable_ext_selection - ) + def _on_published_save_clicked(self): + result = self._exec_save_as_dialog() if result is None: return diff --git a/client/ayon_core/tools/workfiles/widgets/save_as_dialog.py b/client/ayon_core/tools/workfiles/widgets/save_as_dialog.py index 7bd844e4faf..f879f291100 100644 --- a/client/ayon_core/tools/workfiles/widgets/save_as_dialog.py +++ b/client/ayon_core/tools/workfiles/widgets/save_as_dialog.py @@ -196,9 +196,6 @@ def __init__(self, controller, parent, enable_ext_selection=True): subversion_input.text_changed.connect(self._on_comment_change) extension_combobox.currentIndexChanged.connect( self._on_extension_change) - if enable_ext_selection is False: - extension_combobox.setEnabled(False) - btn_ok.pressed.connect(self._on_ok_pressed) btn_cancel.pressed.connect(self._on_cancel_pressed) @@ -265,7 +262,8 @@ def update_context(self): self._last_version = data["last_version"] self._extension_combobox.clear() - self._extension_combobox.addItems(data["extensions"]) + # allow only the extension from the copied workfile + self._extension_combobox.addItems([data["ext"]]) self._version_input.setValue(last_version) From 3143bfc6699567bfbdb1a5e9acba6d6a0bd337dc Mon Sep 17 00:00:00 2001 From: Tadeas Hejnic Date: Mon, 31 Aug 2026 10:37:27 +0200 Subject: [PATCH 05/14] fix incomplete refactor --- .../tools/workfiles/widgets/files_widget.py | 13 ++++--------- .../tools/workfiles/widgets/save_as_dialog.py | 9 ++++++--- 2 files changed, 10 insertions(+), 12 deletions(-) diff --git a/client/ayon_core/tools/workfiles/widgets/files_widget.py b/client/ayon_core/tools/workfiles/widgets/files_widget.py index c4c14307c48..63e5a7476b7 100644 --- a/client/ayon_core/tools/workfiles/widgets/files_widget.py +++ b/client/ayon_core/tools/workfiles/widgets/files_widget.py @@ -98,11 +98,7 @@ def __init__(self, controller, parent): workarea_btn_save.clicked.connect(self._on_workarea_save_clicked) published_widget.save_as_requested.connect(self._on_save_as_request) - published_btn_copy_n_open.clicked.connect( - lambda: self._on_published_save_clicked( - enanble_ext_selection=False - ) - ) + published_btn_copy_n_open.clicked.connect(self._on_published_save_clicked) published_btn_change_context.clicked.connect( self._on_published_change_context_clicked) published_btn_cancel.clicked.connect( @@ -169,7 +165,7 @@ def set_text_filter(self, text_filter): self._workarea_widget.set_text_filter(text_filter) self._published_widget.set_text_filter(text_filter) - def _exec_save_as_dialog(self): + def _exec_save_as_dialog(self, allow_ext_selection=True): """Show SaveAs dialog using currently selected context. Returns: @@ -177,8 +173,7 @@ def _exec_save_as_dialog(self): """ dialog = SaveAsDialog( - self._controller, - self + self._controller, self, allow_ext_selection=allow_ext_selection ) dialog.update_context() dialog.exec_() @@ -321,7 +316,7 @@ def _on_task_changed(self, event): self._update_workarea_btns_state() def _on_published_save_clicked(self): - result = self._exec_save_as_dialog() + result = self._exec_save_as_dialog(allow_ext_selection=False) if result is None: return diff --git a/client/ayon_core/tools/workfiles/widgets/save_as_dialog.py b/client/ayon_core/tools/workfiles/widgets/save_as_dialog.py index f879f291100..d1292cca131 100644 --- a/client/ayon_core/tools/workfiles/widgets/save_as_dialog.py +++ b/client/ayon_core/tools/workfiles/widgets/save_as_dialog.py @@ -93,7 +93,7 @@ class SaveAsDialog(QtWidgets.QDialog): controller (AbstractWorkfilesFrontend): The control object. """ - def __init__(self, controller, parent, enable_ext_selection=True): + def __init__(self, controller, parent, allow_ext_selection=True): super(SaveAsDialog, self).__init__(parent=parent) self.setWindowFlags(self.windowFlags() | QtCore.Qt.FramelessWindowHint) @@ -262,8 +262,11 @@ def update_context(self): self._last_version = data["last_version"] self._extension_combobox.clear() - # allow only the extension from the copied workfile - self._extension_combobox.addItems([data["ext"]]) + if self._allow_ext_selection: + self._extension_combobox.addItems(data["extensions"]) + else: + # allow only the extension from the copied workfile + self._extension_combobox.addItems([data["ext"]]) self._version_input.setValue(last_version) From 7406f0b923578370639ac816476fdeaabde3dfb7 Mon Sep 17 00:00:00 2001 From: Tadeas Hejnic Date: Mon, 31 Aug 2026 13:06:01 +0200 Subject: [PATCH 06/14] pass selected workfile extension to dialog --- .../tools/workfiles/widgets/files_widget.py | 15 +++++++++++---- .../tools/workfiles/widgets/save_as_dialog.py | 10 +++++++--- 2 files changed, 18 insertions(+), 7 deletions(-) diff --git a/client/ayon_core/tools/workfiles/widgets/files_widget.py b/client/ayon_core/tools/workfiles/widgets/files_widget.py index 63e5a7476b7..79401a98220 100644 --- a/client/ayon_core/tools/workfiles/widgets/files_widget.py +++ b/client/ayon_core/tools/workfiles/widgets/files_widget.py @@ -165,7 +165,7 @@ def set_text_filter(self, text_filter): self._workarea_widget.set_text_filter(text_filter) self._published_widget.set_text_filter(text_filter) - def _exec_save_as_dialog(self, allow_ext_selection=True): + def _exec_save_as_dialog(self, allow_ext_selection=True, extension=None): """Show SaveAs dialog using currently selected context. Returns: @@ -173,7 +173,10 @@ def _exec_save_as_dialog(self, allow_ext_selection=True): """ dialog = SaveAsDialog( - self._controller, self, allow_ext_selection=allow_ext_selection + self._controller, + self, + allow_ext_selection=allow_ext_selection, + extension=extension, ) dialog.update_context() dialog.exec_() @@ -316,11 +319,15 @@ def _on_task_changed(self, event): self._update_workarea_btns_state() def _on_published_save_clicked(self): - result = self._exec_save_as_dialog(allow_ext_selection=False) + repre_info = self._published_widget.get_selected_repre_info() + extension = os.path.splitext(repre_info["filepath"])[1].lower() + result = self._exec_save_as_dialog( + allow_ext_selection=False, + extension=extension, + ) if result is None: return - repre_info = self._published_widget.get_selected_repre_info() self._controller.copy_workfile_representation( repre_info["representation_id"], repre_info["filepath"], diff --git a/client/ayon_core/tools/workfiles/widgets/save_as_dialog.py b/client/ayon_core/tools/workfiles/widgets/save_as_dialog.py index d1292cca131..c5653f59b18 100644 --- a/client/ayon_core/tools/workfiles/widgets/save_as_dialog.py +++ b/client/ayon_core/tools/workfiles/widgets/save_as_dialog.py @@ -93,11 +93,15 @@ class SaveAsDialog(QtWidgets.QDialog): controller (AbstractWorkfilesFrontend): The control object. """ - def __init__(self, controller, parent, allow_ext_selection=True): + def __init__( + self, controller, parent, allow_ext_selection=True, extension=None + ): super(SaveAsDialog, self).__init__(parent=parent) self.setWindowFlags(self.windowFlags() | QtCore.Qt.FramelessWindowHint) self._controller = controller + self._allow_ext_selection = allow_ext_selection + self._extension = extension self._folder_id = None self._task_id = None @@ -264,9 +268,9 @@ def update_context(self): self._extension_combobox.clear() if self._allow_ext_selection: self._extension_combobox.addItems(data["extensions"]) - else: + elif self._extension is not None: # allow only the extension from the copied workfile - self._extension_combobox.addItems([data["ext"]]) + self._extension_combobox.addItems([self._extension]) self._version_input.setValue(last_version) From a06e3c73bb0ed1f1cfcac150ddfcfb0841f5a76d Mon Sep 17 00:00:00 2001 From: Tadeas Hejnic Date: Mon, 31 Aug 2026 13:18:43 +0200 Subject: [PATCH 07/14] remove unneccessary argument --- .../tools/workfiles/widgets/files_widget.py | 8 +++----- .../tools/workfiles/widgets/save_as_dialog.py | 13 ++++++------- 2 files changed, 9 insertions(+), 12 deletions(-) diff --git a/client/ayon_core/tools/workfiles/widgets/files_widget.py b/client/ayon_core/tools/workfiles/widgets/files_widget.py index 79401a98220..496c7d95f3d 100644 --- a/client/ayon_core/tools/workfiles/widgets/files_widget.py +++ b/client/ayon_core/tools/workfiles/widgets/files_widget.py @@ -165,7 +165,7 @@ def set_text_filter(self, text_filter): self._workarea_widget.set_text_filter(text_filter) self._published_widget.set_text_filter(text_filter) - def _exec_save_as_dialog(self, allow_ext_selection=True, extension=None): + def _exec_save_as_dialog(self, extension=None): """Show SaveAs dialog using currently selected context. Returns: @@ -175,8 +175,7 @@ def _exec_save_as_dialog(self, allow_ext_selection=True, extension=None): dialog = SaveAsDialog( self._controller, self, - allow_ext_selection=allow_ext_selection, - extension=extension, + allowed_extension=extension, ) dialog.update_context() dialog.exec_() @@ -322,8 +321,7 @@ def _on_published_save_clicked(self): repre_info = self._published_widget.get_selected_repre_info() extension = os.path.splitext(repre_info["filepath"])[1].lower() result = self._exec_save_as_dialog( - allow_ext_selection=False, - extension=extension, + allowed_extension=extension, ) if result is None: return diff --git a/client/ayon_core/tools/workfiles/widgets/save_as_dialog.py b/client/ayon_core/tools/workfiles/widgets/save_as_dialog.py index c5653f59b18..a26542dfd21 100644 --- a/client/ayon_core/tools/workfiles/widgets/save_as_dialog.py +++ b/client/ayon_core/tools/workfiles/widgets/save_as_dialog.py @@ -94,14 +94,13 @@ class SaveAsDialog(QtWidgets.QDialog): """ def __init__( - self, controller, parent, allow_ext_selection=True, extension=None + self, controller, parent, allowed_extension=None ): super(SaveAsDialog, self).__init__(parent=parent) self.setWindowFlags(self.windowFlags() | QtCore.Qt.FramelessWindowHint) self._controller = controller - self._allow_ext_selection = allow_ext_selection - self._extension = extension + self._allowed_extension = allowed_extension self._folder_id = None self._task_id = None @@ -266,11 +265,11 @@ def update_context(self): self._last_version = data["last_version"] self._extension_combobox.clear() - if self._allow_ext_selection: - self._extension_combobox.addItems(data["extensions"]) - elif self._extension is not None: + if self._allowed_extension: # allow only the extension from the copied workfile - self._extension_combobox.addItems([self._extension]) + self._extension_combobox.addItems([self._allowed_extension]) + else: + self._extension_combobox.addItems(data["extensions"]) self._version_input.setValue(last_version) From 8048e2385bb3066612eac373d28937e310f43f01 Mon Sep 17 00:00:00 2001 From: Tadeas Hejnic Date: Mon, 31 Aug 2026 13:22:29 +0200 Subject: [PATCH 08/14] fix TypeError --- client/ayon_core/tools/workfiles/widgets/files_widget.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/client/ayon_core/tools/workfiles/widgets/files_widget.py b/client/ayon_core/tools/workfiles/widgets/files_widget.py index 496c7d95f3d..b7521d76864 100644 --- a/client/ayon_core/tools/workfiles/widgets/files_widget.py +++ b/client/ayon_core/tools/workfiles/widgets/files_widget.py @@ -321,7 +321,7 @@ def _on_published_save_clicked(self): repre_info = self._published_widget.get_selected_repre_info() extension = os.path.splitext(repre_info["filepath"])[1].lower() result = self._exec_save_as_dialog( - allowed_extension=extension, + extension=extension, ) if result is None: return From 03ff8652f497fb2a538261843366c85d6e92cae9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tade=C3=A1=C5=A1=20Hejnic?= <65614308+tadeas-hejnic@users.noreply.github.com> Date: Mon, 31 Aug 2026 14:10:39 +0200 Subject: [PATCH 09/14] formating adjustment Co-authored-by: Jakub Trllo <43494761+iLLiCiTiT@users.noreply.github.com> --- client/ayon_core/tools/workfiles/widgets/files_widget.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/client/ayon_core/tools/workfiles/widgets/files_widget.py b/client/ayon_core/tools/workfiles/widgets/files_widget.py index b7521d76864..bcc8d7c5044 100644 --- a/client/ayon_core/tools/workfiles/widgets/files_widget.py +++ b/client/ayon_core/tools/workfiles/widgets/files_widget.py @@ -98,7 +98,8 @@ def __init__(self, controller, parent): workarea_btn_save.clicked.connect(self._on_workarea_save_clicked) published_widget.save_as_requested.connect(self._on_save_as_request) - published_btn_copy_n_open.clicked.connect(self._on_published_save_clicked) + published_btn_copy_n_open.clicked.connect( + self._on_published_save_clicked) published_btn_change_context.clicked.connect( self._on_published_change_context_clicked) published_btn_cancel.clicked.connect( From c7eb84a86043b930a6aaf62500b413d14ead3fa0 Mon Sep 17 00:00:00 2001 From: Tadeas Hejnic Date: Mon, 31 Aug 2026 14:17:15 +0200 Subject: [PATCH 10/14] adjustments based on suggestions - allowed_extension -> extension --- .../tools/workfiles/widgets/save_as_dialog.py | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/client/ayon_core/tools/workfiles/widgets/save_as_dialog.py b/client/ayon_core/tools/workfiles/widgets/save_as_dialog.py index a26542dfd21..9c65ae9b7e6 100644 --- a/client/ayon_core/tools/workfiles/widgets/save_as_dialog.py +++ b/client/ayon_core/tools/workfiles/widgets/save_as_dialog.py @@ -89,18 +89,16 @@ class SaveAsDialog(QtWidgets.QDialog): The filename is calculated in controller where UI sends values from dialog inputs. - Args: - controller (AbstractWorkfilesFrontend): The control object. + controller (AbstractWorkfilesFrontend): The control object. + parent (QtWidgets.QWidget): Parent widget. + extension (str | None): Limit extensions to specific one. """ - - def __init__( - self, controller, parent, allowed_extension=None - ): + def __init__(self, controller, parent, extension=None): super(SaveAsDialog, self).__init__(parent=parent) self.setWindowFlags(self.windowFlags() | QtCore.Qt.FramelessWindowHint) self._controller = controller - self._allowed_extension = allowed_extension + self._allowed_extension = extension self._folder_id = None self._task_id = None From 6d6d7bdc290ff03b2f45d64841ff34f08a41c5f7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tade=C3=A1=C5=A1=20Hejnic?= <65614308+tadeas-hejnic@users.noreply.github.com> Date: Mon, 31 Aug 2026 15:28:47 +0200 Subject: [PATCH 11/14] alowed_extension -> extension Co-authored-by: Jakub Trllo <43494761+iLLiCiTiT@users.noreply.github.com> --- client/ayon_core/tools/workfiles/widgets/files_widget.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/client/ayon_core/tools/workfiles/widgets/files_widget.py b/client/ayon_core/tools/workfiles/widgets/files_widget.py index bcc8d7c5044..7274e00f8df 100644 --- a/client/ayon_core/tools/workfiles/widgets/files_widget.py +++ b/client/ayon_core/tools/workfiles/widgets/files_widget.py @@ -176,7 +176,7 @@ def _exec_save_as_dialog(self, extension=None): dialog = SaveAsDialog( self._controller, self, - allowed_extension=extension, + extension=extension, ) dialog.update_context() dialog.exec_() From 2fd414398356b08216e7663590c0980ccdd92b53 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tade=C3=A1=C5=A1=20Hejnic?= <65614308+tadeas-hejnic@users.noreply.github.com> Date: Mon, 31 Aug 2026 15:29:10 +0200 Subject: [PATCH 12/14] alowed_extension -> extension Co-authored-by: Jakub Trllo <43494761+iLLiCiTiT@users.noreply.github.com> --- client/ayon_core/tools/workfiles/widgets/save_as_dialog.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/client/ayon_core/tools/workfiles/widgets/save_as_dialog.py b/client/ayon_core/tools/workfiles/widgets/save_as_dialog.py index 9c65ae9b7e6..6e0bcbe85c3 100644 --- a/client/ayon_core/tools/workfiles/widgets/save_as_dialog.py +++ b/client/ayon_core/tools/workfiles/widgets/save_as_dialog.py @@ -98,7 +98,7 @@ def __init__(self, controller, parent, extension=None): self.setWindowFlags(self.windowFlags() | QtCore.Qt.FramelessWindowHint) self._controller = controller - self._allowed_extension = extension + self._extension = extension self._folder_id = None self._task_id = None From 91a846e7b3b7fd72c91c6abeb3dd4d6f74cf4d55 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tade=C3=A1=C5=A1=20Hejnic?= <65614308+tadeas-hejnic@users.noreply.github.com> Date: Mon, 31 Aug 2026 15:29:43 +0200 Subject: [PATCH 13/14] alowed_extension -> extension Co-authored-by: Jakub Trllo <43494761+iLLiCiTiT@users.noreply.github.com> --- .../tools/workfiles/widgets/save_as_dialog.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/client/ayon_core/tools/workfiles/widgets/save_as_dialog.py b/client/ayon_core/tools/workfiles/widgets/save_as_dialog.py index 6e0bcbe85c3..922e43cab0e 100644 --- a/client/ayon_core/tools/workfiles/widgets/save_as_dialog.py +++ b/client/ayon_core/tools/workfiles/widgets/save_as_dialog.py @@ -263,11 +263,11 @@ def update_context(self): self._last_version = data["last_version"] self._extension_combobox.clear() - if self._allowed_extension: - # allow only the extension from the copied workfile - self._extension_combobox.addItems([self._allowed_extension]) - else: - self._extension_combobox.addItems(data["extensions"]) + extensions = data["extensions"] + if self._extension: + extensions = [self._extension]) + + self._extension_combobox.addItems(extensions) self._version_input.setValue(last_version) From 69a88d9038bb28c72acc4460494223ba017694fd Mon Sep 17 00:00:00 2001 From: Tadeas Hejnic Date: Mon, 31 Aug 2026 15:32:53 +0200 Subject: [PATCH 14/14] remove ) --- client/ayon_core/tools/workfiles/widgets/save_as_dialog.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/client/ayon_core/tools/workfiles/widgets/save_as_dialog.py b/client/ayon_core/tools/workfiles/widgets/save_as_dialog.py index 922e43cab0e..bb7792a426a 100644 --- a/client/ayon_core/tools/workfiles/widgets/save_as_dialog.py +++ b/client/ayon_core/tools/workfiles/widgets/save_as_dialog.py @@ -265,7 +265,7 @@ def update_context(self): self._extension_combobox.clear() extensions = data["extensions"] if self._extension: - extensions = [self._extension]) + extensions = [self._extension] self._extension_combobox.addItems(extensions)