diff --git a/apple/common/apple_cocoa_common.m b/apple/common/apple_cocoa_common.m index f9a10ad4c2..27bb28056b 100644 --- a/apple/common/apple_cocoa_common.m +++ b/apple/common/apple_cocoa_common.m @@ -663,6 +663,7 @@ const gfx_ctx_driver_t gfx_ctx_apple = { NULL, /* get_video_output_size */ NULL, /* get_video_output_prev */ NULL, /* get_video_output_next */ + apple_gfx_ctx_get_metrics, NULL, apple_gfx_ctx_update_window_title, apple_gfx_ctx_check_window, diff --git a/gfx/drivers_context/androidegl_ctx.c b/gfx/drivers_context/androidegl_ctx.c index c98ce0d8c8..af997d407e 100644 --- a/gfx/drivers_context/androidegl_ctx.c +++ b/gfx/drivers_context/androidegl_ctx.c @@ -392,6 +392,7 @@ const gfx_ctx_driver_t gfx_ctx_android = { NULL, /* get_video_output_size */ NULL, /* get_video_output_prev */ NULL, /* get_video_output_next */ + NULL, /* get_metrics */ NULL, android_gfx_ctx_update_window_title, android_gfx_ctx_check_window, diff --git a/gfx/drivers_context/bbqnx_ctx.c b/gfx/drivers_context/bbqnx_ctx.c index a2f516a107..63437782bc 100644 --- a/gfx/drivers_context/bbqnx_ctx.c +++ b/gfx/drivers_context/bbqnx_ctx.c @@ -453,6 +453,7 @@ const gfx_ctx_driver_t gfx_ctx_bbqnx = { NULL, /* get_video_output_size */ NULL, /* get_video_output_prev */ NULL, /* get_video_output_next */ + NULL, /* get_metrics */ NULL, gfx_ctx_qnx_update_window_title, gfx_ctx_qnx_check_window, diff --git a/gfx/drivers_context/d3d_ctx.cpp b/gfx/drivers_context/d3d_ctx.cpp index 0e2cf718b1..288cbc52ab 100644 --- a/gfx/drivers_context/d3d_ctx.cpp +++ b/gfx/drivers_context/d3d_ctx.cpp @@ -502,6 +502,7 @@ const gfx_ctx_driver_t gfx_ctx_d3d = { NULL, /* get_video_output_size */ NULL, /* get_video_output_prev */ NULL, /* get_video_output_next */ + NULL, /* get_metrics */ NULL, gfx_ctx_d3d_update_title, gfx_ctx_d3d_check_window, diff --git a/gfx/drivers_context/drm_egl_ctx.c b/gfx/drivers_context/drm_egl_ctx.c index edad14cd31..f2dbd031f1 100644 --- a/gfx/drivers_context/drm_egl_ctx.c +++ b/gfx/drivers_context/drm_egl_ctx.c @@ -970,6 +970,7 @@ const gfx_ctx_driver_t gfx_ctx_drm_egl = { NULL, /* get_video_output_size */ NULL, /* get_video_output_prev */ NULL, /* get_video_output_next */ + NULL, /* get_metrics */ NULL, gfx_ctx_drm_egl_update_window_title, gfx_ctx_drm_egl_check_window, diff --git a/gfx/drivers_context/emscriptenegl_ctx.c b/gfx/drivers_context/emscriptenegl_ctx.c index 083553c56a..a00643697e 100644 --- a/gfx/drivers_context/emscriptenegl_ctx.c +++ b/gfx/drivers_context/emscriptenegl_ctx.c @@ -309,6 +309,7 @@ const gfx_ctx_driver_t gfx_ctx_emscripten = { NULL, /* get_video_output_size */ NULL, /* get_video_output_prev */ NULL, /* get_video_output_next */ + NULL, /* get_metrics */ NULL, gfx_ctx_emscripten_translate_aspect, gfx_ctx_emscripten_update_window_title, diff --git a/gfx/drivers_context/gfx_null_ctx.c b/gfx/drivers_context/gfx_null_ctx.c index 063c349082..500acb958c 100644 --- a/gfx/drivers_context/gfx_null_ctx.c +++ b/gfx/drivers_context/gfx_null_ctx.c @@ -143,6 +143,7 @@ const gfx_ctx_driver_t gfx_ctx_null = { NULL, /* get_video_output_size */ NULL, /* get_video_output_prev */ NULL, /* get_video_output_next */ + NULL, /* get_metrics */ NULL, gfx_ctx_null_update_window_title, gfx_ctx_null_check_window, diff --git a/gfx/drivers_context/glx_ctx.c b/gfx/drivers_context/glx_ctx.c index 370b2c1a58..c28872f5b5 100644 --- a/gfx/drivers_context/glx_ctx.c +++ b/gfx/drivers_context/glx_ctx.c @@ -796,6 +796,7 @@ const gfx_ctx_driver_t gfx_ctx_glx = { NULL, /* get_video_output_size */ NULL, /* get_video_output_prev */ NULL, /* get_video_output_next */ + NULL, /* get_metrics */ NULL, gfx_ctx_glx_update_window_title, gfx_ctx_glx_check_window, diff --git a/gfx/drivers_context/mali_fbdev_ctx.c b/gfx/drivers_context/mali_fbdev_ctx.c index 35d3af71ae..1adc5b43c6 100644 --- a/gfx/drivers_context/mali_fbdev_ctx.c +++ b/gfx/drivers_context/mali_fbdev_ctx.c @@ -321,6 +321,7 @@ const gfx_ctx_driver_t gfx_ctx_mali_fbdev = { NULL, /* get_video_output_size */ NULL, /* get_video_output_prev */ NULL, /* get_video_output_next */ + NULL, /* get_metrics */ NULL, gfx_ctx_mali_fbdev_update_window_title, gfx_ctx_mali_fbdev_check_window, diff --git a/gfx/drivers_context/ps3_ctx.c b/gfx/drivers_context/ps3_ctx.c index 5830062e35..13fc2a616f 100644 --- a/gfx/drivers_context/ps3_ctx.c +++ b/gfx/drivers_context/ps3_ctx.c @@ -388,6 +388,7 @@ const gfx_ctx_driver_t gfx_ctx_ps3 = { NULL, /* get_video_output_size */ NULL, /* get_video_output_prev */ NULL, /* get_video_output_next */ + NULL, /* get_metrics */ NULL, gfx_ctx_ps3_update_window_title, gfx_ctx_ps3_check_window, diff --git a/gfx/drivers_context/sdl_gl_ctx.c b/gfx/drivers_context/sdl_gl_ctx.c index 03246033bb..af2a586434 100644 --- a/gfx/drivers_context/sdl_gl_ctx.c +++ b/gfx/drivers_context/sdl_gl_ctx.c @@ -436,6 +436,7 @@ const gfx_ctx_driver_t gfx_ctx_sdl_gl = NULL, /* get_video_output_size */ NULL, /* get_video_output_prev */ NULL, /* get_video_output_next */ + NULL, /* get_metrics */ NULL, /* translate_aspect */ sdl_ctx_update_window_title, sdl_ctx_check_window, diff --git a/gfx/drivers_context/vc_egl_ctx.c b/gfx/drivers_context/vc_egl_ctx.c index 9742cb736a..096c6594b8 100644 --- a/gfx/drivers_context/vc_egl_ctx.c +++ b/gfx/drivers_context/vc_egl_ctx.c @@ -637,6 +637,7 @@ const gfx_ctx_driver_t gfx_ctx_videocore = { NULL, /* get_video_output_size */ NULL, /* get_video_output_prev */ NULL, /* get_video_output_next */ + NULL, /* get_metrics */ gfx_ctx_vc_translate_aspect, gfx_ctx_vc_update_window_title, gfx_ctx_vc_check_window, diff --git a/gfx/drivers_context/vivante_fbdev_ctx.c b/gfx/drivers_context/vivante_fbdev_ctx.c index 01bcf6cdb9..a7ff7758cb 100644 --- a/gfx/drivers_context/vivante_fbdev_ctx.c +++ b/gfx/drivers_context/vivante_fbdev_ctx.c @@ -304,6 +304,7 @@ const gfx_ctx_driver_t gfx_ctx_vivante_fbdev = { NULL, /* get_video_output_size */ NULL, /* get_video_output_prev */ NULL, /* get_video_output_next */ + NULL, /* get_metrics */ NULL, gfx_ctx_vivante_update_window_title, gfx_ctx_vivante_check_window, diff --git a/gfx/drivers_context/wayland_ctx.c b/gfx/drivers_context/wayland_ctx.c index 2c0f4aca0d..e297606592 100644 --- a/gfx/drivers_context/wayland_ctx.c +++ b/gfx/drivers_context/wayland_ctx.c @@ -898,6 +898,7 @@ const gfx_ctx_driver_t gfx_ctx_wayland = { NULL, /* get_video_output_size */ NULL, /* get_video_output_prev */ NULL, /* get_video_output_next */ + NULL, /* get_metrics */ NULL, gfx_ctx_wl_update_window_title, gfx_ctx_wl_check_window, diff --git a/gfx/drivers_context/wgl_ctx.c b/gfx/drivers_context/wgl_ctx.c index ec05e9bfaa..2aee1caa89 100644 --- a/gfx/drivers_context/wgl_ctx.c +++ b/gfx/drivers_context/wgl_ctx.c @@ -699,6 +699,7 @@ const gfx_ctx_driver_t gfx_ctx_wgl = { NULL, /* get_video_output_size */ NULL, /* get_video_output_prev */ NULL, /* get_video_output_next */ + NULL, /* get_metrics */ NULL, gfx_ctx_wgl_update_window_title, gfx_ctx_wgl_check_window, diff --git a/gfx/drivers_context/xegl_ctx.c b/gfx/drivers_context/xegl_ctx.c index e0b4b27df2..30679280e1 100644 --- a/gfx/drivers_context/xegl_ctx.c +++ b/gfx/drivers_context/xegl_ctx.c @@ -818,6 +818,7 @@ const gfx_ctx_driver_t gfx_ctx_x_egl = { NULL, /* get_video_output_size */ NULL, /* get_video_output_prev */ NULL, /* get_video_output_next */ + NULL, /* get_metrics */ NULL, gfx_ctx_xegl_update_window_title, gfx_ctx_xegl_check_window, diff --git a/gfx/video_context_driver.h b/gfx/video_context_driver.h index 59250055a3..95bac1497e 100644 --- a/gfx/video_context_driver.h +++ b/gfx/video_context_driver.h @@ -84,6 +84,9 @@ typedef struct gfx_ctx_driver void (*get_video_output_next)(void*); + bool (*get_metrics)(void *data, enum display_metric_types type, + float *value); + /* Translates a window size to an aspect ratio. * In most cases this will be just width / height, but * some contexts will better know which actual aspect ratio is used.