diff options
author | Rémi Verschelde <rverschelde@gmail.com> | 2018-12-03 17:32:04 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-12-03 17:32:04 +0100 |
commit | e6b0327c2c92051a2f31f875273326d8636ca555 (patch) | |
tree | 42b6acd3633043e7e85d80555f473c275c75e199 | |
parent | 29f043ff3e8f2bcf7d1d382caf738ee59959b6d4 (diff) | |
parent | c80b9e9173bdac27f98330b8f4a86f839041e3f2 (diff) |
Merge pull request #24112 from allkhor/rich_label_update_cache
RichTextLabel: update the cache when the scroll hide.
-rw-r--r-- | scene/gui/rich_text_label.cpp | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/scene/gui/rich_text_label.cpp b/scene/gui/rich_text_label.cpp index 17de346f51..490013d813 100644 --- a/scene/gui/rich_text_label.cpp +++ b/scene/gui/rich_text_label.cpp @@ -765,19 +765,17 @@ void RichTextLabel::_update_scroll() { if (exceeds) { scroll_visible = true; - main->first_invalid_line = 0; scroll_w = vscroll->get_combined_minimum_size().width; vscroll->show(); vscroll->set_anchor_and_margin(MARGIN_LEFT, ANCHOR_END, -scroll_w); - _validate_line_caches(main); - } else { - scroll_visible = false; - vscroll->hide(); scroll_w = 0; - _validate_line_caches(main); + vscroll->hide(); } + + main->first_invalid_line = 0; //invalidate ALL + _validate_line_caches(main); } } @@ -1616,7 +1614,6 @@ void RichTextLabel::clear() { main->lines.clear(); main->lines.resize(1); main->first_invalid_line = 0; - scroll_w = 0; update(); selection.click = NULL; selection.active = false; |