wayland: Evaluate WINDOWPOS_CENTERED_DISPLAY for move events

Partially fixes the mouse cursor in UE5 editor. Imperfect because UE5 uses window position and global mouse state to get position, but of course we don't have global mouse and this is just to get the right display index so this still fails overall. We really need to make global mouse support a feature query...
This commit is contained in:
Ethan Lee 2022-04-06 00:55:32 -04:00 committed by GitHub
parent 7ea1b69dd4
commit dcfb7fff00
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -815,9 +815,12 @@ Wayland_move_window(SDL_Window *window,
int i, numdisplays = SDL_GetNumVideoDisplays();
for (i = 0; i < numdisplays; i += 1) {
if (SDL_GetDisplay(i)->driverdata == driverdata) {
/* Equivalent of SDL_WINDOWPOS_CENTERED_DISPLAY(i) */
SDL_Rect bounds;
SDL_GetDisplayBounds(i, &bounds);
SDL_SendWindowEvent(window, SDL_WINDOWEVENT_MOVED,
SDL_WINDOWPOS_CENTERED_DISPLAY(i),
SDL_WINDOWPOS_CENTERED_DISPLAY(i));
bounds.x + (bounds.w - window->w) / 2,
bounds.y + (bounds.h - window->h) / 2);
break;
}
}