Skip to content

Commit b68cf12

Browse files
author
Federico Fissore
committed
Boards manager: when filtering result using text field, consider both core name AND supported boards names
1 parent 4967a11 commit b68cf12

File tree

2 files changed

+7
-3
lines changed

2 files changed

+7
-3
lines changed

app/src/cc/arduino/contributions/libraries/ui/LibrariesIndexTableModel.java

+3-1
Original file line numberDiff line numberDiff line change
@@ -232,7 +232,9 @@ private void applyFilterToLibrary(ContributedLibrary lib) {
232232
if (selectedCategoryFilter != null && !selectedCategoryFilter.test(lib)) {
233233
return;
234234
}
235-
if (!stringContainsAll(lib.getName(), selectedFilters) && !stringContainsAll(lib.getParagraph(), selectedFilters) && !stringContainsAll(lib.getSentence(), selectedFilters)) {
235+
236+
String compoundTargetSearchText = lib.getName() + "\n" + lib.getParagraph() + "\n" + lib.getSentence();
237+
if (!stringContainsAll(compoundTargetSearchText, selectedFilters)) {
236238
return;
237239
}
238240
addContribution(lib);

app/src/cc/arduino/contributions/packages/ui/ContributionIndexTableModel.java

+4-2
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@
3131

3232
import cc.arduino.contributions.DownloadableContributionBuiltInAtTheBottomComparator;
3333
import cc.arduino.contributions.filters.InstalledPredicate;
34+
import cc.arduino.contributions.packages.ContributedBoard;
3435
import cc.arduino.contributions.packages.ContributedPackage;
3536
import cc.arduino.contributions.packages.ContributedPlatform;
3637
import cc.arduino.contributions.packages.ContributionsIndexer;
@@ -120,15 +121,16 @@ public void setIndexer(ContributionsIndexer indexer) {
120121
this.indexer = indexer;
121122
}
122123

123-
public void updateIndexFilter(String filters[], Stream<Predicate<ContributedPlatform>> additionalFilters) {
124+
public void updateIndexFilter(String[] filters, Stream<Predicate<ContributedPlatform>> additionalFilters) {
124125
contributions.clear();
125126
Predicate<ContributedPlatform> filter = additionalFilters.reduce(Predicate::and).get();
126127
for (ContributedPackage pack : indexer.getPackages()) {
127128
for (ContributedPlatform platform : pack.getPlatforms()) {
129+
String compoundTargetSearchText = platform.getName() + "\n" + platform.getBoards().stream().map(ContributedBoard::getName).collect(Collectors.joining(" "));
128130
if (!filter.test(platform)) {
129131
continue;
130132
}
131-
if (!stringContainsAll(platform.getName(), filters))
133+
if (!stringContainsAll(compoundTargetSearchText, filters))
132134
continue;
133135
addContribution(platform);
134136
}

0 commit comments

Comments
 (0)