aboutsummaryrefslogtreecommitdiffstats
path: root/tests/test_messageview.cpp
diff options
context:
space:
mode:
authorDanilo M. <danix@danix.xyz>2026-08-03 21:07:03 +0200
committerDanilo M. <danix@danix.xyz>2026-08-04 12:54:21 +0200
commit1e587846a255592e5aab022c4e6e134d4ff64ed2 (patch)
treec3dd9bc24b3a7010a1edbed6cf56991619442e71 /tests/test_messageview.cpp
parenta6f73f77890d801ecd7209e97ba948c06fdd35c2 (diff)
downloadqtmaildir-1e587846a255592e5aab022c4e6e134d4ff64ed2.tar.gz
qtmaildir-1e587846a255592e5aab022c4e6e134d4ff64ed2.zip
feat(completion): render the popup with descriptions
The free-form date hint is a footer label rather than a model row: a row would be filtered away by the first non-matching keystroke and could be selected and inserted, producing a query that errors. QCompleter::setPopup takes a QAbstractItemView, so the label cannot be laid out beside the view in a container widget. The footer sits in space reserved with setViewportMargins inside the list view instead. setItemDelegate must run after setPopup, not before: setPopup installs a plain QStyledItemDelegate of its own and discards whatever was already set, which silently drops the description column. Accepting replaces exactly the span the tokenizer identified rather than QCompleter's own completion prefix, which is a different span once a prefix or a range bound is involved. Four tests drive that path directly instead of through synthetic key events, since whether a key needs Shift is a keyboard-layout property and could not decide the question. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Diffstat (limited to 'tests/test_messageview.cpp')
0 files changed, 0 insertions, 0 deletions