use of org.horaapps.leafpic.data.filter.ImageFileFilter in project LeafPic by HoraApps.
the class CPHelper method checkAndAddFolder.
private static void checkAndAddFolder(File dir, ObservableEmitter<Album> emitter, boolean includeVideo) {
File[] files = dir.listFiles(new ImageFileFilter(includeVideo));
if (files != null && files.length > 0) {
// valid folder
long lastMod = Long.MIN_VALUE;
File choice = null;
for (File file : files) {
if (file.lastModified() > lastMod) {
choice = file;
lastMod = file.lastModified();
}
}
if (choice != null) {
Album asd = new Album(dir.getAbsolutePath(), dir.getName(), files.length, lastMod);
asd.setLastMedia(new Media(choice.getAbsolutePath()));
emitter.onNext(asd);
}
}
}
use of org.horaapps.leafpic.data.filter.ImageFileFilter in project LeafPic by HoraApps.
the class CPHelper method getMediaFromStorage.
private static Observable<Media> getMediaFromStorage(Context context, Album album) {
return Observable.create(subscriber -> {
File dir = new File(album.getPath());
File[] files = dir.listFiles(new ImageFileFilter(Prefs.showVideos()));
try {
if (files != null && files.length > 0)
for (File file : files) subscriber.onNext(new Media(file));
subscriber.onComplete();
} catch (Exception err) {
subscriber.onError(err);
}
});
}
use of org.horaapps.leafpic.data.filter.ImageFileFilter in project LeafPic by HoraApps.
the class BlackWhiteListActivity method addFolder.
private void addFolder(final File dir) {
String[] list = dir.list(new ImageFileFilter(true));
final boolean[] found = { false };
if (list != null && list.length > 0) {
MediaScannerConnection.scanFile(getApplicationContext(), list, null, new MediaScannerConnection.OnScanCompletedListener() {
@Override
public void onScanCompleted(String s, Uri uri) {
// TODO: 12/15/16 test this!
if (!found[0]) {
long albumId = ContentProviderHelper.getAlbumId(getApplicationContext(), s);
if (albumId != -1) {
found[0] = true;
Toast.makeText(BlackWhiteListActivity.this, "got the ID", Toast.LENGTH_SHORT).show();
}
}
}
});
HandlingAlbums.getInstance(getApplicationContext()).addFolderToWhiteList(dir.getPath());
folders.add(0, dir.getPath());
adapter.notifyItemInserted(0);
checkNothing();
} else {
Toast.makeText(this, R.string.no_media_in_this_folder, Toast.LENGTH_SHORT).show();
// TODO: 12/26/16 should i add or not?
}
}
Aggregations