mirror of https://github.com/mpv-player/mpv
js: use osd-dimentions for mp.get_osd_{size,margins}
This matches lua's 11b9315b
but with the lagacy field names which the
js code used previously.
Currently the property always returns an object (with dummy/last/null
field values if there are no dimensions), but the code is ready for
a future case where it might return null if there are no dimensions - at
which case it will forward the null, breaking backward compatibility for
a better API.
This commit is contained in:
parent
f612de1712
commit
5e0875c9e0
|
@ -743,15 +743,6 @@ static void push_nums_obj(js_State *J, const char * const names[],
|
|||
}
|
||||
}
|
||||
|
||||
// args: none, return: object with properties top, bottom, left, right
|
||||
static void script_get_osd_margins(js_State *J)
|
||||
{
|
||||
struct mp_osd_res r = osd_get_vo_res(jctx(J)->mpctx->osd);
|
||||
const char * const names[] = {"left", "top", "right", "bottom", NULL};
|
||||
const double vals[] = {r.ml, r.mt, r.mr, r.mb};
|
||||
push_nums_obj(J, names, vals);
|
||||
}
|
||||
|
||||
// args: none, return: object with properties x, y
|
||||
static void script_get_mouse_pos(js_State *J)
|
||||
{
|
||||
|
@ -1237,7 +1228,6 @@ static const struct fn_entry main_fns[] = {
|
|||
FN_ENTRY(get_wakeup_pipe, 0),
|
||||
FN_ENTRY(_hook_add, 3),
|
||||
FN_ENTRY(_hook_continue, 1),
|
||||
FN_ENTRY(get_osd_margins, 0),
|
||||
FN_ENTRY(get_mouse_pos, 0),
|
||||
FN_ENTRY(input_set_section_mouse_area, 5),
|
||||
FN_ENTRY(last_error, 0),
|
||||
|
|
|
@ -238,11 +238,14 @@ mp.set_osd_ass = function set_osd_ass(res_x, res_y, data) {
|
|||
return mp._legacy_overlay.update();
|
||||
}
|
||||
|
||||
// the following return undefined on error, null passthrough, or legacy object
|
||||
mp.get_osd_size = function get_osd_size() {
|
||||
var w = mp.get_property_number("osd-width", 0),
|
||||
h = mp.get_property_number("osd-height", 0),
|
||||
par = mp.get_property_number("osd-par", 0);
|
||||
return {width: w, height: h, aspect: w / (h || 1) / (par || 1)};
|
||||
var d = mp.get_property_native("osd-dimensions");
|
||||
return d && {width: d.w, height: d.h, aspect: d.aspect};
|
||||
}
|
||||
mp.get_osd_margins = function get_osd_margins() {
|
||||
var d = mp.get_property_native("osd-dimensions");
|
||||
return d && {left: d.ml, right: d.mr, top: d.mt, bottom: d.mb};
|
||||
}
|
||||
|
||||
/**********************************************************************
|
||||
|
|
Loading…
Reference in New Issue