Bug #2297
UI confused when window moved between screens that have different pixel density
100%
Description
When there are multiple screens available, it is possible that the Doomsday window is moved between screens whose pixel density is different. In this case, the change in pixel ratio must be detected and the UI must be updated accordingly.
This requires making the pixel ratio part of UI layout length rules so that its value can change dynamically. Also, the UI style package must be reloadable so that fonts can be reconfigured with the appropriate new sizes.
As a side effect, supporting dynamic pixel ratio changes will also make it possible to apply the user's custom UI scale factor on the fly without requiring a restart.
Associated revisions
History
#1 Updated by skyjake about 6 years ago
- % Done changed from 100 to 80
There is a remaining issue with UI images having the wrong sizes after the pixel ratio change.
#2 Updated by skyjake about 6 years ago
- Status changed from Resolved to In Progress
#3 Updated by skyjake almost 6 years ago
- Status changed from In Progress to Resolved
- % Done changed from 80 to 100
ec4aee38bd handles image sizing in this situation.
#4 Updated by skyjake almost 6 years ago
- Status changed from Resolved to Closed
libgui|UI: Changing window pixel ratio
GLWindow will notify observers when the pixel ratio changes.
Renamed the term “DPI factor” to “pixel ratio”.
IssueID #2297