Improvements v0.0.6 #6

Merged
rdenadai merged 14 commits from rdenadai/improvements-v0.0.6 into main 2026-04-08 17:59:43 +00:00
Owner

Summary

This PR bundles the post-v0.0.6 editor improvements work. It reorganizes the Slint UI, expands
Git/search/AI workflows, and refines core editor, preview, and explorer behavior.

Highlights

  • add Git panel and richer diff preview support, plus related UI polish
  • improve Copilot chat/markdown rendering and add Ollama integration
  • refine explorer sync, file/tab lifecycle, Ctrl+P workspace search, and editor interactions
  • update configuration, highlighting, and supporting docs/assets
## Summary This PR bundles the post-`v0.0.6` editor improvements work. It reorganizes the Slint UI, expands Git/search/AI workflows, and refines core editor, preview, and explorer behavior. ## Highlights - add Git panel and richer diff preview support, plus related UI polish - improve Copilot chat/markdown rendering and add Ollama integration - refine explorer sync, file/tab lifecycle, Ctrl+P workspace search, and editor interactions - update configuration, highlighting, and supporting docs/assets
Ship the expanded Git workflows, security hardening, and release metadata refresh for v0.0.6.\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- explorer_pane: consolidate duplicate ExplorerToggleButton instances into a
  single button with dynamic padding (collapsed ? 5px : 10px/6px), removing
  the duplicated if/else branches in the header section

- git_diff_preview: fix vertical centering by setting preview-content-height
  to preferred-height (was max(preferred-height, flick.height)) and anchoring
  the VerticalLayout with x:0, y:0 to ensure content is always top-aligned

- git_diff_preview: fix right-side padding overflow by removing width:parent.width
  from the 3 direct children of the padded VerticalLayout (summary, empty-state,
  and hunk rectangles) — parent.width in a padded layout is the outer width,
  causing children to overflow the right padding by exactly padding-left pixels

- git_diff_preview: simplify preview-content-width to preview-flick.width,
  removing the double scrollbar-size subtraction that was making content 12px
  too narrow when the vertical scrollbar was visible

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- git_diff_preview: add overflow:elide + horizontal-stretch:1 to
  previous-label and current-label texts in the summary header row,
  removing the now-redundant spacer Rectangle; both file/branch labels
  now share available width equally and truncate with ellipsis when
  the panel is narrow

- git_diff_preview: add overflow:elide to hunk.header text so long
  @@ ... @@ markers are clipped at the cell boundary instead of
  pushing the hunk header layout beyond the panel width

- git_diff_preview: fix asymmetric padding in hunk header row from
  padding-right:10px to padding-right:14px, matching padding-left:14px
  for consistent inner spacing on all sides

- git_diff_preview: remove fixed height from summary Rectangle
  (was interactive ? 74px : 52px), allowing the inner VerticalLayout
  to size itself by content; summary text retains overflow:elide to
  avoid a Slint binding loop (wrap:word-wrap creates a cycle between
  content height → content width → scrollbar visibility → content width)

- explorer_pane: already refactored in previous commit; item 1 confirmed

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- git_diff_preview: change flickable width from conditional
  (preview-needs-v-scroll ? parent.width - scrollbar : parent.width)
  to always reserving scrollbar space (parent.width - scrollbar-size).
  This breaks the binding loop that prevented wrap:word-wrap — the
  cycle was: preferred-height → width → flickable.width →
  needs-v-scroll → preferred-height. By making flickable width
  independent of scroll state, the chain becomes forward-only.

- git_diff_preview: change summary text from overflow:elide to
  wrap:word-wrap so long file descriptions break onto multiple lines
  instead of truncating with ellipsis. The summary header Rectangle
  auto-sizes to content (no fixed height).

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Explorer toggle: clamp-pane-widths() returns early when collapsed,
  preventing it from writing to explorer-pane-width during collapse
  transition which caused other panels to collapse
- Git diff alignment: removed border-width from left/right cells that
  shifted content by 1px on selected rows vs unselected
- Git diff horizontal scrollbar: added max-line-chars property computed
  from Rust, horizontal DarkScrollBar, scroll-event/key-pressed handlers
  for horizontal delta, constrained summary/empty sections to visible width
- Git diff features: all callbacks already fully implemented with proper
  enabled states on Reset/Apply buttons

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
rdenadai changed title from rdenadai/improvements-v0.0.6 to Improvements v0.0.6 2026-04-02 01:41:40 +00:00
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- preserve edited RULES.md files and recent-file search history across moves
- debounce and cache project search while preventing stale replace writes
- restore active-editor chat context and cancellable Ollama requests
- throttle inline blame and remote media handling to avoid resource spikes

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
rdenadai/ehwaz!6
No description provided.