Removed duplicated window size events, and added SDL_EVENT_WINDOW_PIXEL_SIZE_CHANGED

This commit is contained in:
Sam Lantinga
2023-01-28 15:22:16 -08:00
parent af0ec13fc3
commit bf4095359c
17 changed files with 104 additions and 145 deletions

View File

@@ -683,8 +683,8 @@ static int SDLCALL SDL_RendererEventWatch(void *userdata, SDL_Event *event)
* window display changes as well! If the new display has a new DPI,
* we need to update the viewport for the new window/drawable ratio.
*/
if (event->type == SDL_EVENT_WINDOW_SIZE_CHANGED ||
event->type == SDL_EVENT_WINDOW_DISPLAY_CHANGED) {
if (event->type == SDL_EVENT_WINDOW_RESIZED ||
event->type == SDL_EVENT_WINDOW_PIXEL_SIZE_CHANGED) {
/* Make sure we're operating on the default render target */
SDL_Texture *saved_target = SDL_GetRenderTarget(renderer);
if (saved_target) {

View File

@@ -331,7 +331,7 @@ static void D3D_WindowEvent(SDL_Renderer *renderer, const SDL_WindowEvent *event
{
D3D_RenderData *data = (D3D_RenderData *)renderer->driverdata;
if (event->type == SDL_EVENT_WINDOW_SIZE_CHANGED) {
if (event->type == SDL_EVENT_WINDOW_PIXEL_SIZE_CHANGED) {
data->updateSize = SDL_TRUE;
}
}

View File

@@ -1028,7 +1028,7 @@ void D3D11_Trim(SDL_Renderer *renderer)
static void D3D11_WindowEvent(SDL_Renderer *renderer, const SDL_WindowEvent *event)
{
if (event->type == SDL_EVENT_WINDOW_SIZE_CHANGED) {
if (event->type == SDL_EVENT_WINDOW_PIXEL_SIZE_CHANGED) {
D3D11_UpdateForWindowSizeChange(renderer);
}
}

View File

@@ -1376,7 +1376,7 @@ static HRESULT D3D12_UpdateForWindowSizeChange(SDL_Renderer *renderer)
static void D3D12_WindowEvent(SDL_Renderer *renderer, const SDL_WindowEvent *event)
{
if (event->type == SDL_EVENT_WINDOW_SIZE_CHANGED) {
if (event->type == SDL_EVENT_WINDOW_PIXEL_SIZE_CHANGED) {
D3D12_UpdateForWindowSizeChange(renderer);
}
}

View File

@@ -324,7 +324,7 @@ static void GL_WindowEvent(SDL_Renderer *renderer, const SDL_WindowEvent *event)
* changed behind our backs. x/y changes might seem weird but viewport
* resets have been observed on macOS at minimum!
*/
if (event->type == SDL_EVENT_WINDOW_SIZE_CHANGED ||
if (event->type == SDL_EVENT_WINDOW_RESIZED ||
event->type == SDL_EVENT_WINDOW_MOVED) {
GL_RenderData *data = (GL_RenderData *)renderer->driverdata;
data->drawstate.viewport_dirty = SDL_TRUE;

View File

@@ -69,7 +69,7 @@ static void SW_WindowEvent(SDL_Renderer *renderer, const SDL_WindowEvent *event)
{
SW_RenderData *data = (SW_RenderData *)renderer->driverdata;
if (event->type == SDL_EVENT_WINDOW_SIZE_CHANGED) {
if (event->type == SDL_EVENT_WINDOW_PIXEL_SIZE_CHANGED) {
data->surface = NULL;
data->window = NULL;
}