From 42a8ed26919ce490a8c38ea1eab98cd00620e63e Mon Sep 17 00:00:00 2001 From: Thesacraft Date: Fri, 29 Nov 2024 19:26:00 +0100 Subject: [PATCH 1/2] fix: cannot disconnect from None Warning --- tagstudio/src/qt/widgets/fields.py | 8 +++----- tagstudio/src/qt/widgets/preview_panel.py | 4 ---- 2 files changed, 3 insertions(+), 9 deletions(-) diff --git a/tagstudio/src/qt/widgets/fields.py b/tagstudio/src/qt/widgets/fields.py index 2fb8d7fbd..a5262e835 100644 --- a/tagstudio/src/qt/widgets/fields.py +++ b/tagstudio/src/qt/widgets/fields.py @@ -113,8 +113,7 @@ def set_copy_callback(self, callback: Optional[MethodType]): self.copy_callback = callback self.copy_button.clicked.connect(callback) - if callback is not None: - self.copy_button.is_connected = True + self.copy_button.is_connected = isinstance(callback, Callable) def set_edit_callback(self, callback: Callable): if self.edit_button.is_connected: @@ -122,8 +121,7 @@ def set_edit_callback(self, callback: Callable): self.edit_callback = callback self.edit_button.clicked.connect(callback) - if callback is not None: - self.edit_button.is_connected = True + self.edit_button.is_connected = isinstance(callback, Callable) def set_remove_callback(self, callback: Callable): if self.remove_button.is_connected: @@ -131,7 +129,7 @@ def set_remove_callback(self, callback: Callable): self.remove_callback = callback self.remove_button.clicked.connect(callback) - self.remove_button.is_connected = True + self.remove_button.is_connected = isinstance(callback, Callable) def set_inner_widget(self, widget: "FieldWidget"): if self.field_layout.itemAt(0): diff --git a/tagstudio/src/qt/widgets/preview_panel.py b/tagstudio/src/qt/widgets/preview_panel.py index e74d2dc75..1743f368e 100644 --- a/tagstudio/src/qt/widgets/preview_panel.py +++ b/tagstudio/src/qt/widgets/preview_panel.py @@ -857,10 +857,6 @@ def write_container(self, index: int, field: BaseField, is_mixed: bool = False): else: container = self.containers[index] - container.set_copy_callback(None) - container.set_edit_callback(None) - container.set_remove_callback(None) - if isinstance(field, TagBoxField): container.set_title(field.type.name) container.set_inline(False) From 9425f0648e5b9a63b7e706f2f2a242027ef752eb Mon Sep 17 00:00:00 2001 From: Thesacraft Date: Fri, 29 Nov 2024 19:52:33 +0100 Subject: [PATCH 2/2] fix: cannot disconnect from None Warning mypy compliant --- tagstudio/src/qt/widgets/fields.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tagstudio/src/qt/widgets/fields.py b/tagstudio/src/qt/widgets/fields.py index a5262e835..2408ecbef 100644 --- a/tagstudio/src/qt/widgets/fields.py +++ b/tagstudio/src/qt/widgets/fields.py @@ -113,7 +113,7 @@ def set_copy_callback(self, callback: Optional[MethodType]): self.copy_callback = callback self.copy_button.clicked.connect(callback) - self.copy_button.is_connected = isinstance(callback, Callable) + self.copy_button.is_connected = callable(callback) def set_edit_callback(self, callback: Callable): if self.edit_button.is_connected: @@ -121,7 +121,7 @@ def set_edit_callback(self, callback: Callable): self.edit_callback = callback self.edit_button.clicked.connect(callback) - self.edit_button.is_connected = isinstance(callback, Callable) + self.edit_button.is_connected = callable(callback) def set_remove_callback(self, callback: Callable): if self.remove_button.is_connected: @@ -129,7 +129,7 @@ def set_remove_callback(self, callback: Callable): self.remove_callback = callback self.remove_button.clicked.connect(callback) - self.remove_button.is_connected = isinstance(callback, Callable) + self.remove_button.is_connected = callable(callback) def set_inner_widget(self, widget: "FieldWidget"): if self.field_layout.itemAt(0):