tickets panel: parent/child as a tree, bold subject ticket (T-281)
Replace the ambiguous inline "T-1 ← T-9" id row on ticket cards with a small tree: the parent renders as a muted, clickable breadcrumb above, and the card's own ticket sits below it under a "└" connector in bold — so it's clear which id is the subject and which is its parent. Tapping the parent selects it. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -95,6 +95,18 @@ void main() {
|
||||
expect(selections.single.data['id'], 'T-1');
|
||||
});
|
||||
|
||||
testWidgets('tapping the parent breadcrumb selects the parent (T-281)', (tester) async {
|
||||
f.ipc.stub('pql.tickets.list', (_) async => _list([_t('T-1', 'Child', 'backlog', parentId: 'T-9')]));
|
||||
final selections = <Message>[];
|
||||
final sub = f.services.messages.subscribe(publisher: 'builtin.tickets', channel: 'selection').listen(selections.add);
|
||||
addTearDown(sub.cancel);
|
||||
await pumpView(tester);
|
||||
|
||||
await tester.tap(find.text('T-9')); // the muted parent breadcrumb
|
||||
await pumpAsync(tester);
|
||||
expect(selections.single.data['id'], 'T-9');
|
||||
});
|
||||
|
||||
testWidgets('empty list shows the placeholder', (tester) async {
|
||||
f.ipc.stub('pql.tickets.list', (_) async => _list(const []));
|
||||
await pumpView(tester);
|
||||
|
||||
Reference in New Issue
Block a user