Просмотр исходного кода

Implement Android-specific functions (#4769)

`GetWindowScaleDPI` and monitor physical dimensions
pull/4772/head
Le Juez Victor 10 месяцев назад
committed by GitHub
Родитель
Сommit
2b59e7475f
Не найден GPG ключ соответствующий данной подписи Идентификатор GPG ключа: B5690EEEBB952194
1 измененных файлов: 11 добавлений и 6 удалений
  1. +11
    -6
      src/platforms/rcore_android.c

+ 11
- 6
src/platforms/rcore_android.c Просмотреть файл

@ -460,17 +460,21 @@ int GetMonitorHeight(int monitor)
} }
// Get selected monitor physical width in millimetres // Get selected monitor physical width in millimetres
// NOTE: It seems to return a slightly underestimated value on some devices
int GetMonitorPhysicalWidth(int monitor) int GetMonitorPhysicalWidth(int monitor)
{ {
TRACELOG(LOG_WARNING, "GetMonitorPhysicalWidth() not implemented on target platform");
return 0;
int widthPixels = ANativeWindow_getWidth(platform.app->window);
float dpi = AConfiguration_getDensity(platform.app->config);
return (widthPixels/dpi)*25.4f;
} }
// Get selected monitor physical height in millimetres // Get selected monitor physical height in millimetres
// NOTE: It seems to return a slightly underestimated value on some devices
int GetMonitorPhysicalHeight(int monitor) int GetMonitorPhysicalHeight(int monitor)
{ {
TRACELOG(LOG_WARNING, "GetMonitorPhysicalHeight() not implemented on target platform");
return 0;
int heightPixels = ANativeWindow_getHeight(platform.app->window);
float dpi = AConfiguration_getDensity(platform.app->config);
return (heightPixels/dpi)*25.4f;
} }
// Get selected monitor refresh rate // Get selected monitor refresh rate
@ -497,8 +501,9 @@ Vector2 GetWindowPosition(void)
// Get window scale DPI factor for current monitor // Get window scale DPI factor for current monitor
Vector2 GetWindowScaleDPI(void) Vector2 GetWindowScaleDPI(void)
{ {
TRACELOG(LOG_WARNING, "GetWindowScaleDPI() not implemented on target platform");
return (Vector2){ 1.0f, 1.0f };
int density = AConfiguration_getDensity(platform.app->config);
float scale = (float)density/160;
return (Vector2){ scale, scale };
} }
// Set clipboard text content // Set clipboard text content

Загрузка…
Отмена
Сохранить