Align list items, dont process selected item twice if changed in event loop, mouse button events should only occur when pressing left mouse button

This commit is contained in:
dec05eba
2024-08-03 23:36:11 +02:00
parent c080342fcd
commit 3a20c417cb
13 changed files with 94 additions and 54 deletions

View File

@@ -30,7 +30,7 @@ namespace gsr {
const mgl::vec2f draw_pos = position + offset;
const mgl::vec2f collision_margin(1.0f, 1.0f); // Makes sure that multiple buttons that are next to each other wont activate at the same time when the cursor is right between them
mouse_inside = mgl::FloatRect(draw_pos + collision_margin, size - collision_margin).contains({ (float)event.mouse_move.x, (float)event.mouse_move.y });
} else if(event.type == mgl::Event::MouseButtonPressed) {
} else if(event.type == mgl::Event::MouseButtonPressed && event.mouse_button.button == mgl::Mouse::Left) {
const bool clicked_inside = mouse_inside;
if(show_dropdown && clicked_inside && mouse_inside_item == -1) {