From 6e7cbf39f02242522949caa02a29c82be25a7082 Mon Sep 17 00:00:00 2001 From: Stone_Red <56473591+Stone-Red-Code@users.noreply.github.com> Date: Wed, 25 Feb 2026 22:36:44 +0100 Subject: [PATCH] chore: add channel history loading and refactor GetChannelHistory with offset to changelog --- docs/changelog/v0.2.10.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/docs/changelog/v0.2.10.md b/docs/changelog/v0.2.10.md index 1023f5a..20b9f48 100644 --- a/docs/changelog/v0.2.10.md +++ b/docs/changelog/v0.2.10.md @@ -1,10 +1,11 @@ # v0.2.10 -Follow-up patch release for v0.2.9 addressing auto-updater regressions, adding a command palette, and input polish. +Follow-up patch release for v0.2.9 addressing auto-updater regressions, adding a command palette, infinite-scroll message history, and input polish. ## New Features - Command palette — press Ctrl+K from the message input (or anywhere in the main window) to open a searchable dialog for navigating channels and triggering app actions (connect, disconnect, logout, profile, status, create/delete channel, saved servers, toggle users panel, check for updates, quit). Fuzzy matches against both the label and the underlying key so typing `ch` surfaces channel actions alongside `#channel` entries +- Scroll-to-load message history — scrolling to the top of a channel now fetches the next batch of older messages in the background (previously only the most recent 100 messages were available). Duplicate messages are filtered by ID, a per-channel guard prevents concurrent fetches, and the scroll position is preserved after the prepend so your reading position doesn't jump ## Bug Fixes @@ -16,3 +17,5 @@ Follow-up patch release for v0.2.9 addressing auto-updater regressions, adding a ## Refactoring - Move search-dialog dispatch out of `MainWindow` into `AppOrchestrator` — `MainWindow` now just raises `OnSearchRequested`, keeping the view dumb and letting the orchestrator own navigation/action routing +- `ChatHub.GetChannelHistory` and `IChatService.GetChannelHistoryAsync` gain an additional `offset` parameter for paginated history loading (defaults to `0` — existing callers are unaffected) +- `ValidationConstants.MaxHistoryCount` raised from `100` to `200` so power users and paginated fetches can request larger batches; `DefaultHistoryCount` stays at `100`