Commit a93b5a54 authored by Donald's avatar Donald

progress

parent 9ab0cd21
......@@ -11,3 +11,6 @@
/captures
/scripts/crowdin.key
/app/src/main/assets/secretconstants.properties
# debug purpose
inappstoragereader
\ No newline at end of file
......@@ -8,12 +8,12 @@ repositories {
android {
compileSdkVersion 25
buildToolsVersion "25.0.2"
compileSdkVersion project.sdkVersion
buildToolsVersion project.buildToolsVersion
defaultConfig {
applicationId "org.horaapps.leafpic"
minSdkVersion 19
targetSdkVersion 25
targetSdkVersion project.sdkVersion
versionName "v0.6-beta-2"
versionCode 14
}
......@@ -55,45 +55,52 @@ android {
}
}
project.ext.supportLib = "25.3.0"
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile "com.android.support:appcompat-v7:$supportLib"
compile "com.android.support:cardview-v7:$supportLib"
compile "com.android.support:recyclerview-v7:$supportLib"
compile "com.android.support:design:$supportLib"
compile "com.android.support:palette-v7:$supportLib"
compile "com.android.support:customtabs:$supportLib"
compile "com.android.support:support-v4:$supportLib"
// google & support
compile "com.android.support:appcompat-v7:$supportVersion"
compile "com.android.support:cardview-v7:$supportVersion"
compile "com.android.support:recyclerview-v7:$supportVersion"
compile "com.android.support:design:$supportVersion"
compile "com.android.support:palette-v7:$supportVersion"
compile "com.android.support:customtabs:$supportVersion"
compile "com.android.support:support-v4:$supportVersion"
compile 'com.google.android.exoplayer:exoplayer:r2.0.4'
// utils
compile 'com.github.bumptech.glide:glide:3.7.0'
compile 'com.koushikdutta.ion:ion:2.1.7'
compile 'com.github.Commit451:bypasses:1.0.4'
compile 'com.jakewharton:butterknife:8.5.1'
annotationProcessor 'com.jakewharton:butterknife-compiler:8.5.1'
compile 'com.drewnoakes:metadata-extractor:2.9.1'
// rxJava
compile 'io.reactivex.rxjava2:rxandroid:2.0.1'
//it is recommended to keep the same version of rxAndroid
compile 'io.reactivex.rxjava2:rxjava:2.0.1'
compile 'com.jakewharton.rxrelay2:rxrelay:2.0.0'
// icons
compile 'com.mikepenz:iconics-core:2.8.1@aar'
compile 'com.mikepenz:google-material-typeface:2.2.0.3.original@aar'
compile 'com.mikepenz:community-material-typeface:1.5.54.2@aar'
compile 'com.mikepenz:fontawesome-typeface:4.6.0.1@aar'
compile 'com.yalantis:ucrop:1.5.0'
// ui
compile 'uz.shift:colorpicker:0.5@aar'
compile 'com.google.android.exoplayer:exoplayer:r2.0.4'
compile 'de.psdev.licensesdialog:licensesdialog:1.8.0'
compile 'com.github.jetradarmobile:desertplaceholder:1.1.1'
compile 'de.hdodenhof:circleimageview:2.0.0'
compile 'com.drewnoakes:metadata-extractor:2.9.1'
compile 'org.jetbrains:annotations-java5:15.0'
compile 'com.turingtechnologies.materialscrollbar:lib:10.0.3'
compile 'com.yalantis:ucrop:1.5.0'
compile 'com.github.chrisbanes:PhotoView:1.3.0'
compile 'com.davemorrissey.labs:subsampling-scale-image-view:3.6.0'
compile 'com.github.Commit451:bypasses:1.0.4'
compile 'jp.wasabeef:recyclerview-animators:2.2.6'
compile 'com.github.jetradarmobile:desertplaceholder:1.1.1'
compile 'io.reactivex.rxjava2:rxandroid:2.0.1'
// Because RxAndroid releases are few and far between, it is recommended you also
// explicitly depend on RxJava's latest version for bug fixes and new features.
compile 'io.reactivex.rxjava2:rxjava:2.0.1'
compile 'com.jakewharton.rxrelay2:rxrelay:2.0.0'
// debug Only
//debugCompile project(':inappstoragereader')
//Butter Knife
compile 'com.jakewharton:butterknife:8.5.1'
annotationProcessor 'com.jakewharton:butterknife-compiler:8.5.1'
//compile 'com.google.guava:guava:21.0'
// TODO check them out
compile 'com.turingtechnologies.materialscrollbar:lib:10.0.3'
compile 'de.psdev.licensesdialog:licensesdialog:1.8.0'
}
......@@ -24,7 +24,7 @@ public class App extends Application {
@Deprecated
public Album getAlbum() {
return getAlbums().getCount() > 0 ? getAlbums().getCurrentAlbum() : Album.getEmptyAlbum();
return Album.getEmptyAlbum();
}
@Deprecated
......
......@@ -37,7 +37,6 @@ import com.mikepenz.iconics.IconicsDrawable;
import com.mikepenz.iconics.view.IconicsImageView;
import org.horaapps.leafpic.activities.base.ThemedActivity;
import org.horaapps.leafpic.model.Album;
import org.horaapps.leafpic.model.base.FoldersFileFilter;
import org.horaapps.leafpic.util.AlertDialogsHelper;
import org.horaapps.leafpic.util.ContentHelper;
......@@ -265,9 +264,9 @@ public class SelectAlbumBuilder extends BottomSheetDialogFragment {
exploreModePanel.setVisibility(View.VISIBLE);
} else {
currentFolderPath.setText(R.string.local_folder);
for (Album album : ((App) getActivity().getApplicationContext()).getAlbums().albums) {
/*for (Album album : ((App) getActivity().getApplicationContext()).getAlbums().albums) {
folders.add(new File(album.getPath()));
}
}*/
imgExploreMode.setIcon(theme.getIcon(CommunityMaterial.Icon.cmd_compass_outline));
exploreModePanel.setVisibility(View.GONE);
}
......
......@@ -125,7 +125,7 @@ public class SingleMediaActivity extends SharedMediaActivity {
if (album.addMedia(media)) album.setCount(1);
customUri = true;
}
getAlbums().addAlbum(0, album);
//getAlbums().addAlbum(0, album);
}
adapter = new MediaPagerAdapter(getSupportFragmentManager(), getAlbum().getMedia());
......@@ -321,7 +321,7 @@ public class SingleMediaActivity extends SharedMediaActivity {
if (getAlbum().getMedia().size() == 0) {
if (customUri) finish();
else {
getAlbums().removeCurrentAlbum();
//getAlbums().removeCurrentAlbum();
displayAlbums(false);
}
}
......@@ -477,7 +477,7 @@ public class SingleMediaActivity extends SharedMediaActivity {
if (getAlbum().getMedia().size() == 0) {
if (customUri) finish();
else {
getAlbums().removeCurrentAlbum();
//getAlbums().removeCurrentAlbum();
displayAlbums(false);
}
}
......
......@@ -167,10 +167,10 @@ public class SplashScreen extends SharedMediaActivity {
@Override
protected Boolean doInBackground(Void... arg0) {
if(!getAlbums().restoreBackup(getApplicationContext()) || getAlbums().getCount() == 0) {
/*if(!getAlbums().restoreBackup(getApplicationContext()) || getAlbums().getCount() == 0) {
getAlbums().loadAlbums(getApplicationContext(), false);
return true;
}
}*/
return false;
}
......@@ -188,8 +188,8 @@ public class SplashScreen extends SharedMediaActivity {
} else
startActivityForResult(i, PICK_MEDIA_REQUEST);
if(result)
getAlbums().saveBackup(getApplicationContext());
//if(result)
//getAlbums().saveBackup(getApplicationContext());
}
}
......@@ -204,7 +204,7 @@ public class SplashScreen extends SharedMediaActivity {
protected void onPostExecute(Void result) {
super.onPostExecute(result);
Intent i = new Intent(SplashScreen.this, MainActivity.class);
getAlbums().addAlbum(0, tmpAlbum);
//getAlbums().addAlbum(0, tmpAlbum);
i.putExtra(CONTENT, PHOTOS_PREFETCHED);
startActivity(i);
finish();
......
......@@ -22,6 +22,7 @@ import org.horaapps.leafpic.model.Album;
import org.horaapps.leafpic.model.Media;
import org.horaapps.leafpic.model.base.AlbumsComparators;
import org.horaapps.leafpic.model.base.SortingMode;
import org.horaapps.leafpic.model.base.SortingOrder;
import org.horaapps.leafpic.util.CardViewStyle;
import org.horaapps.leafpic.util.ColorPalette;
import org.horaapps.leafpic.util.PreferenceUtil;
......@@ -31,7 +32,6 @@ import org.horaapps.leafpic.util.ThemeHelper;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
import java.util.stream.Collectors;
......@@ -43,40 +43,60 @@ import io.reactivex.subjects.PublishSubject;
/**
* Created by dnld on 1/7/16.
*/
public class AlbumsAdapter extends RecyclerView.Adapter<AlbumsAdapter.ViewHolder> implements View.OnClickListener, View.OnLongClickListener {
public class AlbumsAdapter extends RecyclerView.Adapter<AlbumsAdapter.ViewHolder> {
private List<Album> albums;
Comparator<Album> c = AlbumsComparators.getComparator(SortingMode.DATE);
private final PublishSubject<Album> onClickSubject = PublishSubject.create();
private final PublishSubject<Album> onChangeSelectedSubject = PublishSubject.create();
private int selectedCount = 0;
private SortingOrder sortingOrder;
private SortingMode sortingMode;
public SortingOrder sortingOrder() {
return sortingOrder;
}
public void changeSortingOrder(SortingOrder sortingOrder) {
this.sortingOrder = sortingOrder;
reverseOrder();
notifyDataSetChanged();
}
public SortingMode sortingMode() {
return sortingMode;
}
public void changeSortingMode(SortingMode sortingMode) {
this.sortingMode = sortingMode;
sort();
}
private ThemeHelper theme;
private BitmapDrawable placeholder;
private CardViewStyle cvs;
public AlbumsAdapter(Context context) {
public AlbumsAdapter(Context context, SortingMode sortingMode, SortingOrder sortingOrder) {
albums = new ArrayList<>();
updateTheme(ThemeHelper.getThemeHelper(context));
this.sortingMode = sortingMode;
this.sortingOrder = sortingOrder;
}
public AlbumsAdapter(ArrayList<Album> ph, Context context) {
this(context);
albums.addAll(ph);
sort();
public AlbumsAdapter(Context context) {
this(context, SortingMode.DATE, SortingOrder.DESCENDING);
}
public void sort() {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N)
albums = albums.stream().sorted(c).collect(Collectors.toList());
else Collections.sort(albums, c);
Collections.reverse(albums);
/*if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N)
albums.sort(AlbumsComparators.getComparator(sortingMode));
//albums = albums.stream().sorted(AlbumsComparators.getComparator(sortingMode)).collect(Collectors.toList());
else Collections.sort(albums, AlbumsComparators.getComparator(sortingMode));*/
Collections.sort(albums, AlbumsComparators.getComparator(sortingMode, sortingOrder));
/*if (sortingOrder.equals(SortingOrder.DESCENDING))
reverseOrder();*/
notifyDataSetChanged();
}
......@@ -140,12 +160,9 @@ public class AlbumsAdapter extends RecyclerView.Adapter<AlbumsAdapter.ViewHolder
case FLAT: v = LayoutInflater.from(parent.getContext()).inflate(R.layout.card_album_flat, parent, false); break;
case COMPACT: v = LayoutInflater.from(parent.getContext()).inflate(R.layout.card_album_compact, parent, false); break;
}
v.setOnClickListener(this);
v.setOnLongClickListener(this);
return new ViewHolder(v);
}
private void notifySelected(boolean increase) {
selectedCount += increase ? 1 : -1;
}
......@@ -232,51 +249,34 @@ public class AlbumsAdapter extends RecyclerView.Adapter<AlbumsAdapter.ViewHolder
holder.nMedia.setText(StringUtils.html(albumPhotoCountHtml));
}
public void setOnClickListener(View.OnClickListener lis) {
//mOnClickListener = lis;
}
public void setOnLongClickListener(View.OnLongClickListener lis) {
//mOnLongClickListener = lis;
}
public void swapDataSet(ArrayList<Album> asd) {
// TODO improve this
albums.clear();
albums.addAll(asd);
sort();
//notifyDataSetChanged();
}
public void clear() {
albums.clear();
notifyDataSetChanged();
}
public void addAlbum(Album album) {
albums.add(album);
sort();
//notifyDataSetChanged();
//notifyItemInserted(albums.size()-1);
int i = Collections.binarySearch(
albums, album, AlbumsComparators.getComparator(sortingMode, sortingOrder));
if (i < 0) i = ~i;
albums.add(i, album);
notifyItemInserted(i);
}
@Override
public int getItemCount() {
return albums.size();
}
@Override
public void onClick(View v) {
private void reverseOrder() {
int z = 0, size = getItemCount();
while (z < size && albums.get(0).isPinned())
z++;
for (int i = Math.max(0, z), mid = (i+size)>>1, j = size-1; i < mid; i++, j--)
Collections.swap(albums, i, j);
}
@Override
public boolean onLongClick(View v) {
return false;
public int getItemCount() {
return albums.size();
}
static class ViewHolder extends RecyclerView.ViewHolder {
@BindView(R.id.album_card) CardView card;
@BindView(R.id.album_preview) ImageView picture;
......
......@@ -77,7 +77,7 @@ public class Album implements Serializable, CursorHandler {
@Deprecated
public Album(Context context, String path, long id, String name, int count) {
this(path, name, id, count);
settings = AlbumSettings.getSettings(context, this);
settings = AlbumSettings.getDefaults();
}
public static Album getEmptyAlbum() {
......@@ -371,31 +371,30 @@ public class Album implements Serializable, CursorHandler {
}
public void removeCoverAlbum(Context context) {
HandlingAlbums.getInstance(context).setAlbumPhotoPreview(path, null);
//HandlingAlbums.getInstance(context).setCover(path, null);
settings.coverPath = null;
}
public void setSelectedPhotoAsPreview(Context context) {
if (selectedMedia.size() > 0) {
String asd = selectedMedia.get(0).getPath();
HandlingAlbums.getInstance(context).setAlbumPhotoPreview(this.path, asd);
//HandlingAlbums.getInstance(context).setCover(this.path, asd);
settings.coverPath = asd;
}
}
public void setDefaultSortingMode(Context context, SortingMode column) {
settings.sortingMode = column.getValue();
HandlingAlbums.getInstance(context).setAlbumSortingMode(path, column.getValue());
//HandlingAlbums.getInstance(context).setSortingMode(path, column.getValue());
}
public void setDefaultSortingAscending(Context context, SortingOrder sortingOrder) {
settings.sortingOrder = sortingOrder.getValue();
HandlingAlbums.getInstance(context).setAlbumSortingOrder(path, sortingOrder.getValue());
//HandlingAlbums.getInstance(context).setSortingOrder(path, sortingOrder.getValue());
}
public void togglePinAlbum(Context context) {
public void togglePinAlbum() {
settings.pinned = !settings.pinned;
HandlingAlbums.getInstance(context).pinAlbum(path, settings.pinned);
}
//endregion
......
package org.horaapps.leafpic.model;
import android.content.Context;
import org.horaapps.leafpic.App;
import org.horaapps.leafpic.model.base.FilterMode;
import org.horaapps.leafpic.model.base.SortingMode;
import org.horaapps.leafpic.model.base.SortingOrder;
......@@ -15,21 +12,12 @@ import java.io.Serializable;
public class AlbumSettings implements Serializable {
String coverPath;
int sortingMode;
int sortingOrder;
int sortingMode, sortingOrder;
boolean pinned;
FilterMode filterMode = FilterMode.ALL;
static AlbumSettings getSettings(Context context, Album album) {
return HandlingAlbums.getInstance(context).getSettings(album.getPath());
}
static AlbumSettings getSettings(String albumPath, String defaultCover) {
return HandlingAlbums.getInstance(App.getInstance()).getSettings(albumPath, defaultCover);
}
public static AlbumSettings getDefaults() {
return new AlbumSettings(null, SortingMode.DATE.getValue(), SortingOrder.DESCENDING.getValue(), 0);
return new AlbumSettings(null, SortingMode.DATE.getValue(), 1, 0);
}
AlbumSettings(String cover, int sortingMode, int sortingOrder, int pinned) {
......
......@@ -24,7 +24,6 @@ import org.horaapps.leafpic.model.base.MediaDetailsMap;
import org.horaapps.leafpic.new_way.CursorHandler;
import org.horaapps.leafpic.util.MediaSignature;
import org.horaapps.leafpic.util.StringUtils;
import org.jetbrains.annotations.TestOnly;
import java.io.File;
import java.io.IOException;
......@@ -98,7 +97,7 @@ public class Media implements Parcelable, Serializable, CursorHandler {
public static String[] getProjection() {
return new String[]{
MediaStore.Images.Media.DATA,
MediaStore.Images.Media.DATE_MODIFIED,
MediaStore.Images.Media.DATE_TAKEN,
MediaStore.Images.Media.MIME_TYPE,
MediaStore.Images.Media.SIZE,
MediaStore.Images.Media.ORIENTATION
......@@ -155,7 +154,6 @@ public class Media implements Parcelable, Serializable, CursorHandler {
return dateModified;
}
public Bitmap getBitmap(){
BitmapFactory.Options bmOptions = new BitmapFactory.Options();
Bitmap bitmap = BitmapFactory.decodeFile(path,bmOptions);
......@@ -316,7 +314,7 @@ public class Media implements Parcelable, Serializable, CursorHandler {
}
//<editor-fold desc="Thumbnail Tests">
@TestOnly public byte[] getThumbnail() {
public byte[] getThumbnail() {
ExifInterface exif;
try {
......@@ -337,7 +335,7 @@ public class Media implements Parcelable, Serializable, CursorHandler {
} catch (Exception e) { return null; }*/
}
@TestOnly public String getThumbnail(Context context) {
public String getThumbnail(Context context) {
/*Cursor cursor = MediaStore.Images.Thumbnails.queryMiniThumbnail(
context.getContentResolver(), id,
MediaStore.Images.Thumbnails.MINI_KIND,
......
......@@ -10,126 +10,108 @@ import java.util.Comparator;
*/
public class AlbumsComparators {
@Deprecated
public static Comparator<Album> getComparator(SortingMode sortingMode, SortingOrder sortingOrder) {
private static Comparator<Album> getComparator(SortingMode sortingMode, Comparator<Album> base) {
switch (sortingMode) {
case NAME:
return getNameComparator(sortingOrder);
return getNameComparator(base);
case SIZE:
return getSizeComparator(sortingOrder);
return getSizeComparator(base);
case DATE: default:
return getDateComparator(sortingOrder);
return getDateComparator(base);
case NUMERIC:
return getNumericComparator(sortingOrder);
return getNumericComparator(base);
}
}
public static Comparator<Album> getComparator(SortingMode sortingMode) {
switch (sortingMode) {
case NAME:
return getNameComparator();
case SIZE:
return getSizeComparator();
case DATE: default:
return getDateComparator();
case NUMERIC:
return getNumericComparator();
}
public static Comparator<Album> getComparator(SortingMode sortingMode, SortingOrder sortingOrder) {
Comparator<Album> comparator = getComparator(sortingMode, getBaseComparator(sortingOrder));
return sortingOrder == SortingOrder.ASCENDING
? comparator : reverse(comparator);
}
private static Comparator<Album> reverse(Comparator<Album> comparator) {
return (o1, o2) -> comparator.compare(o2, o1);
}
private static Comparator<Album> getDateComparator(final SortingOrder sortingOrder){
/*private static Comparator<Album> getNameComparator(final SortingOrder sortingOrder) {
return (a1, a2) -> {
switch (sortingOrder) {
case ASCENDING:
if (a1.isPinned() == a2.isPinned())
return a1.getMedia(0).getDateModified().compareTo(a2.getMedia(0).getDateModified());
return a1.getName().toLowerCase().compareTo(a2.getName().toLowerCase());
return a1.isPinned() ? -1 : 1;
case DESCENDING: default:
if (a1.isPinned() == a2.isPinned())
return a2.getMedia(0).getDateModified().compareTo(a1.getMedia(0).getDateModified());
return a2.getName().toLowerCase().compareTo(a1.getName().toLowerCase());
return a2.isPinned() ? 1 : -1;
}
};
}*/
private static Comparator<Album> getBaseComparator(SortingOrder sortingOrder) {
return sortingOrder == SortingOrder.ASCENDING
? getPinned() : getReversedPinned();
}
private static Comparator<Album> getDateComparator(){
return (a1, a2) -> {
if (a1.isPinned() == a2.isPinned())
return a1.getDateModified().compareTo(a2.getDateModified());
return a1.isPinned() ? -1 : 1;
private static Comparator<Album> getPinned() {
return (o1, o2) -> {
if (o1.isPinned() == o2.isPinned()) return 0;
return o1.isPinned() ? -1 : 1;
};
}
private static Comparator<Album> getNameComparator() {
return (a1, a2) -> {
if (a1.isPinned() == a2.isPinned())
return a1.getName().toLowerCase().compareTo(a2.getName().toLowerCase());
return a1.isPinned() ? -1 : 1;
private static Comparator<Album> getReversedPinned() {
return (o1, o2) -> {
if (o1.isPinned() == o2.isPinned()) return 0;
return o2.isPinned() ? 1 : -1;
};
}
private static Comparator<Album> getSizeComparator() {
private static Comparator<Album> getDateComparator(Comparator<Album> base){
return (a1, a2) -> {
if (a1.isPinned() == a2.isPinned())
return a1.getCount() - a2.getCount();
return a1.isPinned() ? -1 : 1;
int res = base.compare(a1, a2);
if (res == 0)
return a1.getDateModified().compareTo(a2.getDateModified());
return res;
};
}
private static Comparator<Album> getNumericComparator() {
/* private static Comparator<Album> getDateComparator(){
return (a1, a2) -> {
if (a1.isPinned() == a2.isPinned())
return NumericComparator.filevercmp(a1.getName().toLowerCase(), a2.getName().toLowerCase());
return a1.getDateModified().compareTo(a2.getDateModified());
return a1.isPinned() ? -1 : 1;
};
}
}*/
private static Comparator<Album> getNameComparator(final SortingOrder sortingOrder) {
private static Comparator<Album> getNameComparator(Comparator<Album> base) {
return (a1, a2) -> {
switch (sortingOrder) {
case ASCENDING:
if (a1.isPinned() == a2.isPinned())
return a1.getName().toLowerCase().compareTo(a2.getName().toLowerCase());
return a1.isPinned() ? -1 : 1;
case DESCENDING: default:
if (a1.isPinned() == a2.isPinned())
return a2.getName().toLowerCase().compareTo(a1.getName().toLowerCase());
return a2.isPinned() ? 1 : -1;
}
int res = base.compare(a1, a2);
if (res == 0)
return a1.getName().toLowerCase().compareTo(a2.getName().toLowerCase());
return res;
};
}
private static Comparator<Album> getSizeComparator(final SortingOrder sortingOrder) {
private static Comparator<Album> getSizeComparator(Comparator<Album> base) {
return (a1, a2) -> {
switch (sortingOrder) {
case ASCENDING:
if (a1.isPinned() == a2.isPinned())
return a1.getCount() - a2.getCount();
return a1.isPinned() ? -1 : 1;
case DESCENDING: default:
if (a1.isPinned() == a2.isPinned())
return a2.getCount() - a1.getCount() ;
return a2.isPinned() ? 1 : -1;
}
int res = base.compare(a1, a2);
if (res == 0)
return a1.getCount() - a2.getCount();
return res;
};
}
private static Comparator<Album> getNumericComparator(final SortingOrder sortingOrder) {
private static Comparator<Album> getNumericComparator(Comparator<Album> base) {
return (a1, a2) -> {
switch (sortingOrder) {
case ASCENDING:
if (a1.isPinned() == a2.isPinned())
return NumericComparator.filevercmp(a1.getName().toLowerCase(), a2.getName().toLowerCase());
return a1.isPinned() ? -1 : 1;
case DESCENDING: default:
if (a1.isPinned() == a2.isPinned())
return NumericComparator.filevercmp(a2.getName().toLowerCase(), a1.getName().toLowerCase());
return a2.isPinned() ? 1 : -1;
}
int res = base.compare(a1, a2);
if (res == 0)
return NumericComparator.filevercmp(a1.getName().toLowerCase(), a2.getName().toLowerCase());
return res;
};
}
}
......@@ -5,7 +5,7 @@ package org.horaapps.leafpic.model.base;
*/
public enum SortingOrder {
ASCENDING (0), DESCENDING (1);
ASCENDING (1), DESCENDING (0);
int value;
......@@ -17,10 +17,11 @@ public enum SortingOrder {
return value;
}