mirror of
https://github.com/xpipe-io/xpipe.git
synced 2024-09-30 00:56:56 +13:00
Fix directory icons [release]
This commit is contained in:
parent
d561ea89f3
commit
7c14674754
1 changed files with 8 additions and 20 deletions
|
@ -1,7 +1,6 @@
|
||||||
package io.xpipe.app.browser.icon;
|
package io.xpipe.app.browser.icon;
|
||||||
|
|
||||||
import io.xpipe.app.core.AppResources;
|
import io.xpipe.app.core.AppResources;
|
||||||
import io.xpipe.core.store.FileNames;
|
|
||||||
import io.xpipe.core.store.FileKind;
|
import io.xpipe.core.store.FileKind;
|
||||||
import io.xpipe.core.store.FileSystem;
|
import io.xpipe.core.store.FileSystem;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
|
@ -10,9 +9,8 @@ import java.io.BufferedReader;
|
||||||
import java.io.InputStreamReader;
|
import java.io.InputStreamReader;
|
||||||
import java.nio.charset.StandardCharsets;
|
import java.nio.charset.StandardCharsets;
|
||||||
import java.nio.file.Files;
|
import java.nio.file.Files;
|
||||||
import java.util.ArrayList;
|
import java.util.*;
|
||||||
import java.util.Arrays;
|
import java.util.stream.Collectors;
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
public interface DirectoryType {
|
public interface DirectoryType {
|
||||||
|
|
||||||
|
@ -53,18 +51,9 @@ public interface DirectoryType {
|
||||||
var id = split[0].trim();
|
var id = split[0].trim();
|
||||||
var filter = Arrays.stream(split[1].split(","))
|
var filter = Arrays.stream(split[1].split(","))
|
||||||
.map(s -> {
|
.map(s -> {
|
||||||
var r = s.trim();
|
return s.trim();
|
||||||
if (r.startsWith(".")) {
|
|
||||||
return r;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (r.contains(".")) {
|
|
||||||
return r;
|
|
||||||
}
|
|
||||||
|
|
||||||
return "." + r;
|
|
||||||
})
|
})
|
||||||
.toList();
|
.collect(Collectors.toSet());
|
||||||
|
|
||||||
var closedIcon = split[2].trim();
|
var closedIcon = split[2].trim();
|
||||||
var openIcon = split[3].trim();
|
var openIcon = split[3].trim();
|
||||||
|
@ -76,7 +65,7 @@ public interface DirectoryType {
|
||||||
id,
|
id,
|
||||||
new IconVariant(lightClosedIcon, closedIcon),
|
new IconVariant(lightClosedIcon, closedIcon),
|
||||||
new IconVariant(lightOpenIcon, openIcon),
|
new IconVariant(lightOpenIcon, openIcon),
|
||||||
filter.toArray(String[]::new)));
|
filter));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
@ -89,9 +78,9 @@ public interface DirectoryType {
|
||||||
|
|
||||||
private final IconVariant closed;
|
private final IconVariant closed;
|
||||||
private final IconVariant open;
|
private final IconVariant open;
|
||||||
private final String[] names;
|
private final Set<String> names;
|
||||||
|
|
||||||
public Simple(String id, IconVariant closed, IconVariant open, String... names) {
|
public Simple(String id, IconVariant closed, IconVariant open, Set<String> names) {
|
||||||
this.id = id;
|
this.id = id;
|
||||||
this.closed = closed;
|
this.closed = closed;
|
||||||
this.open = open;
|
this.open = open;
|
||||||
|
@ -104,8 +93,7 @@ public interface DirectoryType {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
return Arrays.stream(names)
|
return names.contains(entry.getName());
|
||||||
.anyMatch(name -> FileNames.getFileName(entry.getPath()).equalsIgnoreCase(name));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
Loading…
Reference in a new issue