Skip to content

Commit 217bc71

Browse files
authored
Merge pull request #60 from emreesen27/develop
v1.0.0-beta10 is completed
2 parents fcd353c + 3b0a1f3 commit 217bc71

17 files changed

Lines changed: 232 additions & 140 deletions

File tree

CHANGELOG.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,15 @@
1+
## v1.0.0-beta10 (24.12.2024)
2+
3+
* The Details dialog now displays file information instantly, while continuing to calculate total sizes in the background.
4+
* Added the ability to sort files by extension in the sorting options.
5+
16
## v1.0.0-beta9 (31.05.2024)
7+
28
* The issue of the screen not refreshing when a single file is deleted has been resolved
39
* The sorting feature is hidden while the search is active
410

511
## v1.0.0-beta-8 (25.05.2024)
12+
613
* Sorting feature added for file and media items
714
* The synchronization issue with the show hidden files setting button has been fixed
815

app/build.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -39,8 +39,8 @@ android {
3939
applicationId "com.sn.snfilemanager"
4040
minSdk 26
4141
targetSdk 34
42-
versionCode 9
43-
versionName "1.0.0-beta9"
42+
versionCode 10
43+
versionName "1.0.0-beta10"
4444

4545
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
4646
}

app/src/main/java/com/sn/snfilemanager/LoadingFragment.kt

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,5 @@ class LoadingFragment : Fragment() {
1111
inflater: LayoutInflater,
1212
container: ViewGroup?,
1313
savedInstanceState: Bundle?,
14-
): View? {
15-
return inflater.inflate(R.layout.fragment_loading, container, false)
16-
}
14+
): View = inflater.inflate(R.layout.fragment_loading, container, false)
1715
}

app/src/main/java/com/sn/snfilemanager/core/base/BaseDialog.kt

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -45,9 +45,7 @@ abstract class BaseDialog<VBinding : ViewBinding> : DialogFragment() {
4545
inflater: LayoutInflater,
4646
container: ViewGroup?,
4747
savedInstanceState: Bundle?,
48-
): View? {
49-
return binding.root
50-
}
48+
): View = binding.root
5149

5250
override fun onViewCreated(
5351
view: View,

app/src/main/java/com/sn/snfilemanager/core/base/BaseFragment.kt

Lines changed: 4 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ abstract class BaseFragment<VBinding : ViewBinding, VModel : ViewModel> : Fragme
3838
inflater: LayoutInflater,
3939
container: ViewGroup?,
4040
savedInstanceState: Bundle?,
41-
): View? {
41+
) = binding.root.also {
4242
getToolbar()?.let { toolbar ->
4343
getMenuResId()?.let { menuId ->
4444
initMenu(menuId, toolbar)
@@ -47,7 +47,6 @@ abstract class BaseFragment<VBinding : ViewBinding, VModel : ViewModel> : Fragme
4747
findNavController().popBackStack()
4848
}
4949
}
50-
return binding.root
5150
}
5251

5352
override fun onViewCreated(
@@ -63,17 +62,11 @@ abstract class BaseFragment<VBinding : ViewBinding, VModel : ViewModel> : Fragme
6362

6463
open fun observeData() {}
6564

66-
open fun getMenuResId(): Int? {
67-
return null
68-
}
65+
open fun getMenuResId(): Int? = null
6966

70-
open fun getToolbar(): Toolbar? {
71-
return null
72-
}
67+
open fun getToolbar(): Toolbar? = null
7368

74-
open fun onMenuItemSelected(menuItemId: Int): Boolean {
75-
return false
76-
}
69+
open fun onMenuItemSelected(menuItemId: Int): Boolean = false
7770

7871
fun navigate(directions: NavDirections) {
7972
findNavController().navigate(directions)

app/src/main/java/com/sn/snfilemanager/core/util/Config.kt

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@ package com.sn.snfilemanager.core.util
22

33
object Config {
44
var hiddenFile: Boolean = false
5-
var sortCriterion: SortCriterion = SortCriterion.NAME
6-
var sortOrder: SortOrder = SortOrder.ASCENDING
7-
var mediaSortCriterion: SortCriterion = SortCriterion.NAME
8-
var mediaSortOrder: SortOrder = SortOrder.ASCENDING
5+
var sortCriterion: SortCriterion = SortCriterion.LAST_MODIFIED
6+
var sortOrder: SortOrder = SortOrder.DESCENDING
7+
var mediaSortCriterion: SortCriterion = SortCriterion.LAST_MODIFIED
8+
var mediaSortOrder: SortOrder = SortOrder.DESCENDING
99
}

app/src/main/java/com/sn/snfilemanager/core/util/DirectoryType.kt

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
package com.sn.snfilemanager.core.util
22

3-
enum class DirectoryType(val type: String) {
3+
enum class DirectoryType(
4+
val type: String,
5+
) {
46
ANDROID("Android"),
57
DOWNLOAD("Download"),
68
MUSIC("Music"),

app/src/main/java/com/sn/snfilemanager/core/util/SortCriterion.kt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,5 @@ package com.sn.snfilemanager.core.util
33
enum class SortCriterion {
44
NAME,
55
LAST_MODIFIED,
6+
EXTENSION,
67
}

app/src/main/java/com/sn/snfilemanager/feature/files/presentation/FilesListViewModel.kt

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -271,6 +271,14 @@ class FilesListViewModel
271271
fileList.sortByDescending { it.lastModified.toDate() }
272272
}
273273
}
274+
275+
SortCriterion.EXTENSION -> {
276+
if (sortOrder == SortOrder.ASCENDING) {
277+
fileList.sortBy { it.extension.lowercase(Locale.getDefault()) }
278+
} else {
279+
fileList.sortByDescending { it.extension.lowercase(Locale.getDefault()) }
280+
}
281+
}
274282
}
275283
}
276284

app/src/main/java/com/sn/snfilemanager/feature/media/presentation/MediaViewModel.kt

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -105,6 +105,14 @@ class MediaViewModel
105105
OrderStrategy.dateModified(OrderStrategy.DESC)
106106
}
107107
}
108+
109+
SortCriterion.EXTENSION -> {
110+
if (mediaSortOrder == SortOrder.ASCENDING) {
111+
OrderStrategy.extension(OrderStrategy.ASC)
112+
} else {
113+
OrderStrategy.extension(OrderStrategy.DESC)
114+
}
115+
}
108116
}
109117
}
110118

0 commit comments

Comments
 (0)