From 26699b720c4135b57de6cfc84b35ab632de1c500 Mon Sep 17 00:00:00 2001 From: "Danilo M." Date: Fri, 28 Aug 2026 11:49:32 +0200 Subject: feat: resolve a selection's scope from what each row is One resolver replacing the scopeFor/messageScopeFor pair. The caller no longer chooses the scope, which is what let one gesture mean two things. --- src/threadlistmodel.h | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'src/threadlistmodel.h') diff --git a/src/threadlistmodel.h b/src/threadlistmodel.h index 5cd1392..fcbb8f5 100644 --- a/src/threadlistmodel.h +++ b/src/threadlistmodel.h @@ -361,6 +361,14 @@ public: /// thread instead would be the silent escalation this exists to remove. ActionScope messageScopeFor(const QModelIndexList &selection) const; + /// What a selection means, resolved per row from what that row IS. + /// + /// Replaces the scopeFor()/messageScopeFor() pair, which made the caller + /// choose the scope and so let one gesture mean two things (item 177). A + /// conversation row contributes its thread, any other row its message, and + /// a mixed selection carries both. + ActionScope scopeForSelection(const QModelIndexList &selection) const; + /// The account keys behind a thread's account tags, for item 49's /// per-account sync. /// -- cgit v1.2.3