ecore_drm2: Add API to return Display DPI

This commit is contained in:
Christopher Michael 2024-01-17 07:22:11 -05:00
parent 204a81e0a3
commit 3abd093360
2 changed files with 14 additions and 0 deletions

View File

@ -110,6 +110,7 @@ EAPI Eina_Bool ecore_drm2_display_possible_crtc_get(Ecore_Drm2_Display *disp, Ec
EAPI int ecore_drm2_display_supported_rotations_get(Ecore_Drm2_Display *disp);
EAPI void ecore_drm2_display_relative_mode_set(Ecore_Drm2_Display *disp, Ecore_Drm2_Relative_Mode mode);
EAPI void ecore_drm2_display_relative_to_set(Ecore_Drm2_Display *disp, const char *relative);
EAPI void ecore_drm2_display_dpi_get(Ecore_Drm2_Display *disp, int *xdpi, int *ydpi);
# endif

View File

@ -950,3 +950,16 @@ ecore_drm2_display_relative_to_set(Ecore_Drm2_Display *disp, const char *relativ
EINA_SAFETY_ON_NULL_RETURN(disp);
eina_stringshare_replace(&disp->relative.to, relative);
}
EAPI void
ecore_drm2_display_dpi_get(Ecore_Drm2_Display *disp, int *xdpi, int *ydpi)
{
EINA_SAFETY_ON_NULL_RETURN(disp);
EINA_SAFETY_ON_TRUE_RETURN(!disp->state.current->enabled);
if (xdpi)
*xdpi = ((25.4 * (disp->state.current->mode->width)) / disp->pw);
if (ydpi)
*ydpi = ((25.4 * (disp->state.current->mode->height)) / disp->ph);
}