Case insensitive sorting of profiles (#3329)
* Case insensitive sorting of profiles * Update
This commit is contained in:
parent
de3416f55b
commit
f985da6f9a
|
|
@ -70,7 +70,7 @@ class DesktopProfile(Profile):
|
|||
) for p in profile_handler.get_desktop_profiles()
|
||||
]
|
||||
|
||||
group = MenuItemGroup(items, sort_items=True)
|
||||
group = MenuItemGroup(items, sort_items=True, sort_case_sensitive=False)
|
||||
group.set_selected_by_value(self.current_selection)
|
||||
|
||||
result = SelectMenu(
|
||||
|
|
|
|||
|
|
@ -74,13 +74,17 @@ class MenuItemGroup:
|
|||
focus_item: MenuItem | None = None,
|
||||
default_item: MenuItem | None = None,
|
||||
sort_items: bool = False,
|
||||
sort_case_sensitive: bool = True,
|
||||
checkmarks: bool = False
|
||||
) -> None:
|
||||
if len(menu_items) < 1:
|
||||
raise ValueError('Menu must have at least one item')
|
||||
|
||||
if sort_items:
|
||||
menu_items = sorted(menu_items, key=lambda x: x.text)
|
||||
if sort_case_sensitive:
|
||||
menu_items = sorted(menu_items, key=lambda x: x.text)
|
||||
else:
|
||||
menu_items = sorted(menu_items, key=lambda x: x.text.lower())
|
||||
|
||||
if not focus_item:
|
||||
focus_item = menu_items[0]
|
||||
|
|
|
|||
Loading…
Reference in New Issue