Prechádzať zdrojové kódy

Fix LineEdit behavior for deleting all the way to the left/right

passivestar 1 rok pred
rodič
commit
2c0d0c1473
1 zmenil súbory, kde vykonal 4 pridanie a 3 odobranie
  1. 4 3
      scene/gui/line_edit.cpp

+ 4 - 3
scene/gui/line_edit.cpp

@@ -140,7 +140,9 @@ void LineEdit::_backspace(bool p_word, bool p_all_to_left) {
 
 	if (p_all_to_left) {
 		deselect();
-		text = text.substr(0, caret_column);
+		text = text.substr(caret_column);
+		_shape();
+		set_caret_column(0);
 		_text_changed();
 		return;
 	}
@@ -176,9 +178,8 @@ void LineEdit::_delete(bool p_word, bool p_all_to_right) {
 
 	if (p_all_to_right) {
 		deselect();
-		text = text.substr(caret_column, text.length() - caret_column);
+		text = text.substr(0, caret_column);
 		_shape();
-		set_caret_column(0);
 		_text_changed();
 		return;
 	}