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

@@ -46,7 +46,6 @@ namespace gsr {
set_widget_as_selected_in_parent();
else
remove_widget_as_selected_in_parent();
return false;
} else {
show_dropdown = false;
remove_widget_as_selected_in_parent();
@@ -118,6 +117,15 @@ namespace gsr {
dirty = true;
}
void ComboBox::set_selected_item(const std::string &id) {
for(size_t i = 0; i < items.size(); ++i) {
if(items[i].id == id) {
selected_item = i;
break;
}
}
}
void ComboBox::update_if_dirty() {
if(!dirty)
return;