aboutsummaryrefslogtreecommitdiffstats
path: root/sb_builder/packages.py
AgeCommit message (Collapse)AuthorFilesLines
21 hoursPackages: fix segfault on Clear / Select visible behind a filterDanilo M.1-4/+12
Both emitted layoutChanged without layoutAboutToBeChanged; with a filter on and a current row, the proxy kept stale persistent indexes and Qt crashed (Ctrl+Shift+A with orphaned + cat:games closed the app). Only check states change, so the model now emits dataChanged on the box column. The new test segfaults on the old code. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
21 hoursPackages: orphaned filter chipDanilo M.1-10/+22
SBo marks an orphaned package MAINTAINER="orphaned - no maintainer" (1936 in the tree today); the inventory already carries the maintainer, so the chip filters in the GUI alone. The shown/selected count moves next to the search field so the chip row fits the default window width. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
21 hoursFilter bars: chips read as buttons, status dots, group labelsDanilo M.1-15/+7
Chips get a button background and border, a dot in the color the table uses for that status, and a muted label per group (overlay, status, state, result). Search fields get a search icon and a clear button. Phase 2 spec: why the signing key locks after the GUI quits. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
21 hoursOne frame for every tab: ribbons of actions, next steps as dialogsDanilo M.1-62/+46
Tabs are permanent and load on first show. The ribbon shows the current tab's actions in workflow order, a small ribbon under it the view controls; inapplicable actions are disabled with the reason as tooltip. Starting a job stays on the tab; the Jobs tab reads (running), then shows the end status. When a preview this session started ends, its log opens with Run it (publish box) or Apply shadowing; Not now loses nothing, Run it in Jobs reopens it. New hint moves to the Packages ribbon and acts on the ticked packages without a hint. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
22 hoursPackages: Build/Update/Rebuild/Remove act on ticked packages onlyDanilo M.1-5/+2
The highlighted row used to stand in when nothing was ticked; with row clicks toggling the tick, that ran an action on a row just unticked. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
22 hoursPackages tab: a click anywhere on a row ticks or unticks itDanilo M.1-2/+10
Same as the Hints tab: the box is no longer user-checkable on its own and one clicked handler toggles the row, so no click counts twice. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
22 hoursCtrl+A / Ctrl+Shift+A: select visible and clear, Packages and HintsDanilo M.1-3/+8
The search field keeps Ctrl+A for its own text. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
22 hoursHints screen: upstream check, hint jobs, diff and revertDanilo M.1-3/+50
Check upstream fills the upstream column and ticks the outdated hints, Update selected starts hint-update, Delete hint acts on the VM. When a hint job ends its SBB-RESULT opens a dialog with each changed hint's diff, Revert per package (once) and Build these. The Packages detail pane gets New hint and Open in Hints. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
36 hoursAdd Packages tab, hint view, Run it and signing key unlockDanilo M.1-0/+332
Packages tab over the helper inventory: query bar with cat:/maint:/ req:/status: prefixes, overlay and status chips, check column, and a detail pane with versions, dependencies after hints and a structured read-only view of the hint (hints.py mirrors slackrepo's parser). Actions start slackrepo previews; the Jobs tab offers Run it with a publish box (default from [builds] publish), asking for the signing key passphrase first when the key is locked. Status bar shows the key state; Dashboard tiles open their tabs; inventory reloads after slackrepo and publish jobs. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>