From 78f6278e2b3ab543dc9f25b80bebc232aafde1c5 Mon Sep 17 00:00:00 2001 From: crschnick Date: Sun, 9 Mar 2025 00:18:34 +0000 Subject: [PATCH] Improve store icon dialog --- .../io/xpipe/app/comp/store/StoreIconChoiceComp.java | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/app/src/main/java/io/xpipe/app/comp/store/StoreIconChoiceComp.java b/app/src/main/java/io/xpipe/app/comp/store/StoreIconChoiceComp.java index f6771960b..a5717a564 100644 --- a/app/src/main/java/io/xpipe/app/comp/store/StoreIconChoiceComp.java +++ b/app/src/main/java/io/xpipe/app/comp/store/StoreIconChoiceComp.java @@ -107,14 +107,16 @@ public class StoreIconChoiceComp extends SimpleComp { } private void updateData(TableView> table, String filterString) { - var stream = icons.stream() + var available = icons.stream() .filter(systemIcon -> AppImages.hasNormalImage("icons/" + systemIcon.getSource().getId() + "/" + systemIcon.getId() + "-40.png")) - .sorted(Comparator.comparing(systemIcon -> systemIcon.getId())); + .sorted(Comparator.comparing(systemIcon -> systemIcon.getId())) + .toList(); + table.getPlaceholder().setVisible(available.size() == 0); + var filtered = available; if (filterString != null && !filterString.isBlank() && filterString.length() >= 2) { - stream = stream.filter(icon -> containsString(icon.getId(), filterString)); + filtered = available.stream().filter(icon -> containsString(icon.getId(), filterString)).toList(); } - var displayedIcons = stream.toList(); - var data = partitionList(displayedIcons, columns); + var data = partitionList(filtered, columns); table.getItems().setAll(data); }