Skip to content

Commit 06488df

Browse files
authored
Fix table column error (#4406)
1 parent 29588fa commit 06488df

File tree

1 file changed

+15
-9
lines changed

1 file changed

+15
-9
lines changed

archinstall/tui/ui/components.py

Lines changed: 15 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1046,6 +1046,20 @@ def _display_header(self, is_loading: bool) -> None:
10461046
header = self.query_one('#header_text', Label)
10471047
header.display = not is_loading
10481048

1049+
def _get_column_keys(self, items: list[MenuItem]) -> list[str]:
1050+
all_keys: list[str] = []
1051+
for item in items:
1052+
if item.value:
1053+
all_keys.extend(item.value.table_data().keys())
1054+
1055+
# Create unique list while preserving order
1056+
unique_keys: list[str] = list(dict.fromkeys(all_keys))
1057+
1058+
if self._multi:
1059+
unique_keys.insert(0, ' ')
1060+
1061+
return unique_keys
1062+
10491063
def _put_data_to_table(self, table: DataTable[ValueT], group: MenuItemGroup) -> None:
10501064
items = group.items
10511065
selected = group.selected_items
@@ -1054,15 +1068,7 @@ def _put_data_to_table(self, table: DataTable[ValueT], group: MenuItemGroup) ->
10541068
_ = self.dismiss(Result(ResultType.Selection))
10551069
return
10561070

1057-
value = items[0].value
1058-
if not value:
1059-
_ = self.dismiss(Result(ResultType.Selection))
1060-
return
1061-
1062-
cols = list(value.table_data().keys())
1063-
1064-
if self._multi:
1065-
cols.insert(0, ' ')
1071+
cols = self._get_column_keys(items)
10661072

10671073
table.add_columns(*cols)
10681074

0 commit comments

Comments
 (0)