Skip to content

Commit 774c886

Browse files
authored
fix(ui): update ui when removing fields (#560)
1 parent bec513f commit 774c886

File tree

1 file changed

+13
-11
lines changed

1 file changed

+13
-11
lines changed

tagstudio/src/qt/widgets/preview_panel.py

Lines changed: 13 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -68,16 +68,6 @@
6868
logger = structlog.get_logger(__name__)
6969

7070

71-
def update_selected_entry(driver: "QtDriver"):
72-
for grid_idx in driver.selected:
73-
entry = driver.frame_content[grid_idx]
74-
# reload entry
75-
results = driver.lib.search_library(FilterState(id=entry.id))
76-
logger.info("found item", entries=len(results), grid_idx=grid_idx, lookup_id=entry.id)
77-
assert results, f"Entry not found: {entry.id}"
78-
driver.frame_content[grid_idx] = next(results)
79-
80-
8171
class PreviewPanel(QWidget):
8272
"""The Preview Panel Widget."""
8373

@@ -293,6 +283,18 @@ def __init__(self, library: Library, driver: "QtDriver"):
293283
root_layout.setContentsMargins(0, 0, 0, 0)
294284
root_layout.addWidget(splitter)
295285

286+
def update_selected_entry(self, driver: "QtDriver"):
287+
for grid_idx in driver.selected:
288+
entry = driver.frame_content[grid_idx]
289+
results = self.lib.search_library(FilterState(id=entry.id))
290+
logger.info(
291+
"found item",
292+
entries=len(results.items),
293+
grid_idx=grid_idx,
294+
lookup_id=entry.id,
295+
)
296+
self.driver.frame_content[grid_idx] = results[0]
297+
296298
def remove_field_prompt(self, name: str) -> str:
297299
return f'Are you sure you want to remove field "{name}"?'
298300

@@ -900,7 +902,7 @@ def write_container(self, index: int, field: BaseField, is_mixed: bool = False):
900902
prompt=self.remove_field_prompt(field.type.name),
901903
callback=lambda: (
902904
self.remove_field(field),
903-
update_selected_entry(self.driver),
905+
self.update_selected_entry(self.driver),
904906
# reload entry and its fields
905907
self.update_widgets(),
906908
),

0 commit comments

Comments
 (0)