diff --git a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/activities/MediaActivity.kt b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/activities/MediaActivity.kt index 6b8150a60..e179cc945 100644 --- a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/activities/MediaActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/activities/MediaActivity.kt @@ -73,6 +73,7 @@ class MediaActivity : SimpleActivity(), MediaOperationsListener { private var mStoredScrollHorizontally = true private var mStoredShowFileTypes = true private var mStoredRoundedCorners = false + private var mStoredMarkFavoriteItems = true private var mStoredTextColor = 0 private var mStoredAdjustedPrimaryColor = 0 private var mStoredThumbnailSpacing = 0 @@ -149,12 +150,11 @@ class MediaActivity : SimpleActivity(), MediaOperationsListener { getMediaAdapter()?.updatePrimaryColor(config.primaryColor) } - if (mStoredThumbnailSpacing != config.thumbnailSpacing) { - media_grid.adapter = null - setupAdapter() - } - - if (mStoredRoundedCorners != config.fileRoundedCorners) { + if ( + mStoredThumbnailSpacing != config.thumbnailSpacing + || mStoredRoundedCorners != config.fileRoundedCorners + || mStoredMarkFavoriteItems != config.markFavoriteItems + ) { media_grid.adapter = null setupAdapter() } @@ -306,6 +306,7 @@ class MediaActivity : SimpleActivity(), MediaOperationsListener { mStoredCropThumbnails = cropThumbnails mStoredScrollHorizontally = scrollHorizontally mStoredShowFileTypes = showThumbnailFileTypes + mStoredMarkFavoriteItems = markFavoriteItems mStoredTextColor = textColor mStoredThumbnailSpacing = thumbnailSpacing mStoredRoundedCorners = fileRoundedCorners diff --git a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/activities/SettingsActivity.kt b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/activities/SettingsActivity.kt index 754357ee8..1075de4b0 100644 --- a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/activities/SettingsActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/activities/SettingsActivity.kt @@ -731,6 +731,7 @@ class SettingsActivity : SimpleActivity() { put(CROP_THUMBNAILS, config.cropThumbnails) put(SHOW_THUMBNAIL_VIDEO_DURATION, config.showThumbnailVideoDuration) put(SHOW_THUMBNAIL_FILE_TYPES, config.showThumbnailFileTypes) + put(MARK_FAVORITE_ITEMS, config.markFavoriteItems) put(SCROLL_HORIZONTALLY, config.scrollHorizontally) put(ENABLE_PULL_TO_REFRESH, config.enablePullToRefresh) put(MAX_BRIGHTNESS, config.maxBrightness) @@ -872,6 +873,7 @@ class SettingsActivity : SimpleActivity() { CROP_THUMBNAILS -> config.cropThumbnails = value.toBoolean() SHOW_THUMBNAIL_VIDEO_DURATION -> config.showThumbnailVideoDuration = value.toBoolean() SHOW_THUMBNAIL_FILE_TYPES -> config.showThumbnailFileTypes = value.toBoolean() + MARK_FAVORITE_ITEMS -> config.markFavoriteItems = value.toBoolean() SCROLL_HORIZONTALLY -> config.scrollHorizontally = value.toBoolean() ENABLE_PULL_TO_REFRESH -> config.enablePullToRefresh = value.toBoolean() MAX_BRIGHTNESS -> config.maxBrightness = value.toBoolean() diff --git a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/adapters/MediaAdapter.kt b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/adapters/MediaAdapter.kt index b4da39e87..f9a0bd45d 100644 --- a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/adapters/MediaAdapter.kt +++ b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/adapters/MediaAdapter.kt @@ -35,6 +35,7 @@ import kotlinx.android.synthetic.main.photo_item_grid.view.* import kotlinx.android.synthetic.main.thumbnail_section.view.* import kotlinx.android.synthetic.main.video_item_grid.view.* import kotlinx.android.synthetic.main.video_item_grid.view.media_item_holder +import kotlinx.android.synthetic.main.video_item_grid.view.favorite import kotlinx.android.synthetic.main.video_item_grid.view.medium_check import kotlinx.android.synthetic.main.video_item_grid.view.medium_name import kotlinx.android.synthetic.main.video_item_grid.view.medium_thumbnail @@ -537,6 +538,8 @@ class MediaAdapter( media_item_holder.setPadding(padding, padding, padding, padding) + favorite.beVisibleIf(medium.isFavorite && config.markFavoriteItems) + play_portrait_outline?.beVisibleIf(medium.isVideo() || medium.isPortrait()) if (medium.isVideo()) { play_portrait_outline?.setImageResource(R.drawable.ic_play_outline_vector) diff --git a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/dialogs/ChangeFileThumbnailStyleDialog.kt b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/dialogs/ChangeFileThumbnailStyleDialog.kt index 5498c66b8..fca5eb4b4 100644 --- a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/dialogs/ChangeFileThumbnailStyleDialog.kt +++ b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/dialogs/ChangeFileThumbnailStyleDialog.kt @@ -22,11 +22,13 @@ class ChangeFileThumbnailStyleDialog(val activity: BaseSimpleActivity) : DialogI dialog_file_style_animate_gifs.isChecked = config.animateGifs dialog_file_style_show_thumbnail_video_duration.isChecked = config.showThumbnailVideoDuration dialog_file_style_show_thumbnail_file_types.isChecked = config.showThumbnailFileTypes + dialog_file_style_mark_favorite_items.isChecked = config.markFavoriteItems dialog_file_style_rounded_corners_holder.setOnClickListener { dialog_file_style_rounded_corners.toggle() } dialog_file_style_animate_gifs_holder.setOnClickListener { dialog_file_style_animate_gifs.toggle() } dialog_file_style_show_thumbnail_video_duration_holder.setOnClickListener { dialog_file_style_show_thumbnail_video_duration.toggle() } dialog_file_style_show_thumbnail_file_types_holder.setOnClickListener { dialog_file_style_show_thumbnail_file_types.toggle() } + dialog_file_style_mark_favorite_items_holder.setOnClickListener { dialog_file_style_mark_favorite_items.toggle() } dialog_file_style_spacing_holder.setOnClickListener { val items = arrayListOf( @@ -61,6 +63,7 @@ class ChangeFileThumbnailStyleDialog(val activity: BaseSimpleActivity) : DialogI config.animateGifs = view.dialog_file_style_animate_gifs.isChecked config.showThumbnailVideoDuration = view.dialog_file_style_show_thumbnail_video_duration.isChecked config.showThumbnailFileTypes = view.dialog_file_style_show_thumbnail_file_types.isChecked + config.markFavoriteItems = view.dialog_file_style_mark_favorite_items.isChecked config.thumbnailSpacing = thumbnailSpacing } diff --git a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/helpers/Config.kt b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/helpers/Config.kt index bc9c880cb..75d7045e4 100644 --- a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/helpers/Config.kt +++ b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/helpers/Config.kt @@ -167,6 +167,10 @@ class Config(context: Context) : BaseConfig(context) { get() = prefs.getBoolean(SHOW_THUMBNAIL_FILE_TYPES, true) set(showThumbnailFileTypes) = prefs.edit().putBoolean(SHOW_THUMBNAIL_FILE_TYPES, showThumbnailFileTypes).apply() + var markFavoriteItems: Boolean + get() = prefs.getBoolean(MARK_FAVORITE_ITEMS, true) + set(markFavoriteItems) = prefs.edit().putBoolean(MARK_FAVORITE_ITEMS, markFavoriteItems).apply() + var screenRotation: Int get() = prefs.getInt(SCREEN_ROTATION, ROTATE_BY_SYSTEM_SETTING) set(screenRotation) = prefs.edit().putInt(SCREEN_ROTATION, screenRotation).apply() diff --git a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/helpers/Constants.kt b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/helpers/Constants.kt index df6c9240d..d48a9cc30 100644 --- a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/helpers/Constants.kt +++ b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/helpers/Constants.kt @@ -79,6 +79,7 @@ const val SHOW_NOTCH = "show_notch" const val FILE_LOADING_PRIORITY = "file_loading_priority" const val SPAM_FOLDERS_CHECKED = "spam_folders_checked" const val SHOW_THUMBNAIL_FILE_TYPES = "show_thumbnail_file_types" +const val MARK_FAVORITE_ITEMS = "mark_favorite_items" const val EDITOR_BRUSH_COLOR = "editor_brush_color" const val EDITOR_BRUSH_HARDNESS = "editor_brush_hardness" const val EDITOR_BRUSH_SIZE = "editor_brush_size" diff --git a/app/src/main/res/layout/dialog_change_file_thumbnail_style.xml b/app/src/main/res/layout/dialog_change_file_thumbnail_style.xml index 8e14dbc1e..583138789 100644 --- a/app/src/main/res/layout/dialog_change_file_thumbnail_style.xml +++ b/app/src/main/res/layout/dialog_change_file_thumbnail_style.xml @@ -108,5 +108,21 @@ android:text="@string/show_image_file_types" /> + + + + + + diff --git a/app/src/main/res/layout/photo_item_grid.xml b/app/src/main/res/layout/photo_item_grid.xml index 422bba8d1..37f7be306 100644 --- a/app/src/main/res/layout/photo_item_grid.xml +++ b/app/src/main/res/layout/photo_item_grid.xml @@ -27,6 +27,19 @@ android:textSize="@dimen/bigger_text_size" android:visibility="gone" /> + + + + - + + + + 100dp 20dp 22dp + 17dp + 26dp 26dp 34dp 96dp