summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/network/network_content_gui.cpp10
-rw-r--r--src/settings_gui.cpp14
-rw-r--r--src/signs_gui.cpp4
3 files changed, 15 insertions, 13 deletions
diff --git a/src/network/network_content_gui.cpp b/src/network/network_content_gui.cpp
index bb9ca07f0..ed4010d40 100644
--- a/src/network/network_content_gui.cpp
+++ b/src/network/network_content_gui.cpp
@@ -788,10 +788,12 @@ public:
virtual void OnOSKInput(int wid)
{
- this->string_filter.SetFilterTerm(this->edit_str_buf);
- this->content.SetFilterState(!this->string_filter.IsEmpty());
- this->content.ForceRebuild();
- this->InvalidateData();
+ if (wid == WID_NCL_FILTER) {
+ this->string_filter.SetFilterTerm(this->edit_str_buf);
+ this->content.SetFilterState(!this->string_filter.IsEmpty());
+ this->content.ForceRebuild();
+ this->InvalidateData();
+ }
}
virtual void OnResize()
diff --git a/src/settings_gui.cpp b/src/settings_gui.cpp
index 6d11042d3..c74098ae5 100644
--- a/src/settings_gui.cpp
+++ b/src/settings_gui.cpp
@@ -2418,13 +2418,15 @@ struct GameSettingsWindow : QueryStringBaseWindow {
virtual void OnOSKInput(int wid)
{
- string_filter.SetFilterTerm(this->edit_str_buf);
- if (!string_filter.IsEmpty() && !this->manually_changed_folding) {
- /* User never expanded/collapsed single pages and entered a filter term.
- * Expand everything, to save weird expand clicks, */
- _settings_main_page.UnFoldAll();
+ if (wid == WID_GS_FILTER) {
+ string_filter.SetFilterTerm(this->edit_str_buf);
+ if (!string_filter.IsEmpty() && !this->manually_changed_folding) {
+ /* User never expanded/collapsed single pages and entered a filter term.
+ * Expand everything, to save weird expand clicks, */
+ _settings_main_page.UnFoldAll();
+ }
+ this->InvalidateData();
}
- this->InvalidateData();
}
virtual void OnResize()
diff --git a/src/signs_gui.cpp b/src/signs_gui.cpp
index ba7e669c7..3af782266 100644
--- a/src/signs_gui.cpp
+++ b/src/signs_gui.cpp
@@ -298,7 +298,7 @@ struct SignListWindow : QueryStringBaseWindow, SignList {
EventState state = ES_NOT_HANDLED;
switch (this->HandleEditBoxKey(WID_SIL_FILTER_TEXT, key, keycode, state)) {
case HEBR_EDITING:
- this->SetFilterString(this->text.buf);
+ this->OnOSKInput(WID_SIL_FILTER_TEXT);
break;
case HEBR_CONFIRM: // Enter pressed -> goto first sign in list
@@ -325,8 +325,6 @@ struct SignListWindow : QueryStringBaseWindow, SignList {
NOT_REACHED();
}
- if (state == ES_HANDLED) OnOSKInput(WID_SIL_FILTER_TEXT);
-
return state;
}