diff options
author | bruvzg <7645683+bruvzg@users.noreply.github.com> | 2024-09-08 15:11:13 +0300 |
---|---|---|
committer | bruvzg <7645683+bruvzg@users.noreply.github.com> | 2024-09-08 15:11:13 +0300 |
commit | bdd511708682ff7ad2d35dd5addcc82c572192ac (patch) | |
tree | cb3e57c961e5803bbaa3ee2960bf01111cf152e8 | |
parent | 5675c76461e197d3929a1142cfb84ab1a76ac9dd (diff) | |
download | redot-engine-bdd511708682ff7ad2d35dd5addcc82c572192ac.tar.gz |
[Label3D] Fix updating labels in subvieports on oversampling change.
-rw-r--r-- | scene/3d/label_3d.cpp | 14 | ||||
-rw-r--r-- | scene/main/window.cpp | 1 |
2 files changed, 8 insertions, 7 deletions
diff --git a/scene/3d/label_3d.cpp b/scene/3d/label_3d.cpp index 9330cd8b65..6b3510a72a 100644 --- a/scene/3d/label_3d.cpp +++ b/scene/3d/label_3d.cpp @@ -30,7 +30,7 @@ #include "label_3d.h" -#include "scene/main/viewport.h" +#include "scene/main/window.h" #include "scene/resources/theme.h" #include "scene/theme/theme_db.h" @@ -197,14 +197,14 @@ void Label3D::_notification(int p_what) { if (!pending_update) { _im_update(); } - Viewport *viewport = get_viewport(); - ERR_FAIL_NULL(viewport); - viewport->connect("size_changed", callable_mp(this, &Label3D::_font_changed)); + Window *window = get_window(); + ERR_FAIL_NULL(window); + window->connect("size_changed", callable_mp(this, &Label3D::_font_changed)); } break; case NOTIFICATION_EXIT_TREE: { - Viewport *viewport = get_viewport(); - ERR_FAIL_NULL(viewport); - viewport->disconnect("size_changed", callable_mp(this, &Label3D::_font_changed)); + Window *window = get_window(); + ERR_FAIL_NULL(window); + window->disconnect("size_changed", callable_mp(this, &Label3D::_font_changed)); } break; case NOTIFICATION_TRANSLATION_CHANGED: { String new_text = atr(text); diff --git a/scene/main/window.cpp b/scene/main/window.cpp index aaa34a4840..06c5497da1 100644 --- a/scene/main/window.cpp +++ b/scene/main/window.cpp @@ -1224,6 +1224,7 @@ void Window::_update_viewport_size() { TS->font_set_global_oversampling(font_oversampling); if (!ci_updated) { update_canvas_items(); + emit_signal(SNAME("size_changed")); } } } |