diff --git a/app/src/main/java/com/simplemobiletools/gallery/Constants.java b/app/src/main/java/com/simplemobiletools/gallery/Constants.java deleted file mode 100644 index 0bf0736f6..000000000 --- a/app/src/main/java/com/simplemobiletools/gallery/Constants.java +++ /dev/null @@ -1,33 +0,0 @@ -package com.simplemobiletools.gallery; - -public class Constants { - public static final String DIRECTORY = "directory"; - public static final String MEDIUM = "medium"; - public static final String GET_IMAGE_INTENT = "get_image_intent"; - public static final String GET_VIDEO_INTENT = "get_video_intent"; - public static final String GET_ANY_INTENT = "get_any_intent"; - public static final String SET_WALLPAPER_INTENT = "set_wallpaper_intent"; - - // shared preferences - public static final String PREFS_KEY = "Gallery"; - public static final String IS_FIRST_RUN = "is_first_run"; - public static final String IS_DARK_THEME = "is_dark_theme"; - public static final String IS_SAME_SORTING = "is_same_sorting"; - public static final String SORT_ORDER = "sort_order"; - public static final String DIRECTORY_SORT_ORDER = "directory_sort_order"; - public static final String HIDDEN_FOLDERS = "hidden_folders"; - public static final String SHOW_HIDDEN_FOLDERS = "show_hidden_folders"; - public static final String AUTOPLAY_VIDEOS = "autoplay_videos"; - public static final String TREE_URI = "tree_uri"; - public static final String DISPLAY_FILE_NAMES = "display_file_names"; - - // sorting - public static final int SORT_BY_NAME = 1; - public static final int SORT_BY_DATE = 2; - public static final int SORT_BY_SIZE = 4; - - public static final int SORT_DESCENDING = 1024; - - // global intents - public static final int OPEN_DOCUMENT_TREE = 1000; -} diff --git a/app/src/main/java/com/simplemobiletools/gallery/activities/MainActivity.java b/app/src/main/java/com/simplemobiletools/gallery/activities/MainActivity.java index a40848ecd..9477e2f4b 100644 --- a/app/src/main/java/com/simplemobiletools/gallery/activities/MainActivity.java +++ b/app/src/main/java/com/simplemobiletools/gallery/activities/MainActivity.java @@ -444,15 +444,15 @@ public class MainActivity extends SimpleActivity @Override public void onItemClick(AdapterView parent, View view, int position, long id) { final Intent intent = new Intent(this, MediaActivity.class); - intent.putExtra(Constants.DIRECTORY, mDirs.get(position).getPath()); + intent.putExtra(Constants.INSTANCE.getDIRECTORY(), mDirs.get(position).getPath()); if (mIsSetWallpaperIntent) { - intent.putExtra(Constants.SET_WALLPAPER_INTENT, true); + intent.putExtra(Constants.INSTANCE.getSET_WALLPAPER_INTENT(), true); startActivityForResult(intent, PICK_WALLPAPER); } else { - intent.putExtra(Constants.GET_IMAGE_INTENT, mIsPickImageIntent || mIsGetImageContentIntent); - intent.putExtra(Constants.GET_VIDEO_INTENT, mIsPickVideoIntent || mIsGetVideoContentIntent); - intent.putExtra(Constants.GET_ANY_INTENT, mIsGetAnyContentIntent); + intent.putExtra(Constants.INSTANCE.getGET_IMAGE_INTENT(), mIsPickImageIntent || mIsGetImageContentIntent); + intent.putExtra(Constants.INSTANCE.getGET_VIDEO_INTENT(), mIsPickVideoIntent || mIsGetVideoContentIntent); + intent.putExtra(Constants.INSTANCE.getGET_ANY_INTENT(), mIsGetAnyContentIntent); startActivityForResult(intent, PICK_MEDIA); } } diff --git a/app/src/main/java/com/simplemobiletools/gallery/activities/MediaActivity.java b/app/src/main/java/com/simplemobiletools/gallery/activities/MediaActivity.java index 32c2f1538..86abb129e 100644 --- a/app/src/main/java/com/simplemobiletools/gallery/activities/MediaActivity.java +++ b/app/src/main/java/com/simplemobiletools/gallery/activities/MediaActivity.java @@ -73,12 +73,12 @@ public class MediaActivity extends SimpleActivity super.onCreate(savedInstanceState); setContentView(R.layout.activity_media); ButterKnife.bind(this); - mIsGetImageIntent = getIntent().getBooleanExtra(Constants.GET_IMAGE_INTENT, false); - mIsGetVideoIntent = getIntent().getBooleanExtra(Constants.GET_VIDEO_INTENT, false); - mIsGetAnyIntent = getIntent().getBooleanExtra(Constants.GET_ANY_INTENT, false); + mIsGetImageIntent = getIntent().getBooleanExtra(Constants.INSTANCE.getGET_IMAGE_INTENT(), false); + mIsGetVideoIntent = getIntent().getBooleanExtra(Constants.INSTANCE.getGET_VIDEO_INTENT(), false); + mIsGetAnyIntent = getIntent().getBooleanExtra(Constants.INSTANCE.getGET_ANY_INTENT(), false); mToBeDeleted = new ArrayList<>(); mSwipeRefreshLayout.setOnRefreshListener(this); - mPath = getIntent().getStringExtra(Constants.DIRECTORY); + mPath = getIntent().getStringExtra(Constants.INSTANCE.getDIRECTORY()); mMedia = new ArrayList<>(); } @@ -407,7 +407,7 @@ public class MediaActivity extends SimpleActivity } private boolean isSetWallpaperIntent() { - return getIntent().getBooleanExtra(Constants.SET_WALLPAPER_INTENT, false); + return getIntent().getBooleanExtra(Constants.INSTANCE.getSET_WALLPAPER_INTENT(), false); } private void displayCopyDialog() { @@ -475,7 +475,7 @@ public class MediaActivity extends SimpleActivity finish(); } else { final Intent intent = new Intent(this, ViewPagerActivity.class); - intent.putExtra(Constants.MEDIUM, curItemPath); + intent.putExtra(Constants.INSTANCE.getMEDIUM(), curItemPath); startActivity(intent); } } diff --git a/app/src/main/kotlin/com/simplemobiletools/gallery/Config.kt b/app/src/main/kotlin/com/simplemobiletools/gallery/Config.kt index 7d61b04ab..c3eec4d6c 100644 --- a/app/src/main/kotlin/com/simplemobiletools/gallery/Config.kt +++ b/app/src/main/kotlin/com/simplemobiletools/gallery/Config.kt @@ -14,73 +14,73 @@ class Config private constructor(context: Context) { } init { - mPrefs = context.getSharedPreferences(Constants.PREFS_KEY, Context.MODE_PRIVATE) + mPrefs = context.getSharedPreferences(PREFS_KEY, Context.MODE_PRIVATE) } var isFirstRun: Boolean - get() = mPrefs.getBoolean(Constants.IS_FIRST_RUN, true) - set(isFirstRun) = mPrefs.edit().putBoolean(Constants.IS_FIRST_RUN, isFirstRun).apply() + get() = mPrefs.getBoolean(IS_FIRST_RUN, true) + set(isFirstRun) = mPrefs.edit().putBoolean(IS_FIRST_RUN, isFirstRun).apply() var isDarkTheme: Boolean - get() = mPrefs.getBoolean(Constants.IS_DARK_THEME, true) - set(isDarkTheme) = mPrefs.edit().putBoolean(Constants.IS_DARK_THEME, isDarkTheme).apply() + get() = mPrefs.getBoolean(IS_DARK_THEME, true) + set(isDarkTheme) = mPrefs.edit().putBoolean(IS_DARK_THEME, isDarkTheme).apply() var isSameSorting: Boolean - get() = mPrefs.getBoolean(Constants.IS_SAME_SORTING, true) - set(isSameSorting) = mPrefs.edit().putBoolean(Constants.IS_SAME_SORTING, isSameSorting).apply() + get() = mPrefs.getBoolean(IS_SAME_SORTING, true) + set(isSameSorting) = mPrefs.edit().putBoolean(IS_SAME_SORTING, isSameSorting).apply() var sorting: Int - get() = if (isSameSorting) directorySorting else mPrefs.getInt(Constants.SORT_ORDER, Constants.SORT_BY_DATE or Constants.SORT_DESCENDING) - set(order) = if (isSameSorting) directorySorting = order else mPrefs.edit().putInt(Constants.SORT_ORDER, order).apply() + get() = if (isSameSorting) directorySorting else mPrefs.getInt(SORT_ORDER, SORT_BY_DATE or SORT_DESCENDING) + set(order) = if (isSameSorting) directorySorting = order else mPrefs.edit().putInt(SORT_ORDER, order).apply() var directorySorting: Int - get() = mPrefs.getInt(Constants.DIRECTORY_SORT_ORDER, Constants.SORT_BY_DATE or Constants.SORT_DESCENDING) - set(order) = mPrefs.edit().putInt(Constants.DIRECTORY_SORT_ORDER, order).apply() + get() = mPrefs.getInt(DIRECTORY_SORT_ORDER, SORT_BY_DATE or SORT_DESCENDING) + set(order) = mPrefs.edit().putInt(DIRECTORY_SORT_ORDER, order).apply() var showHiddenFolders: Boolean - get() = mPrefs.getBoolean(Constants.SHOW_HIDDEN_FOLDERS, false) - set(showHiddenFolders) = mPrefs.edit().putBoolean(Constants.SHOW_HIDDEN_FOLDERS, showHiddenFolders).apply() + get() = mPrefs.getBoolean(SHOW_HIDDEN_FOLDERS, false) + set(showHiddenFolders) = mPrefs.edit().putBoolean(SHOW_HIDDEN_FOLDERS, showHiddenFolders).apply() fun addHiddenDirectory(path: String) { val hiddenFolders = hiddenFolders hiddenFolders.add(path) - mPrefs.edit().putStringSet(Constants.HIDDEN_FOLDERS, hiddenFolders).apply() + mPrefs.edit().putStringSet(HIDDEN_FOLDERS, hiddenFolders).apply() } fun addHiddenDirectories(paths: Set) { val hiddenFolders = hiddenFolders hiddenFolders.addAll(paths) - mPrefs.edit().putStringSet(Constants.HIDDEN_FOLDERS, hiddenFolders).apply() + mPrefs.edit().putStringSet(HIDDEN_FOLDERS, hiddenFolders).apply() } fun removeHiddenDirectory(path: String) { val hiddenFolders = hiddenFolders hiddenFolders.remove(path) - mPrefs.edit().putStringSet(Constants.HIDDEN_FOLDERS, hiddenFolders).apply() + mPrefs.edit().putStringSet(HIDDEN_FOLDERS, hiddenFolders).apply() } fun removeHiddenDirectories(paths: Set) { val hiddenFolders = hiddenFolders hiddenFolders.removeAll(paths) - mPrefs.edit().putStringSet(Constants.HIDDEN_FOLDERS, hiddenFolders).apply() + mPrefs.edit().putStringSet(HIDDEN_FOLDERS, hiddenFolders).apply() } val hiddenFolders: MutableSet - get() = mPrefs.getStringSet(Constants.HIDDEN_FOLDERS, HashSet()) + get() = mPrefs.getStringSet(HIDDEN_FOLDERS, HashSet()) fun getIsFolderHidden(path: String): Boolean { return hiddenFolders.contains(path) } var autoplayVideos: Boolean - get() = mPrefs.getBoolean(Constants.AUTOPLAY_VIDEOS, false) - set(autoplay) = mPrefs.edit().putBoolean(Constants.AUTOPLAY_VIDEOS, autoplay).apply() + get() = mPrefs.getBoolean(AUTOPLAY_VIDEOS, false) + set(autoplay) = mPrefs.edit().putBoolean(AUTOPLAY_VIDEOS, autoplay).apply() var treeUri: String - get() = mPrefs.getString(Constants.TREE_URI, "") - set(uri) = mPrefs.edit().putString(Constants.TREE_URI, uri).apply() + get() = mPrefs.getString(TREE_URI, "") + set(uri) = mPrefs.edit().putString(TREE_URI, uri).apply() var displayFileNames: Boolean - get() = mPrefs.getBoolean(Constants.DISPLAY_FILE_NAMES, false) - set(display) = mPrefs.edit().putBoolean(Constants.DISPLAY_FILE_NAMES, display).apply() + get() = mPrefs.getBoolean(DISPLAY_FILE_NAMES, false) + set(display) = mPrefs.edit().putBoolean(DISPLAY_FILE_NAMES, display).apply() } diff --git a/app/src/main/kotlin/com/simplemobiletools/gallery/Constants.kt b/app/src/main/kotlin/com/simplemobiletools/gallery/Constants.kt new file mode 100644 index 000000000..162c93131 --- /dev/null +++ b/app/src/main/kotlin/com/simplemobiletools/gallery/Constants.kt @@ -0,0 +1,33 @@ +package com.simplemobiletools.gallery + +// shared preferences +val PREFS_KEY = "Gallery" +val IS_FIRST_RUN = "is_first_run" +val IS_DARK_THEME = "is_dark_theme" +val IS_SAME_SORTING = "is_same_sorting" +val SORT_ORDER = "sort_order" +val DIRECTORY_SORT_ORDER = "directory_sort_order" +val HIDDEN_FOLDERS = "hidden_folders" +val SHOW_HIDDEN_FOLDERS = "show_hidden_folders" +val AUTOPLAY_VIDEOS = "autoplay_videos" +val TREE_URI = "tree_uri" +val DISPLAY_FILE_NAMES = "display_file_names" + +// sorting +val SORT_BY_NAME = 1 +val SORT_BY_DATE = 2 +val SORT_BY_SIZE = 4 + +val SORT_DESCENDING = 1024 + +// global intents +val OPEN_DOCUMENT_TREE = 1000 + +object Constants { + val DIRECTORY = "directory" + val MEDIUM = "medium" + val GET_IMAGE_INTENT = "get_image_intent" + val GET_VIDEO_INTENT = "get_video_intent" + val GET_ANY_INTENT = "get_any_intent" + val SET_WALLPAPER_INTENT = "set_wallpaper_intent" +} diff --git a/app/src/main/kotlin/com/simplemobiletools/gallery/activities/SimpleActivity.kt b/app/src/main/kotlin/com/simplemobiletools/gallery/activities/SimpleActivity.kt index 69feb1744..ee24abfcd 100644 --- a/app/src/main/kotlin/com/simplemobiletools/gallery/activities/SimpleActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/gallery/activities/SimpleActivity.kt @@ -9,7 +9,7 @@ import android.support.v7.app.AppCompatActivity import android.view.MenuItem import com.simplemobiletools.filepicker.extensions.isShowingWritePermissions import com.simplemobiletools.gallery.Config -import com.simplemobiletools.gallery.Constants +import com.simplemobiletools.gallery.OPEN_DOCUMENT_TREE import com.simplemobiletools.gallery.R import com.simplemobiletools.gallery.extensions.hideSystemUI import com.simplemobiletools.gallery.extensions.showSystemUI @@ -40,7 +40,7 @@ open class SimpleActivity : AppCompatActivity() { override fun onActivityResult(requestCode: Int, resultCode: Int, resultData: Intent?) { super.onActivityResult(requestCode, resultCode, resultData) - if (requestCode == Constants.OPEN_DOCUMENT_TREE && resultCode == Activity.RESULT_OK && resultData != null) { + if (requestCode == OPEN_DOCUMENT_TREE && resultCode == Activity.RESULT_OK && resultData != null) { saveTreeUri(resultData) } } @@ -54,7 +54,7 @@ open class SimpleActivity : AppCompatActivity() { contentResolver.takePersistableUriPermission(treeUri, takeFlags) } - fun isShowingPermDialog(file: File) = isShowingWritePermissions(file, mConfig.treeUri, Constants.OPEN_DOCUMENT_TREE) + fun isShowingPermDialog(file: File) = isShowingWritePermissions(file, mConfig.treeUri, OPEN_DOCUMENT_TREE) fun hideUI() = hideSystemUI(supportActionBar, window) diff --git a/app/src/main/kotlin/com/simplemobiletools/gallery/asynctasks/GetDirectoriesAsynctask.kt b/app/src/main/kotlin/com/simplemobiletools/gallery/asynctasks/GetDirectoriesAsynctask.kt index 49d78ab31..4fc026c4a 100644 --- a/app/src/main/kotlin/com/simplemobiletools/gallery/asynctasks/GetDirectoriesAsynctask.kt +++ b/app/src/main/kotlin/com/simplemobiletools/gallery/asynctasks/GetDirectoriesAsynctask.kt @@ -4,10 +4,7 @@ import android.content.Context import android.os.AsyncTask import android.provider.MediaStore import com.simplemobiletools.filepicker.extensions.scanFiles -import com.simplemobiletools.gallery.Config -import com.simplemobiletools.gallery.Constants -import com.simplemobiletools.gallery.R -import com.simplemobiletools.gallery.Utils +import com.simplemobiletools.gallery.* import com.simplemobiletools.gallery.models.Directory import java.io.File import java.lang.ref.WeakReference @@ -95,11 +92,11 @@ class GetDirectoriesAsynctask(val context: Context, val isPickVideo: Boolean, va private fun getSortOrder(): String { val sorting = mConfig.directorySorting var sortBy = MediaStore.Images.Media.DATE_MODIFIED - if (sorting and Constants.SORT_BY_NAME != 0) { + if (sorting and SORT_BY_NAME != 0) { sortBy = MediaStore.Images.Media.DATA } - if (sorting and Constants.SORT_DESCENDING != 0) { + if (sorting and SORT_DESCENDING != 0) { sortBy += " DESC" } return sortBy diff --git a/app/src/main/kotlin/com/simplemobiletools/gallery/dialogs/ChangeSortingDialog.kt b/app/src/main/kotlin/com/simplemobiletools/gallery/dialogs/ChangeSortingDialog.kt index 70e505f0f..d76e11ac8 100644 --- a/app/src/main/kotlin/com/simplemobiletools/gallery/dialogs/ChangeSortingDialog.kt +++ b/app/src/main/kotlin/com/simplemobiletools/gallery/dialogs/ChangeSortingDialog.kt @@ -5,9 +5,7 @@ import android.content.DialogInterface import android.support.v7.app.AlertDialog import android.view.LayoutInflater import android.view.View -import com.simplemobiletools.gallery.Config -import com.simplemobiletools.gallery.Constants -import com.simplemobiletools.gallery.R +import com.simplemobiletools.gallery.* import kotlinx.android.synthetic.main.dialog_change_sorting.view.* class ChangeSortingDialog(val activity: Activity, val isDirectorySorting: Boolean, val listener: OnChangeSortingListener) : DialogInterface.OnClickListener { @@ -39,9 +37,9 @@ class ChangeSortingDialog(val activity: Activity, val isDirectorySorting: Boolea val sortingRadio = view.dialog_radio_sorting var sortBtn = sortingRadio.dialog_radio_name - if (currSorting and Constants.SORT_BY_DATE != 0) { + if (currSorting and SORT_BY_DATE != 0) { sortBtn = sortingRadio.dialog_radio_date - } else if (currSorting and Constants.SORT_BY_SIZE != 0) { + } else if (currSorting and SORT_BY_SIZE != 0) { sortBtn = sortingRadio.dialog_radio_size } sortBtn.isChecked = true @@ -51,7 +49,7 @@ class ChangeSortingDialog(val activity: Activity, val isDirectorySorting: Boolea val orderRadio = view.dialog_radio_order var orderBtn = orderRadio.dialog_radio_ascending - if (currSorting and Constants.SORT_DESCENDING != 0) { + if (currSorting and SORT_DESCENDING != 0) { orderBtn = orderRadio.dialog_radio_descending } orderBtn.isChecked = true @@ -60,13 +58,13 @@ class ChangeSortingDialog(val activity: Activity, val isDirectorySorting: Boolea override fun onClick(dialog: DialogInterface, which: Int) { val sortingRadio = view.dialog_radio_sorting var sorting = when (sortingRadio.checkedRadioButtonId) { - R.id.dialog_radio_name -> Constants.SORT_BY_NAME - R.id.dialog_radio_date -> Constants.SORT_BY_DATE - else -> Constants.SORT_BY_SIZE + R.id.dialog_radio_name -> SORT_BY_NAME + R.id.dialog_radio_date -> SORT_BY_DATE + else -> SORT_BY_SIZE } if (view.dialog_radio_order.checkedRadioButtonId == R.id.dialog_radio_descending) { - sorting = sorting or Constants.SORT_DESCENDING + sorting = sorting or SORT_DESCENDING } if (isDirectorySorting) { diff --git a/app/src/main/kotlin/com/simplemobiletools/gallery/models/Directory.kt b/app/src/main/kotlin/com/simplemobiletools/gallery/models/Directory.kt index dede382c9..041fbc432 100644 --- a/app/src/main/kotlin/com/simplemobiletools/gallery/models/Directory.kt +++ b/app/src/main/kotlin/com/simplemobiletools/gallery/models/Directory.kt @@ -1,6 +1,8 @@ package com.simplemobiletools.gallery.models -import com.simplemobiletools.gallery.Constants +import com.simplemobiletools.gallery.SORT_BY_DATE +import com.simplemobiletools.gallery.SORT_BY_NAME +import com.simplemobiletools.gallery.SORT_DESCENDING class Directory(val path: String, val thumbnail: String, val name: String, var mediaCnt: Int, val timestamp: Long, var size: Long) : Comparable { fun addSize(bytes: Long) { @@ -9,15 +11,15 @@ class Directory(val path: String, val thumbnail: String, val name: String, var m override fun compareTo(other: Directory): Int { var res: Int - if (sorting and Constants.SORT_BY_NAME != 0) { + if (sorting and SORT_BY_NAME != 0) { res = path.compareTo(other.path) - } else if (sorting and Constants.SORT_BY_DATE != 0) { + } else if (sorting and SORT_BY_DATE != 0) { res = if (timestamp > other.timestamp) 1 else -1 } else { res = if (size > other.size) 1 else -1 } - if (sorting and Constants.SORT_DESCENDING != 0) { + if (sorting and SORT_DESCENDING != 0) { res *= -1 } return res diff --git a/app/src/main/kotlin/com/simplemobiletools/gallery/models/Medium.kt b/app/src/main/kotlin/com/simplemobiletools/gallery/models/Medium.kt index a90693ea0..e474a4ce8 100644 --- a/app/src/main/kotlin/com/simplemobiletools/gallery/models/Medium.kt +++ b/app/src/main/kotlin/com/simplemobiletools/gallery/models/Medium.kt @@ -1,7 +1,8 @@ package com.simplemobiletools.gallery.models -import com.simplemobiletools.gallery.Constants - +import com.simplemobiletools.gallery.SORT_BY_DATE +import com.simplemobiletools.gallery.SORT_BY_NAME +import com.simplemobiletools.gallery.SORT_DESCENDING import java.io.Serializable class Medium(val name: String, var path: String, val isVideo: Boolean, val timestamp: Long, val size: Long) : Serializable, Comparable { @@ -15,15 +16,15 @@ class Medium(val name: String, var path: String, val isVideo: Boolean, val times override fun compareTo(other: Medium): Int { var res: Int - if (sorting and Constants.SORT_BY_NAME != 0) { + if (sorting and SORT_BY_NAME != 0) { res = path.compareTo(other.path) - } else if (sorting and Constants.SORT_BY_DATE != 0) { + } else if (sorting and SORT_BY_DATE != 0) { res = if (timestamp > other.timestamp) 1 else -1 } else { res = if (size > other.size) 1 else -1 } - if (sorting and Constants.SORT_DESCENDING != 0) { + if (sorting and SORT_DESCENDING != 0) { res *= -1 } return res