Move the popup windows to follow the mouse

This commit is contained in:
Sam Lantinga
2023-03-15 10:19:55 -07:00
parent 7ea6ef4076
commit e794057d9f

View File

@@ -152,6 +152,17 @@ static void loop()
SDL_zero(tooltip); SDL_zero(tooltip);
} }
tooltip_timer = SDL_GetTicks() + TOOLTIP_DELAY; tooltip_timer = SDL_GetTicks() + TOOLTIP_DELAY;
if (num_menus > 0) {
int parent_x = 0, parent_y = 0;
int x = event.motion.x;
int y = event.motion.y;
SDL_GetWindowPosition(menus[0].parent, &parent_x, &parent_y);
x -= parent_x;
y -= parent_y;
SDL_SetWindowPosition(menus[0].win, x, y);
}
} else if (event.type == SDL_EVENT_MOUSE_BUTTON_DOWN) { } else if (event.type == SDL_EVENT_MOUSE_BUTTON_DOWN) {
/* Left click closes the popup menus */ /* Left click closes the popup menus */
if (event.button.button == SDL_BUTTON_LEFT) { if (event.button.button == SDL_BUTTON_LEFT) {
@@ -245,4 +256,4 @@ int main(int argc, char *argv[])
quit(0); quit(0);
/* keep the compiler happy ... */ /* keep the compiler happy ... */
return 0; return 0;
} }