Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Request_redraw() call from a task spawned by async_std::task::spawn_local doesn’t produce RedrawRequested event. #2019

Closed
VincentJousse opened this issue Sep 3, 2021 · 3 comments · Fixed by #2732
Labels
C - needs investigation Issue must be confirmed and researched DS - web

Comments

@VincentJousse
Copy link

Request_redraw() call from a task spawned by async_std::task::spawn_local doesn’t produce RedrawRequested event.
Need to wait for another event like a mouse event to receive the RedrawRequested event.

@maroider
Copy link
Member

maroider commented Sep 3, 2021

What platform does this happen on?

@VincentJousse
Copy link
Author

Sorry about this, I forgot this information !
It happens on the web.
See my previous bug which covered macOS and web : #1763

@maroider maroider added DS - web C - needs investigation Issue must be confirmed and researched labels Dec 31, 2021
@daxpedda
Copy link
Member

I just hit that and started investigating it, the problem is very simple: request_redraw() doesn't wake up the event loop, it just queues the request but does nothing else.

A simple workaround is just to send a custom event, which actually does the whole waking up process.
Working on a PR!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C - needs investigation Issue must be confirmed and researched DS - web
Development

Successfully merging a pull request may close this issue.

3 participants