LibGUI: Call on_change when set text is called

If there is an on_change callback, and we found at least one match,
call the callback.
This commit is contained in:
Kyle Lanmon 2024-03-14 15:44:52 -05:00 committed by Andrew Kaster
parent 0e53b87261
commit 8b4e2e2099

View file

@ -292,7 +292,12 @@ ByteString ComboBox::text() const
void ComboBox::set_text(ByteString const& text, AllowCallback allow_callback)
{
m_editor->set_text(text, allow_callback);
m_editor->set_text(text);
if (!on_change || allow_callback == AllowCallback::No)
return;
auto matches = model()->matches(text.view(), GUI::Model::MatchesFlag::FirstMatchOnly);
if (!matches.is_empty())
on_change(text, matches.first());
}
void ComboBox::set_only_allow_values_from_model(bool b)