use of com.android.gallery3d.data.LocalAlbum in project android_packages_apps_Gallery2 by LineageOS.
the class WidgetConfigure method setChoosenAlbum.
private void setChoosenAlbum(Intent data) {
String albumPath = data.getStringExtra(AlbumPicker.KEY_ALBUM_PATH);
WidgetDatabaseHelper helper = new WidgetDatabaseHelper(this);
try {
String relativePath = null;
GalleryApp galleryApp = (GalleryApp) getApplicationContext();
DataManager manager = galleryApp.getDataManager();
Path path = Path.fromString(albumPath);
MediaSet mediaSet = (MediaSet) manager.getMediaObject(path);
if (mediaSet instanceof LocalAlbum) {
int bucketId = Integer.parseInt(path.getSuffix());
// If the chosen album is a local album, find relative path
// Otherwise, leave the relative path field empty
relativePath = LocalAlbum.getRelativePath(bucketId);
Log.i(TAG, "Setting widget, album path: " + albumPath + ", relative path: " + relativePath);
}
helper.setWidget(mAppWidgetId, WidgetDatabaseHelper.TYPE_ALBUM, albumPath, relativePath);
updateWidgetAndFinish(helper.getEntry(mAppWidgetId));
} finally {
helper.close();
}
}
use of com.android.gallery3d.data.LocalAlbum in project android_packages_apps_Gallery2 by LineageOS.
the class GalleryWidgetMigrator method migrateGalleryWidgetsInternal.
private static void migrateGalleryWidgetsInternal(Context context) {
GalleryApp galleryApp = (GalleryApp) context.getApplicationContext();
DataManager manager = galleryApp.getDataManager();
WidgetDatabaseHelper dbHelper = new WidgetDatabaseHelper(context);
// only need to migrate local-album entries of type TYPE_ALBUM
List<Entry> entries = dbHelper.getEntries(WidgetDatabaseHelper.TYPE_ALBUM);
if (entries == null)
return;
// Check each entry's relativePath. If exists, update bucket id using relative
// path combined with external storage path. Otherwise, iterate through old external
// storage paths to find the relative path that matches the old bucket id, and then update
// bucket id and relative path
HashMap<Integer, Entry> localEntries = new HashMap<Integer, Entry>(entries.size());
for (Entry entry : entries) {
Path path = Path.fromString(entry.albumPath);
MediaSet mediaSet = (MediaSet) manager.getMediaObject(path);
if (mediaSet instanceof LocalAlbum) {
if (entry.relativePath != null && entry.relativePath.length() > 0) {
// update entry using relative path + external storage path
updateEntryUsingRelativePath(entry, dbHelper);
} else {
int bucketId = Integer.parseInt(path.getSuffix());
localEntries.put(bucketId, entry);
}
}
}
if (!localEntries.isEmpty())
migrateLocalEntries(context, localEntries, dbHelper);
}
Aggregations