summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRémi Verschelde <rverschelde@gmail.com>2022-09-21 15:36:50 +0200
committerRémi Verschelde <rverschelde@gmail.com>2022-09-21 15:36:50 +0200
commitdd3f3f6717816903e3a1018eb35e3c5123d2610a (patch)
tree152d2d5e1e4ae2b3af1f1b3ce0905d8edc424ca1
parent057dd292e41fd1d1dbdccb8f1a479716aaeeab2a (diff)
parent332c566a6c8a79c14a5336f1ed80b66bbf9b51bc (diff)
Merge pull request #66210 from Rindbee/fix-font-string-size
Let the cached `TextLine` reset the width in `get_string_size`
-rw-r--r--scene/resources/font.cpp12
1 files changed, 7 insertions, 5 deletions
diff --git a/scene/resources/font.cpp b/scene/resources/font.cpp
index 3d9e4e4a63..bbc4029764 100644
--- a/scene/resources/font.cpp
+++ b/scene/resources/font.cpp
@@ -272,13 +272,15 @@ Size2 Font::get_string_size(const String &p_text, HorizontalAlignment p_alignmen
buffer->set_direction(p_direction);
buffer->set_orientation(p_orientation);
buffer->add_string(p_text, Ref<Font>(this), p_font_size);
- if (p_alignment == HORIZONTAL_ALIGNMENT_FILL) {
- buffer->set_horizontal_alignment(p_alignment);
- buffer->set_width(p_width);
- buffer->set_flags(p_jst_flags);
- }
cache.insert(hash, buffer);
}
+
+ buffer->set_width(p_width);
+ buffer->set_horizontal_alignment(p_alignment);
+ if (p_alignment == HORIZONTAL_ALIGNMENT_FILL) {
+ buffer->set_flags(p_jst_flags);
+ }
+
return buffer->get_size();
}