-
-
Notifications
You must be signed in to change notification settings - Fork 21.9k
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
Popups (OptionButton, tooltips) placed and scaled wrong when using canvas_items
stretch mode or scale factor different from 1.0
(DisplayServer regression)
#54030
Comments
This is because multiple windows are now used by default (this applies to PopupMenus so they can extend outside the project window). However, child windows are currently not scaled with the scale factor automatically determined by the #50680 would resolve this by default, but in the meantime, you can enable Embed Subwindows in the Project Settings. |
canvas_items
stretch mode (DisplayServer regression)
@Calinou Ok, "Embed Subwindows" places it correctly, but instead of selecting items, popup just closes, so it seems it's not a workaround. |
Looks like the regression part is fixed. The popup works correctly when you use embedded subwindows (default). |
I tested the behavior in godotengine/godot-demo-projects#713 with commit 83d2673, and popup drawing is still blurry when using a larger-than-default window size with the The icon drawing will always be blurry as it's not re-rasterized for higher window sizes, but the StyleBox and font drawing could be made sharp as they would be in (Embed Subwindows is enabled here.) |
cc @Sauermann Is this something you might've fixed recently? |
I can confirm that this problem is solved.
I am not yet familiar with the rendering-functionality to properly investigate this second issue. |
Is it very naive to ask, how the editor itself handles UI scaling then? Doesn't the editor use the same settings for scaling its UI? Because it seems to work fine for the editor in the cases of OptionButton Popups for example (as well as all the other Controls that spawn new Viewports/Windows). |
The editor regenerates its theme with the specified scale factor and font size from the Editor Settings. It does not use the content scale factor functionality of Godot – it always uses the This approach is mostly used for historical reasons. Note that #86022 overhauls how editor scaling is performed. |
canvas_items
stretch mode or scale factor different from 1.0
(DisplayServer regression)canvas_items
stretch mode or scale factor different from 1.0
(DisplayServer regression)
This comment was marked as off-topic.
This comment was marked as off-topic.
Is there a workaround in 4.3 for Dialogs (AcceptDialog, ConfirmationDialog, ...) ? I want to release a demo of my game but the Dialogs' text looks extremely blurry. I don't care if I have to add code to every single dialog one by one to fix it, but I don't know how. I tried gokiburikin's fix above and it makes the text look less blurry, but still wrong (some kind of scaling issue with letters having uneven sizes in the same word). Any idea why? |
try #97745 ?
|
Related issue #95387 |
#97745 Yep, this fixes the issue for me too and popups are looking crisp now. |
It's now merged and will work out of the box in the next 4.4 dev8 or beta1! |
Fixed by #97745. |
Bugsquad note: This issue has been confirmed several times already. No need to confirm it further.
Godot version
4.0-dev.20211004_win64
System information
Windows 10
Issue description
When using OptionButton and choosing canvas_items mode in Project Settings->Display, popup of OptionButton is placed and scaled wrong (fonts too). When using "disabled" mode it is placed correctly.
I originally thought that this is related to my custom size of display, but it seems only "canvas_items" does this.
I've added project, so you can test. but it's pretty obvious, I have no scaling or complex settings on nodes.
Steps to reproduce
Set canvas_items mode and use PopupButton.
Minimal reproduction project
game-client_issue_popup_menu.zip
The text was updated successfully, but these errors were encountered: