From 53c1d1fcc76c1fd5bba2144b9423b6e748b6a85d Mon Sep 17 00:00:00 2001 From: "Robert D. Schoening" Date: Mon, 20 Jul 2026 22:15:27 -0400 Subject: [PATCH] fix(gui): rank checkbox overlapped the DOCX/output-format row MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The "Sort by relevance" checkbox (slice 3) was gridded at cb_frame row 3, col 0 — but formats_row (DOCX/CSV/JSON/PDF/HTML) already occupied row 3 (columnspan=3). They overlaid each other: the DOCX checkbox appeared to sit on top of something, and the rank checkbox wasn't visible as a distinct control. Fix: move formats_row to row 4; rank keeps its own row 3 (cb_frame rows are now 0 and/rec/fuzzy, 1 wild/regex/ocr, 2 inverse/expr/whole-word, 3 rank, 4 output-formats). No behavior change; layout only. Co-Authored-By: Claude Opus 4.8 (1M context) Signed-off-by: Robert D. Schoening --- peekdocs/gui/_mixin_build.py | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/peekdocs/gui/_mixin_build.py b/peekdocs/gui/_mixin_build.py index 2c063a6..bd0f4bc 100644 --- a/peekdocs/gui/_mixin_build.py +++ b/peekdocs/gui/_mixin_build.py @@ -912,14 +912,14 @@ def _build_advanced_panel(self): def _save_output_format(key, var): self._save_ui_preference(key, var.get() == "on") - # Format checkboxes live in their own sub-frame on row 3 of - # cb_frame, packed side="left" so they sit flush regardless of - # the surrounding column widths. (Earlier they shared cb_frame's - # 3-column grid, but col 2's width is sized by 'OCR (images + - # scanned PDFs)' above — leaving a big visual gap after JSON - # and PDF/HTML looking detached.) + # Format checkboxes live in their own sub-frame on row 4 of + # cb_frame (row 3 holds the "Sort by relevance" checkbox), packed + # side="left" so they sit flush regardless of the surrounding column + # widths. (Earlier they shared cb_frame's 3-column grid, but col 2's + # width is sized by 'OCR (images + scanned PDFs)' above — leaving a big + # visual gap after JSON and PDF/HTML looking detached.) formats_row = ctk.CTkFrame(cb_frame, fg_color="transparent") - formats_row.grid(row=3, column=0, columnspan=3, pady=(8, 0), sticky="w") + formats_row.grid(row=4, column=0, columnspan=3, pady=(8, 0), sticky="w") cb_docx = ctk.CTkCheckBox( formats_row, text="DOCX", variable=self.output_docx_var, onvalue="on", offvalue="off",