From 1aa5fce3214323e1bfd25762acd3904304d360d1 Mon Sep 17 00:00:00 2001 From: Jean-Michel Bernard Date: Fri, 7 Apr 2023 17:44:37 +0200 Subject: Fix commenting collapsed function issue (cherry picked from commit 68ad3338ef321772903896a3a99878f0b3bd6bf3) --- editor/code_editor.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'editor') diff --git a/editor/code_editor.cpp b/editor/code_editor.cpp index 121af0170c..7d29dfad92 100644 --- a/editor/code_editor.cpp +++ b/editor/code_editor.cpp @@ -1587,11 +1587,17 @@ void CodeTextEditor::toggle_inline_comment(const String &delimiter) { Vector caret_edit_order = text_editor->get_caret_index_edit_order(); caret_edit_order.reverse(); int last_line = -1; + int folded_to = 0; for (const int &c1 : caret_edit_order) { int from = _get_affected_lines_from(c1); - from += from == last_line ? 1 : 0; + from += from == last_line ? 1 + folded_to : 0; int to = _get_affected_lines_to(c1); last_line = to; + // If last line is folded, extends to the end of the folded section + if (text_editor->is_line_folded(to)) { + folded_to = text_editor->get_next_visible_line_offset_from(to + 1, 1) - 1; + to += folded_to; + } // Check first if there's any uncommented lines in selection. bool is_commented = true; for (int line = from; line <= to; line++) { -- cgit v1.2.3