Przeglądaj źródła

Caret blink will no longer cause redraw without focus, issue 6167

(cherry picked from commit 7b036a94bf9af558dab35a56a9c0b6dd8bae105b)
Paulb23 8 lat temu
rodzic
commit
9e1e5daddf
2 zmienionych plików z 2 dodań i 2 usunięć
  1. 1 1
      scene/gui/line_edit.cpp
  2. 1 1
      scene/gui/text_edit.cpp

+ 1 - 1
scene/gui/line_edit.cpp

@@ -859,7 +859,7 @@ void LineEdit::_reset_caret_blink_timer() {
 
 void LineEdit::_toggle_draw_caret() {
 	draw_caret = !draw_caret;
-	if (is_visible()) {
+	if (is_visible() && has_focus() && window_has_focus) {
 		update();
 	}
 }

+ 1 - 1
scene/gui/text_edit.cpp

@@ -3350,7 +3350,7 @@ void TextEdit::_reset_caret_blink_timer() {
 
 void TextEdit::_toggle_draw_caret() {
 	draw_caret = !draw_caret;
-	if (is_visible()) {
+	if (is_visible() && has_focus() && window_has_focus) {
 		update();
 	}
 }