Skip to content

Commit 9321f9b

Browse files
committed
Only refresh data type checkbox on select datatype change.
1 parent 03cc197 commit 9321f9b

2 files changed

Lines changed: 27 additions & 7 deletions

File tree

datashuttle/tui/tabs/create_folders.py

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,8 @@ def compose(self) -> ComposeResult:
9696
yield Container(
9797
DatatypeCheckboxes(
9898
self.interface, id="create_folders_datatype_checkboxes"
99-
)
99+
),
100+
id="create_folders_datatype_container", #
100101
)
101102
yield Horizontal(
102103
Button(
@@ -158,8 +159,18 @@ def on_button_pressed(self, event: Button.Pressed) -> None:
158159

159160
async def refresh_after_datatypes_changed(self, ignore) -> None:
160161
"""Redisplay the datatype checkboxes."""
161-
await self.recompose()
162-
self.on_mount()
162+
container = self.query_one(
163+
"#create_folders_datatype_container", Container
164+
)
165+
container.query_one("#create_folders_datatype_checkboxes").remove()
166+
167+
await container.mount(
168+
DatatypeCheckboxes(
169+
self.interface,
170+
create_or_transfer="create",
171+
id="create_folders_datatype_checkboxes",
172+
)
173+
)
163174

164175
@require_double_click
165176
def on_clickable_input_clicked(

datashuttle/tui/tabs/transfer.py

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -326,10 +326,19 @@ def on_button_pressed(self, event: Button.Pressed) -> None:
326326

327327
async def refresh_after_datatype_changed(self, ignore):
328328
"""Refresh Checkboxes after the shown datatypes have changed."""
329-
await self.recompose()
330-
self.on_mount()
331-
self.query_one("#transfer_custom_radiobutton").value = True
332-
self.switch_transfer_widgets_display()
329+
"""Redisplay the datatype checkboxes."""
330+
container = self.query_one(
331+
"#create_folders_datatype_container", Container
332+
)
333+
container.query_one("#create_folders_datatype_checkboxes").remove()
334+
335+
await container.mount(
336+
DatatypeCheckboxes(
337+
self.interface,
338+
create_or_transfer="transfer",
339+
id="create_folders_datatype_checkboxes",
340+
)
341+
)
333342

334343
def on_custom_directory_tree_directory_tree_special_key_press(
335344
self, event: CustomDirectoryTree.DirectoryTreeSpecialKeyPress

0 commit comments

Comments
 (0)