Revert "On mobile in portrait mode, don't override custom viewport"

This reverts commit 6a1320bcfb6cf7d0335c816ee045a4b4df58eb35.
This commit is contained in:
libretroadmin 2023-06-21 08:37:19 +02:00
parent 2251d27362
commit 57906892d8
5 changed files with 30 additions and 27 deletions

@ -1285,11 +1285,6 @@ static void gl1_set_viewport(gl1_t *gl1,
{
delta = (device_aspect / desired_aspect - 1.0f) / 2.0f + 0.5f;
y = (int)roundf(viewport_height * (0.5f - delta));
#if defined(RARCH_MOBILE)
/* In portrait mode, we want viewport to gravitate to top of screen. */
if (device_aspect < 1.0f)
y *= 2;
#endif
viewport_height = (unsigned)roundf(2.0f * viewport_height * delta);
}
}
@ -1306,6 +1301,12 @@ static void gl1_set_viewport(gl1_t *gl1,
gl1->vp.height = viewport_height;
}
#if defined(RARCH_MOBILE)
/* In portrait mode, we want viewport to gravitate to top of screen. */
if (device_aspect < 1.0f)
gl1->vp.y *= 2;
#endif
glViewport(gl1->vp.x, gl1->vp.y, gl1->vp.width, gl1->vp.height);
gl1_set_projection(gl1, &gl1_default_ortho, allow_rotate);

@ -1331,11 +1331,6 @@ static void gl2_set_viewport(gl2_t *gl,
{
delta = (device_aspect / desired_aspect - 1.0f) / 2.0f + 0.5f;
y = (int)roundf(viewport_height * (0.5f - delta));
#if defined(RARCH_MOBILE)
/* In portrait mode, we want viewport to gravitate to top of screen. */
if (device_aspect < 1.0f)
y *= 2;
#endif
viewport_height = (unsigned)roundf(2.0f * viewport_height * delta);
}
}
@ -1352,6 +1347,12 @@ static void gl2_set_viewport(gl2_t *gl,
gl->vp.height = viewport_height;
}
#if defined(RARCH_MOBILE)
/* In portrait mode, we want viewport to gravitate to top of screen. */
if (device_aspect < 1.0f)
gl->vp.y *= 2;
#endif
glViewport(gl->vp.x, gl->vp.y, gl->vp.width, gl->vp.height);
gl2_set_projection(gl, &default_ortho, allow_rotate);

@ -1436,11 +1436,6 @@ static void gl3_set_viewport(gl3_t *gl,
{
delta = (device_aspect / desired_aspect - 1.0f) / 2.0f + 0.5f;
y = (int)roundf(viewport_height * (0.5f - delta));
#if defined(RARCH_MOBILE)
/* In portrait mode, we want viewport to gravitate to top of screen. */
if (device_aspect < 1.0f)
y *= 2;
#endif
viewport_height = (unsigned)roundf(2.0f * viewport_height * delta);
}
}
@ -1457,6 +1452,12 @@ static void gl3_set_viewport(gl3_t *gl,
gl->vp.height = viewport_height;
}
#if defined(RARCH_MOBILE)
/* In portrait mode, we want viewport to gravitate to top of screen. */
if (device_aspect < 1.0f)
gl->vp.y *= 2;
#endif
glViewport(gl->vp.x, gl->vp.y, gl->vp.width, gl->vp.height);
gl3_set_projection(gl, &gl3_default_ortho, allow_rotate);

@ -3692,12 +3692,6 @@ static void vulkan_set_viewport(void *data, unsigned viewport_width,
{
delta = (device_aspect / desired_aspect - 1.0f)
/ 2.0f + 0.5f;
#if defined(RARCH_MOBILE)
/* In portrait mode, we want viewport to gravitate to top of screen. */
if (device_aspect < 1.0f)
y = 0;
else
#endif
y = (int)roundf(viewport_height * (0.5f - delta));
viewport_height = (unsigned)roundf(2.0f * viewport_height * delta);
}
@ -3716,6 +3710,12 @@ static void vulkan_set_viewport(void *data, unsigned viewport_width,
vk->vp.height = viewport_height;
}
#if defined(RARCH_MOBILE)
/* In portrait mode, we want viewport to gravitate to top of screen. */
if (device_aspect < 1.0f)
vk->vp.y = 0;
#endif
vulkan_set_projection(vk, &ortho, allow_rotate);
/* Set last backbuffer viewport. */

@ -1984,17 +1984,17 @@ void video_driver_update_viewport(
vp->width = vp->full_width;
delta = (device_aspect / desired_aspect - 1.0f)
/ 2.0f + 0.5f;
#if defined(RARCH_MOBILE)
/* In portrait mode, we want viewport to gravitate to top of screen. */
if (device_aspect < 1.0f)
vp->y = 0;
else
#endif
vp->y = (int)roundf(vp->full_height * (0.5f - delta));
vp->height = (unsigned)roundf(2.0f * vp->full_height * delta);
}
}
}
#if defined(RARCH_MOBILE)
/* In portrait mode, we want viewport to gravitate to top of screen. */
if (device_aspect < 1.0f)
vp->y = 0;
#endif
}
void video_driver_restore_cached(void *settings_data)