From e1105f76e127bf8c19511a7494a7c1331181b9dc Mon Sep 17 00:00:00 2001 From: "Danilo M." Date: Fri, 31 Jul 2026 11:24:58 +0200 Subject: feat: add a history panel toggle MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The history panel now hides, on the ☰ button in the top bar and on Ctrl+\. Its width is captured before hiding and reapplied on show, so toggling does not snap the panel back to a default. Both the width and whether it was hidden persist between runs. Layout state lives in state.ini beside the config rather than at QSettings' default path, which keeps it obvious where it is and lets the checks point it somewhere temporary instead of writing to the real one. The button's checked state, not isVisible(), is the authority for whether the panel is shown: isVisible() is False for every child of a window that has not been mapped yet, so consulting it during startup would disagree with what the user sees. Co-Authored-By: Claude Opus 5 --- README.md | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'README.md') diff --git a/README.md b/README.md index fdcca99..778010f 100644 --- a/README.md +++ b/README.md @@ -158,8 +158,13 @@ llamachat --quit stop the running instance The control commands do not import Qt, so they return in well under a tenth of a second, which is what makes them usable behind a keybind. -In the window: **Ctrl+Enter** sends, **Esc** hides, **New** starts a fresh -conversation, right-clicking a history entry offers to delete it. +In the window: **Ctrl+Enter** sends, **Ctrl+\\** shows or hides the history +panel (the `☰` button does the same), **Esc** hides the window, **New** +starts a fresh conversation, and right-clicking a history entry offers to +delete it. + +The panel's width and whether it was hidden are remembered in +`~/.config/llamachat/state.ini` between runs. ## Hyprland configuration -- cgit v1.2.3