0 votes

Is there a way to force an individual control or the entire UI to update "on demand"?

I have cases where a series of complex and time consuming operations are done and I'd like to display progress messages using a RichTextLabel. The problem is none of the messages will display until the entire process has completed.

Several deep searches have found similar questions raised over the past 5+ years with no official answers given and all of the suggested hacks do not seem to work.

I've tried various forms of yield() and propagate_notification(). Have also tried very hackish solutions using threads. Nothing works reliably.

The only thing that comes close to working is calling RichTextLabel.propagatenotification(NOTIFICATIONDRAW). It seems to work but there are ugly errors output to the console.

What am I missing?

Godot version v3.5.1.stable.official [6fed1ffa3]
in Engine by (94 points)

Please log in or register to answer this question.

Welcome to Godot Engine Q&A, where you can ask questions and receive answers from other members of the community.

Please make sure to read Frequently asked questions and How to use this Q&A? before posting your first questions.
Social login is currently unavailable. If you've previously logged in with a Facebook or GitHub account, use the I forgot my password link in the login box to set a password for your account. If you still can't access your account, send an email to [email protected] with your username.