feat: show busy dialog while parsing archive contents for extract#2468
feat: show busy dialog while parsing archive contents for extract#2468Fikri-20 wants to merge 4 commits intoborgbase:masterfrom
Conversation
_set_status() in ChangeBorgPassphraseWindow called self.errorText.setText() but the widget was absent from the UI file, causing an AttributeError crash when displaying errors after a keyring change. Adds the errorText QLabel (matching the pattern used in repo_add.ui) and a regression test that verifies _set_status() works without crashing. Fixes borgbase#2454
|
hey @m3nu , could you please review the PR and tell me if I need to tweak anything else? |
87652bf to
7637837
Compare
|
Hi @m3nu, I'm applying for GSoC 2026 and have these PR ready for review. Could you please take a look? |
m3nu
left a comment
There was a problem hiding this comment.
Good feature for #1570 -- the indeterminate QProgressDialog is the right UX pattern here. A few items to address before merge:
Should fix:
-
Clean up
_extract_progressreference after close. TheQProgressDialogremains referenced onself.tab._extract_progressindefinitely after closing. Either set it toNoneor usedeleteLater():self.tab._t.finished.connect(self.tab._extract_progress.close) self.tab._t.finished.connect(self.tab._extract_progress.deleteLater)
-
Remove or unify redundant
_set_status()call. The status bar message"Processing archive contents"is now redundant since the modal dialog shows the same information. Either remove the_set_statuscall or keep it as a fallback and remove the near-duplicate translatable string.
Nice to have:
-
Strengthen the test. The current test only checks
hasattr(tab, '_extract_progress')after completion, which is trivially true once the attribute is set. A stronger test would verify the dialog was actually visible at some point (e.g.,mocker.spyonQProgressDialog.show) or thatclosewas called. -
Ellipsis consistency. The dialog string uses Unicode ellipsis (
…) while the status bar version doesn't. Minor, but these are two separate translation keys -- consider unifying.
7637837 to
31f276f
Compare
|
Hey @m3nu, thanks for the thorough review. working on them! |
31f276f to
53cd525
Compare
|
Just pushed the fixes for all your comments: |
Fixes #1570
When extracting from a large archive, parsing the file list can take minutes but the UI only showed a small status-bar message. Added a QProgressDialog in indeterminate mode that appears when parsing starts and closes when done.