mirror of
https://github.com/SimpleMobileTools/Simple-File-Manager.git
synced 2025-04-25 15:38:54 +02:00
allow searching Recents fragments too
This commit is contained in:
parent
cf9326d323
commit
f01bcb0f35
@ -31,6 +31,7 @@ import com.simplemobiletools.filemanager.pro.extensions.config
|
|||||||
import com.simplemobiletools.filemanager.pro.extensions.tryOpenPathIntent
|
import com.simplemobiletools.filemanager.pro.extensions.tryOpenPathIntent
|
||||||
import com.simplemobiletools.filemanager.pro.fragments.ItemsFragment
|
import com.simplemobiletools.filemanager.pro.fragments.ItemsFragment
|
||||||
import com.simplemobiletools.filemanager.pro.fragments.MyViewPagerFragment
|
import com.simplemobiletools.filemanager.pro.fragments.MyViewPagerFragment
|
||||||
|
import com.simplemobiletools.filemanager.pro.fragments.RecentsFragment
|
||||||
import com.simplemobiletools.filemanager.pro.fragments.StorageFragment
|
import com.simplemobiletools.filemanager.pro.fragments.StorageFragment
|
||||||
import com.simplemobiletools.filemanager.pro.helpers.MAX_COLUMN_COUNT
|
import com.simplemobiletools.filemanager.pro.helpers.MAX_COLUMN_COUNT
|
||||||
import com.simplemobiletools.filemanager.pro.helpers.RootHelpers
|
import com.simplemobiletools.filemanager.pro.helpers.RootHelpers
|
||||||
@ -143,13 +144,15 @@ class MainActivity : SimpleActivity() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
override fun onBackPressed() {
|
override fun onBackPressed() {
|
||||||
if (getCurrentFragment() !is ItemsFragment) {
|
if (getCurrentFragment() is StorageFragment) {
|
||||||
super.onBackPressed()
|
super.onBackPressed()
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
if (main_menu.isSearchOpen) {
|
if (main_menu.isSearchOpen) {
|
||||||
main_menu.closeSearch()
|
main_menu.closeSearch()
|
||||||
|
} else if (getCurrentFragment() is RecentsFragment) {
|
||||||
|
super.onBackPressed()
|
||||||
} else if (getCurrentFragment()!!.breadcrumbs.getItemCount() <= 1) {
|
} else if (getCurrentFragment()!!.breadcrumbs.getItemCount() <= 1) {
|
||||||
if (!wasBackJustPressed && config.pressBackTwice) {
|
if (!wasBackJustPressed && config.pressBackTwice) {
|
||||||
wasBackJustPressed = true
|
wasBackJustPressed = true
|
||||||
|
@ -70,7 +70,8 @@ class ItemsFragment(context: Context, attributeSet: AttributeSet) : MyViewPagerF
|
|||||||
if (currentPath != "") {
|
if (currentPath != "") {
|
||||||
breadcrumbs.updateColor(textColor)
|
breadcrumbs.updateColor(textColor)
|
||||||
}
|
}
|
||||||
items_swipe_refresh.isEnabled = activity?.config?.enablePullToRefresh != false
|
|
||||||
|
items_swipe_refresh.isEnabled = lastSearchedText.isEmpty() && activity?.config?.enablePullToRefresh != false
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun setupFontSize() {
|
override fun setupFontSize() {
|
||||||
@ -300,6 +301,7 @@ class ItemsFragment(context: Context, attributeSet: AttributeSet) : MyViewPagerF
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
items_swipe_refresh.isEnabled = text.isEmpty() && activity?.config?.enablePullToRefresh != false
|
||||||
when {
|
when {
|
||||||
searchText.isEmpty() -> {
|
searchText.isEmpty() -> {
|
||||||
items_fastscroller.beVisible()
|
items_fastscroller.beVisible()
|
||||||
@ -396,7 +398,6 @@ class ItemsFragment(context: Context, attributeSet: AttributeSet) : MyViewPagerF
|
|||||||
fun searchOpened() {
|
fun searchOpened() {
|
||||||
isSearchOpen = true
|
isSearchOpen = true
|
||||||
lastSearchedText = ""
|
lastSearchedText = ""
|
||||||
items_swipe_refresh.isEnabled = false
|
|
||||||
}
|
}
|
||||||
|
|
||||||
fun searchClosed() {
|
fun searchClosed() {
|
||||||
|
@ -28,6 +28,8 @@ import java.io.File
|
|||||||
|
|
||||||
class RecentsFragment(context: Context, attributeSet: AttributeSet) : MyViewPagerFragment(context, attributeSet), ItemOperationsListener {
|
class RecentsFragment(context: Context, attributeSet: AttributeSet) : MyViewPagerFragment(context, attributeSet), ItemOperationsListener {
|
||||||
private val RECENTS_LIMIT = 50
|
private val RECENTS_LIMIT = 50
|
||||||
|
private var filesIgnoringSearch = ArrayList<ListItem>()
|
||||||
|
private var lastSearchedText = ""
|
||||||
|
|
||||||
override fun setupFragment(activity: SimpleActivity) {
|
override fun setupFragment(activity: SimpleActivity) {
|
||||||
if (this.activity == null) {
|
if (this.activity == null) {
|
||||||
@ -44,6 +46,7 @@ class RecentsFragment(context: Context, attributeSet: AttributeSet) : MyViewPage
|
|||||||
recents_swipe_refresh?.isRefreshing = false
|
recents_swipe_refresh?.isRefreshing = false
|
||||||
recents_list.beVisibleIf(recents.isNotEmpty())
|
recents_list.beVisibleIf(recents.isNotEmpty())
|
||||||
recents_placeholder.beVisibleIf(recents.isEmpty())
|
recents_placeholder.beVisibleIf(recents.isEmpty())
|
||||||
|
filesIgnoringSearch = recents
|
||||||
addItems(recents, false)
|
addItems(recents, false)
|
||||||
|
|
||||||
if (context != null && currentViewType != context!!.config.getFolderViewType(currentPath)) {
|
if (context != null && currentViewType != context!!.config.getFolderViewType(currentPath)) {
|
||||||
@ -78,7 +81,7 @@ class RecentsFragment(context: Context, attributeSet: AttributeSet) : MyViewPage
|
|||||||
initDrawables()
|
initDrawables()
|
||||||
}
|
}
|
||||||
|
|
||||||
recents_swipe_refresh.isEnabled = activity?.config?.enablePullToRefresh != false
|
recents_swipe_refresh.isEnabled = lastSearchedText.isEmpty() && activity?.config?.enablePullToRefresh != false
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun setupLayoutManager() {
|
private fun setupLayoutManager() {
|
||||||
@ -225,7 +228,13 @@ class RecentsFragment(context: Context, attributeSet: AttributeSet) : MyViewPage
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun searchQueryChanged(text: String) {}
|
override fun searchQueryChanged(text: String) {
|
||||||
|
lastSearchedText = text
|
||||||
|
val filtered = filesIgnoringSearch.filter { it.mName.contains(text, true) }.toMutableList() as ArrayList<ListItem>
|
||||||
|
(recents_list.adapter as? ItemsAdapter)?.updateItems(filtered, text)
|
||||||
|
recents_placeholder.beVisibleIf(filtered.isEmpty())
|
||||||
|
recents_swipe_refresh.isEnabled = lastSearchedText.isEmpty() && activity?.config?.enablePullToRefresh != false
|
||||||
|
}
|
||||||
|
|
||||||
override fun finishActMode() {
|
override fun finishActMode() {
|
||||||
getRecyclerAdapter()?.finishActMode()
|
getRecyclerAdapter()?.finishActMode()
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<com.simplemobiletools.filemanager.pro.fragments.RecentsFragment xmlns:android="http://schemas.android.com/apk/res/android"
|
<com.simplemobiletools.filemanager.pro.fragments.RecentsFragment xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||||
|
xmlns:tools="http://schemas.android.com/tools"
|
||||||
android:id="@+id/recents_fragment"
|
android:id="@+id/recents_fragment"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent">
|
android:layout_height="match_parent">
|
||||||
@ -18,7 +19,8 @@
|
|||||||
android:text="@string/no_items_found"
|
android:text="@string/no_items_found"
|
||||||
android:textSize="@dimen/bigger_text_size"
|
android:textSize="@dimen/bigger_text_size"
|
||||||
android:textStyle="italic"
|
android:textStyle="italic"
|
||||||
android:visibility="gone" />
|
android:visibility="gone"
|
||||||
|
tools:visibility="visible" />
|
||||||
|
|
||||||
<androidx.swiperefreshlayout.widget.SwipeRefreshLayout
|
<androidx.swiperefreshlayout.widget.SwipeRefreshLayout
|
||||||
android:id="@+id/recents_swipe_refresh"
|
android:id="@+id/recents_swipe_refresh"
|
||||||
@ -34,5 +36,6 @@
|
|||||||
android:paddingTop="@dimen/medium_margin"
|
android:paddingTop="@dimen/medium_margin"
|
||||||
android:scrollbars="none"
|
android:scrollbars="none"
|
||||||
app:layoutManager="com.simplemobiletools.commons.views.MyGridLayoutManager" />
|
app:layoutManager="com.simplemobiletools.commons.views.MyGridLayoutManager" />
|
||||||
|
|
||||||
</androidx.swiperefreshlayout.widget.SwipeRefreshLayout>
|
</androidx.swiperefreshlayout.widget.SwipeRefreshLayout>
|
||||||
</com.simplemobiletools.filemanager.pro.fragments.RecentsFragment>
|
</com.simplemobiletools.filemanager.pro.fragments.RecentsFragment>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user