From a47b3386ebb42cac452205d094b94c990ef9cec9 Mon Sep 17 00:00:00 2001 From: Loay Ghreeb Date: Mon, 30 Sep 2024 18:44:29 +0300 Subject: [PATCH] Focus search bar after toggling search flags (#11857) --- .../java/org/jabref/gui/search/GlobalSearchBar.java | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/jabref/gui/search/GlobalSearchBar.java b/src/main/java/org/jabref/gui/search/GlobalSearchBar.java index daed3d2fff1..cc87b5cfd17 100644 --- a/src/main/java/org/jabref/gui/search/GlobalSearchBar.java +++ b/src/main/java/org/jabref/gui/search/GlobalSearchBar.java @@ -265,18 +265,25 @@ private void initSearchModifierButtons() { } else { searchPreferences.setSearchFlag(SearchFlags.FULLTEXT, newVal); } + searchField.requestFocus(); updateSearchQuery(); }); keepSearchString.setSelected(searchPreferences.shouldKeepSearchString()); keepSearchString.setTooltip(new Tooltip(Localization.lang("Keep search string across libraries"))); initSearchModifierButton(keepSearchString); - keepSearchString.selectedProperty().addListener((obs, oldVal, newVal) -> searchPreferences.setKeepSearchString(newVal)); + keepSearchString.selectedProperty().addListener((obs, oldVal, newVal) -> { + searchPreferences.setKeepSearchString(newVal); + searchField.requestFocus(); + }); filterModeButton.setSelected(searchPreferences.getSearchDisplayMode() == SearchDisplayMode.FILTER); filterModeButton.setTooltip(new Tooltip(Localization.lang("Filter search results"))); initSearchModifierButton(filterModeButton); - filterModeButton.setOnAction(event -> searchPreferences.setSearchDisplayMode(filterModeButton.isSelected() ? SearchDisplayMode.FILTER : SearchDisplayMode.FLOAT)); + filterModeButton.setOnAction(event -> { + searchPreferences.setSearchDisplayMode(filterModeButton.isSelected() ? SearchDisplayMode.FILTER : SearchDisplayMode.FLOAT); + searchField.requestFocus(); + }); openGlobalSearchButton.disableProperty().bindBidirectional(globalSearchActive); openGlobalSearchButton.setTooltip(new Tooltip(Localization.lang("Search across libraries in a new window")));