mirror of https://github.com/mpv-player/mpv
console: use hidpi scale reporting
I decided to factor this into the user's scale option (instead of somehow using it as default if the user has not specified it), because it makes the option handling simpler, and won't break things like per-screen DPI if the user only wants to scale the console font by a factor.
This commit is contained in:
parent
ac474631c1
commit
05cd4c9e08
|
@ -89,7 +89,10 @@ Configurable Options
|
|||
Default: 1
|
||||
|
||||
All drawing is scaled by this value, including the text borders and the
|
||||
cursor. Change it if you have a high-DPI display.
|
||||
cursor.
|
||||
|
||||
If the VO backend in use has HiDPI scale reporting implemented, the option
|
||||
value is scaled with the reported HiDPI scale.
|
||||
|
||||
``font``
|
||||
Default: unset (picks a hardcoded font depending on detected platform)
|
||||
|
|
|
@ -143,9 +143,13 @@ end
|
|||
function update()
|
||||
pending_update = false
|
||||
|
||||
local dpi_scale = mp.get_property_native("display-hidpi-scale", 1.0)
|
||||
|
||||
dpi_scale = dpi_scale * opts.scale
|
||||
|
||||
local screenx, screeny, aspect = mp.get_osd_size()
|
||||
screenx = screenx / opts.scale
|
||||
screeny = screeny / opts.scale
|
||||
screenx = screenx / dpi_scale
|
||||
screeny = screeny / dpi_scale
|
||||
|
||||
-- Clear the OSD if the REPL is not active
|
||||
if not repl_active then
|
||||
|
@ -675,6 +679,7 @@ end)
|
|||
-- PlayRes of the OSD will need to be adjusted.
|
||||
mp.observe_property('osd-width', 'native', update)
|
||||
mp.observe_property('osd-height', 'native', update)
|
||||
mp.observe_property('display-hidpi-scale', 'native', update)
|
||||
|
||||
-- Enable log messages. In silent mode, mpv will queue log messages in a buffer
|
||||
-- until enable_messages is called again without the silent: prefix.
|
||||
|
|
Loading…
Reference in New Issue