From ac04e38d852dbcd7bb9e5a6c5e8e38823e87911f Mon Sep 17 00:00:00 2001 From: Kristoffer Richardsson Date: Mon, 28 Mar 2022 11:06:43 +0200 Subject: [PATCH] Show cf2 first --- src/cfclient/ui/dialogs/bootloader.py | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/src/cfclient/ui/dialogs/bootloader.py b/src/cfclient/ui/dialogs/bootloader.py index 06f6adc1..9721404d 100644 --- a/src/cfclient/ui/dialogs/bootloader.py +++ b/src/cfclient/ui/dialogs/bootloader.py @@ -241,12 +241,24 @@ def _populate_firmware_dropdown(self, releases): """ for release in releases: release_name = release[0] - for download in release[1:]: + downloads = release[1:] + + downloads.sort(key=self.download_sorter) + + for download in downloads: download_name, download_link = download widget_name = '%s - %s' % (release_name, download_name) self._releases[widget_name] = download_link self.firmwareDropdown.addItem(widget_name) + def download_sorter(self, element): + '''Sort downloads to display cf2 before bolt and tag''' + name = element[0] + if 'cf2' in name: + return '0' + name + else: + return '1' + name + def release_zip_downloaded(self, release_name, release_path): """ Callback when a release is successfully downloaded and save to release_path.