Merge pull request #96708 from bruvzg/lbl3d_os

[Label3D] Fix updating labels in subvieports on oversampling change.
This commit is contained in:
Rémi Verschelde 2024-09-12 10:28:52 +02:00
commit 83d54ab2ad
No known key found for this signature in database
GPG Key ID: C3336907360768E1
2 changed files with 8 additions and 7 deletions

View File

@ -30,7 +30,7 @@
#include "label_3d.h" #include "label_3d.h"
#include "scene/main/viewport.h" #include "scene/main/window.h"
#include "scene/resources/theme.h" #include "scene/resources/theme.h"
#include "scene/theme/theme_db.h" #include "scene/theme/theme_db.h"
@ -197,14 +197,14 @@ void Label3D::_notification(int p_what) {
if (!pending_update) { if (!pending_update) {
_im_update(); _im_update();
} }
Viewport *viewport = get_viewport(); Window *window = get_window();
ERR_FAIL_NULL(viewport); ERR_FAIL_NULL(window);
viewport->connect("size_changed", callable_mp(this, &Label3D::_font_changed)); window->connect("size_changed", callable_mp(this, &Label3D::_font_changed));
} break; } break;
case NOTIFICATION_EXIT_TREE: { case NOTIFICATION_EXIT_TREE: {
Viewport *viewport = get_viewport(); Window *window = get_window();
ERR_FAIL_NULL(viewport); ERR_FAIL_NULL(window);
viewport->disconnect("size_changed", callable_mp(this, &Label3D::_font_changed)); window->disconnect("size_changed", callable_mp(this, &Label3D::_font_changed));
} break; } break;
case NOTIFICATION_TRANSLATION_CHANGED: { case NOTIFICATION_TRANSLATION_CHANGED: {
String new_text = atr(text); String new_text = atr(text);

View File

@ -1223,6 +1223,7 @@ void Window::_update_viewport_size() {
TS->font_set_global_oversampling(font_oversampling); TS->font_set_global_oversampling(font_oversampling);
if (!ci_updated) { if (!ci_updated) {
update_canvas_items(); update_canvas_items();
emit_signal(SNAME("size_changed"));
} }
} }
} }