slint
slint copied to clipboard
Screen doesn't update until manually changing the window to fullscreen in Windows 10
Working environment
- Windows 10 (language: Korean)
- Rust 1.77.2
- winit-FemtoVG & winit-software
Symptom
- Keyboard and mouse inputs are not shown in the window until user manually make the application as full screen (the button on the left of window close button on the top right). Once the user clicks the full screen button, all the previous inputs are shown and updated
- This doesn't happen in Windows 11
Current Workaround
- On
initbuiltin callback, I forced a keyboard focus to one of the inputs - I added following line in the main window:
init => { one-of-the-line-edit.focus() }
Thank you for your continuous excellence.
Me too. Windows 11
The description seems similar to https://github.com/slint-ui/slint/issues/5089
We are unable to reproduce this issue, but it has been reported by several person. It might be a problem on windows. Maybe related to asian input method.
I would appreciate more details on what's really hapenning in there?
What is blocking the screen update? What happen if you put a Spinner {indeterminate: true;} to have some animated widgets?
Is the problem that the screen is not refreshed? or that the input are not processed? Or that the process is hanging?
@ogoffart I have no idea on what's blocking the update. What's more strange is that it doesn't appear on Windows 11(so, it's Windows 10 only). However, I think I can elaborate a bit:
- If I run the application, the screen is frozen
- However, if I click LineEdit, type something, and make it full screen, all the typed characters are shown. But I'm not sure whether the key-ins are already processed during screen freezing or "buffered" and processed on resizing. Any ideas about determining this?
I think I can share with you the result of adding Spinner {indeterminate: true;} next week.
@ogoffart Follow up after adding Spinner:
- Spinner animation works when application is run
- When I click LineEdit, Spinner animation stops. I typed something
- If I resize LineEdit, Spinner animation resumes and the typed string is shown on the application window
Would you be able to run it in a debugger when break when it hangs? Maybe the backtrace tells us something.
We are unable to reproduce this issue, but it has been reported by several person. It might be a problem on windows. Maybe related to asian input method.
I would appreciate more details on what's really hapenning in there? What is blocking the screen update? What happen if you put a
Spinner {indeterminate: true;}to have some animated widgets? Is the problem that the screen is not refreshed? or that the input are not processed? Or that the process is hanging?
It's most likely an input method issue, when my computer defaults to English input everything works fine, but when my computer defaults to Chinese input , LineEdit doesn't get focus and can't type. Please configure your computer to use Simplified Chinese input method default initially and then start the program to test the effectiveness of LineEdit.
It is indeed an input method problem. I use Microsoft input method. Bing input method is no problem