1
0
mirror of https://github.com/emilk/egui.git synced 2026-08-29 21:00:03 -04:00

When TAB is detected add 4 Space chars

This commit is contained in:
Cristian Dinu
2021-03-23 08:35:05 +02:00
parent 2f806a8e15
commit 94c180179c

View File

@@ -299,6 +299,9 @@ impl<'t> TextEdit<'t> {
desired_height_rows,
} = self;
// Tabs are represented as 4 spaces for now
*text = text.replace("\t", " ");
let text_style = text_style.unwrap_or_else(|| ui.style().body_text_style);
let font = &ui.fonts()[text_style];
let line_spacing = font.row_height();
@@ -436,6 +439,7 @@ impl<'t> TextEdit<'t> {
&& text_to_insert != "\r"
{
let mut ccursor = delete_selected(text, &cursorp);
insert_text(&mut ccursor, text, text_to_insert);
Some(CCursorPair::one(ccursor))
} else {
@@ -450,7 +454,10 @@ impl<'t> TextEdit<'t> {
if multiline {
let mut ccursor = delete_selected(text, &cursorp);
insert_text(&mut ccursor, text, "\t");
Some(CCursorPair::one(ccursor))
// Because we add a tab and the tab is represented
// as 4 spaces we must advance the cursor
Some(CCursorPair::one(ccursor + 3))
} else {
None
}