Fix: Improve code folding functionality and gutter rendering

- Updated folding actions and engine for more consistent behavior.
- Added helper function `is_fold_hidden()` to check fold visibility state.
- Improved gutter renderer to handle collapsible code blocks more reliably.
- Refined tag handling for invisible folds to prevent desync issues.
- Removed code fold Fix related entry in `TODO.md`.
This commit is contained in:
2026-03-29 14:33:40 -05:00
parent 62a866d9bb
commit d90415bffc
5 changed files with 44 additions and 49 deletions

View File

@@ -9,7 +9,7 @@
def collapse_range(view, fold):
buffer = view.get_buffer()
start = buffer.get_iter_at_line(fold["start_line"] + 1)
end = buffer.get_iter_at_line(fold["end_line"] + 1)
end = buffer.get_iter_at_line(fold["end_line"] + 1)
buffer.apply_tag_by_name("invisible", start, end)
@@ -17,6 +17,8 @@ def collapse_range(view, fold):
def expand_range(view, fold):
buffer = view.get_buffer()
start = buffer.get_iter_at_line(fold["start_line"] + 1)
end = buffer.get_iter_at_line(fold["end_line"] + 1)
end = buffer.get_iter_at_line(fold["end_line"] + 1)
buffer.remove_tag_by_name("invisible", start, end)