From 715cbd239e9823d1452785fee7db013d0e6ae949 Mon Sep 17 00:00:00 2001 From: Carl Christian Snethlage <50491877+calixtus@users.noreply.github.com> Date: Mon, 2 Jan 2023 23:13:27 +0100 Subject: [PATCH 1/5] Set default value for fulltext indexing to false --- src/main/java/org/jabref/preferences/JabRefPreferences.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/org/jabref/preferences/JabRefPreferences.java b/src/main/java/org/jabref/preferences/JabRefPreferences.java index 89f0c3ad273..b2de6a886b3 100644 --- a/src/main/java/org/jabref/preferences/JabRefPreferences.java +++ b/src/main/java/org/jabref/preferences/JabRefPreferences.java @@ -692,7 +692,7 @@ private JabRefPreferences() { // Download files by default defaults.put(DOWNLOAD_LINKED_FILES, true); // Create Fulltext-Index by default - defaults.put(FULLTEXT_INDEX_LINKED_FILES, true); + defaults.put(FULLTEXT_INDEX_LINKED_FILES, false); String defaultExpression = "**/.*[citationkey].*\\\\.[extension]"; defaults.put(AUTOLINK_REG_EXP_SEARCH_EXPRESSION_KEY, defaultExpression); From 14987a6a18bf79898cc7ef3c707a7e70e4145025 Mon Sep 17 00:00:00 2001 From: Carl Christian Snethlage <50491877+calixtus@users.noreply.github.com> Date: Mon, 2 Jan 2023 23:17:36 +0100 Subject: [PATCH 2/5] Set default button state for fulltext search to false --- src/main/java/org/jabref/preferences/JabRefPreferences.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/org/jabref/preferences/JabRefPreferences.java b/src/main/java/org/jabref/preferences/JabRefPreferences.java index b2de6a886b3..8e6d7753de7 100644 --- a/src/main/java/org/jabref/preferences/JabRefPreferences.java +++ b/src/main/java/org/jabref/preferences/JabRefPreferences.java @@ -473,7 +473,7 @@ private JabRefPreferences() { defaults.put(SEARCH_DISPLAY_MODE, SearchDisplayMode.FILTER.toString()); defaults.put(SEARCH_CASE_SENSITIVE, Boolean.FALSE); defaults.put(SEARCH_REG_EXP, Boolean.FALSE); - defaults.put(SEARCH_FULLTEXT, Boolean.TRUE); + defaults.put(SEARCH_FULLTEXT, Boolean.FALSE); defaults.put(SEARCH_KEEP_SEARCH_STRING, Boolean.FALSE); defaults.put(SEARCH_KEEP_GLOBAL_WINDOW_ON_TOP, Boolean.TRUE); From 9b7df2c9e27bf250009cbca717fefa0d5335b209 Mon Sep 17 00:00:00 2001 From: Carl Christian Snethlage <50491877+calixtus@users.noreply.github.com> Date: Mon, 2 Jan 2023 23:24:52 +0100 Subject: [PATCH 3/5] Add listener to fulltext preferences for search bar button --- src/main/java/org/jabref/gui/search/GlobalSearchBar.java | 6 ++++++ src/main/java/org/jabref/preferences/SearchPreferences.java | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/jabref/gui/search/GlobalSearchBar.java b/src/main/java/org/jabref/gui/search/GlobalSearchBar.java index d37c5b2657f..62e1f4d4277 100644 --- a/src/main/java/org/jabref/gui/search/GlobalSearchBar.java +++ b/src/main/java/org/jabref/gui/search/GlobalSearchBar.java @@ -14,6 +14,7 @@ import javafx.beans.binding.BooleanBinding; import javafx.beans.property.BooleanProperty; import javafx.beans.property.SimpleBooleanProperty; +import javafx.collections.SetChangeListener; import javafx.css.PseudoClass; import javafx.event.Event; import javafx.geometry.Insets; @@ -221,6 +222,11 @@ private void initSearchModifierButtons() { }); fulltextButton.setSelected(searchPreferences.isFulltext()); + searchPreferences.getObservableSearchFlags().addListener((SetChangeListener) c -> { + fulltextButton.setManaged(searchPreferences.isFulltext()); + }); + fulltextButton.setManaged(searchPreferences.isFulltext()); + fulltextButton.setTooltip(new Tooltip(Localization.lang("Fulltext search"))); initSearchModifierButton(fulltextButton); fulltextButton.setOnAction(event -> { diff --git a/src/main/java/org/jabref/preferences/SearchPreferences.java b/src/main/java/org/jabref/preferences/SearchPreferences.java index 10273c0a892..8aaad63b35f 100644 --- a/src/main/java/org/jabref/preferences/SearchPreferences.java +++ b/src/main/java/org/jabref/preferences/SearchPreferences.java @@ -52,7 +52,7 @@ public EnumSet getSearchFlags() { return EnumSet.copyOf(searchFlags); } - protected ObservableSet getObservableSearchFlags() { + public ObservableSet getObservableSearchFlags() { return searchFlags; } From 0672bc460ebec9802ad78fc2b7fa023e82caee71 Mon Sep 17 00:00:00 2001 From: Carl Christian Snethlage <50491877+calixtus@users.noreply.github.com> Date: Tue, 3 Jan 2023 22:44:32 +0100 Subject: [PATCH 4/5] Disable fulltext search button when disabled in prefs --- src/main/java/org/jabref/gui/search/GlobalSearchBar.java | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/src/main/java/org/jabref/gui/search/GlobalSearchBar.java b/src/main/java/org/jabref/gui/search/GlobalSearchBar.java index 62e1f4d4277..9b597eb3e6a 100644 --- a/src/main/java/org/jabref/gui/search/GlobalSearchBar.java +++ b/src/main/java/org/jabref/gui/search/GlobalSearchBar.java @@ -14,7 +14,6 @@ import javafx.beans.binding.BooleanBinding; import javafx.beans.property.BooleanProperty; import javafx.beans.property.SimpleBooleanProperty; -import javafx.collections.SetChangeListener; import javafx.css.PseudoClass; import javafx.event.Event; import javafx.geometry.Insets; @@ -65,6 +64,7 @@ import org.jabref.preferences.PreferencesService; import org.jabref.preferences.SearchPreferences; +import com.tobiasdiez.easybind.EasyBind; import de.saxsys.mvvmfx.utils.validation.FunctionBasedValidator; import de.saxsys.mvvmfx.utils.validation.ValidationMessage; import de.saxsys.mvvmfx.utils.validation.Validator; @@ -222,13 +222,9 @@ private void initSearchModifierButtons() { }); fulltextButton.setSelected(searchPreferences.isFulltext()); - searchPreferences.getObservableSearchFlags().addListener((SetChangeListener) c -> { - fulltextButton.setManaged(searchPreferences.isFulltext()); - }); - fulltextButton.setManaged(searchPreferences.isFulltext()); - fulltextButton.setTooltip(new Tooltip(Localization.lang("Fulltext search"))); initSearchModifierButton(fulltextButton); + EasyBind.subscribe(preferencesService.getFilePreferences().fulltextIndexLinkedFilesProperty(), value -> fulltextButton.setDisable(!value)); fulltextButton.setOnAction(event -> { searchPreferences.setSearchFlag(SearchRules.SearchFlags.FULLTEXT, fulltextButton.isSelected()); performSearch(); From 630b69759d31419f14fa0a0a2fbc0ee36b8f5a4e Mon Sep 17 00:00:00 2001 From: Carl Christian Snethlage <50491877+calixtus@users.noreply.github.com> Date: Tue, 3 Jan 2023 23:09:41 +0100 Subject: [PATCH 5/5] Use simple binding --- src/main/java/org/jabref/gui/search/GlobalSearchBar.java | 3 +-- 1 file changed, 1 insertion(+), 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 9b597eb3e6a..1d8efa742e0 100644 --- a/src/main/java/org/jabref/gui/search/GlobalSearchBar.java +++ b/src/main/java/org/jabref/gui/search/GlobalSearchBar.java @@ -64,7 +64,6 @@ import org.jabref.preferences.PreferencesService; import org.jabref.preferences.SearchPreferences; -import com.tobiasdiez.easybind.EasyBind; import de.saxsys.mvvmfx.utils.validation.FunctionBasedValidator; import de.saxsys.mvvmfx.utils.validation.ValidationMessage; import de.saxsys.mvvmfx.utils.validation.Validator; @@ -224,7 +223,7 @@ private void initSearchModifierButtons() { fulltextButton.setSelected(searchPreferences.isFulltext()); fulltextButton.setTooltip(new Tooltip(Localization.lang("Fulltext search"))); initSearchModifierButton(fulltextButton); - EasyBind.subscribe(preferencesService.getFilePreferences().fulltextIndexLinkedFilesProperty(), value -> fulltextButton.setDisable(!value)); + fulltextButton.disableProperty().bind(preferencesService.getFilePreferences().fulltextIndexLinkedFilesProperty().not()); fulltextButton.setOnAction(event -> { searchPreferences.setSearchFlag(SearchRules.SearchFlags.FULLTEXT, fulltextButton.isSelected()); performSearch();