summaryrefslogtreecommitdiffstats
path: root/editor/code_editor.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'editor/code_editor.cpp')
-rw-r--r--editor/code_editor.cpp25
1 files changed, 25 insertions, 0 deletions
diff --git a/editor/code_editor.cpp b/editor/code_editor.cpp
index ee0108df8e..253157a561 100644
--- a/editor/code_editor.cpp
+++ b/editor/code_editor.cpp
@@ -1124,6 +1124,31 @@ void CodeTextEditor::trim_trailing_whitespace() {
}
}
+void CodeTextEditor::trim_final_newlines() {
+ int final_line = text_editor->get_line_count() - 1;
+ int check_line = final_line;
+
+ String line = text_editor->get_line(check_line);
+
+ while (line.is_empty() && check_line > -1) {
+ --check_line;
+
+ line = text_editor->get_line(check_line);
+ }
+
+ ++check_line;
+
+ if (check_line < final_line) {
+ text_editor->begin_complex_operation();
+
+ text_editor->remove_text(check_line, 0, final_line, 0);
+
+ text_editor->merge_overlapping_carets();
+ text_editor->end_complex_operation();
+ text_editor->queue_redraw();
+ }
+}
+
void CodeTextEditor::insert_final_newline() {
int final_line = text_editor->get_line_count() - 1;
String line = text_editor->get_line(final_line);