Skip to content

Commit

Permalink
Replace kotlin extension with view bindings in UploadInProgressFragment
Browse files Browse the repository at this point in the history
  • Loading branch information
LunarX committed Oct 23, 2023
1 parent 651c2c2 commit 289b0ba
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 12 deletions.
5 changes: 5 additions & 0 deletions app/src/main/java/com/infomaniak/drive/ui/MainActivity.kt
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,7 @@ import androidx.navigation.fragment.NavHostFragment
import coil.request.ImageRequest
import coil.transform.CircleCropTransformation
import com.google.android.material.bottomnavigation.BottomNavigationMenuView
import com.google.android.material.floatingactionbutton.FloatingActionButton
import com.google.android.material.navigation.NavigationBarItemView
import com.infomaniak.drive.BuildConfig
import com.infomaniak.drive.MatomoDrive.trackScreen
Expand Down Expand Up @@ -447,6 +448,10 @@ class MainActivity : BaseActivity() {
return bitmap
}

fun getMainFab(): FloatingActionButton? {
return mainFab
}

companion object {
private const val SYNCED_FILES_DELETION_FILES_AMOUNT = 10
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@ import com.infomaniak.drive.data.models.UserDrive
import com.infomaniak.drive.data.services.UploadWorker
import com.infomaniak.drive.data.services.UploadWorker.Companion.trackUploadWorkerProgress
import com.infomaniak.drive.data.services.UploadWorker.Companion.trackUploadWorkerSucceeded
import com.infomaniak.drive.ui.MainActivity
import com.infomaniak.drive.utils.AccountUtils
import com.infomaniak.drive.utils.DrivePermissions
import com.infomaniak.drive.utils.SyncUtils.syncImmediately
Expand All @@ -41,8 +42,6 @@ import com.infomaniak.drive.utils.navigateToUploadView
import com.infomaniak.lib.core.utils.SentryLog
import com.infomaniak.lib.core.utils.SnackbarUtils.showSnackbar
import io.realm.RealmResults
import kotlinx.android.synthetic.main.activity_main.mainFab
import kotlinx.android.synthetic.main.fragment_file_list.*
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch
import kotlinx.coroutines.withContext
Expand Down Expand Up @@ -80,16 +79,16 @@ class UploadInProgressFragment : FileListFragment() {
if (isPendingFolders()) {
fileAdapter.onFileClicked = { navigateToUploadView(it.id, it.name) }
} else {
toolbar.setNavigationOnClickListener { popBackStack() }
binding.toolbar.setNavigationOnClickListener { popBackStack() }
requireActivity().onBackPressedDispatcher.addCallback(viewLifecycleOwner) { popBackStack() }
}

sortLayout.isGone = true
binding.sortLayout.isGone = true
}

private fun setupCollapsingToolbarLayout() {
val fromPendingFolders = findNavController().previousBackStackEntry?.destination?.id == R.id.uploadInProgressFragment
collapsingToolbarLayout.title = if (folderId > 0 && fromPendingFolders) {
binding.collapsingToolbarLayout.title = if (folderId > 0 && fromPendingFolders) {
folderName
} else {
getString(R.string.uploadInProgressTitle)
Expand Down Expand Up @@ -167,7 +166,7 @@ class UploadInProgressFragment : FileListFragment() {
}

if (fileAdapter.fileList.isEmpty()) {
if (isResumed) noFilesLayout?.toggleVisibility(true)
if (isResumed) binding.noFilesLayout.toggleVisibility(true)
activity?.showSnackbar(R.string.allUploadFinishedTitle)
popBackStack()
}
Expand Down Expand Up @@ -206,7 +205,7 @@ class UploadInProgressFragment : FileListFragment() {
if (isPendingFolders()) UploadFile.deleteAll(null)
else UploadFile.deleteAll(folderId = it)

fileRecyclerView?.post {
binding.fileRecyclerView.post {
fileAdapter.setFiles(listOf())
}

Expand Down Expand Up @@ -261,10 +260,10 @@ class UploadInProgressFragment : FileListFragment() {
private fun downloadPendingFolders() {
UploadFile.getAllPendingFolders(uploadInProgressViewModel.realmUpload)?.let { pendingFolders ->
if (pendingFolders.count() == 1) navigateToFirstFolder(pendingFolders) else showPendingFolders()
} ?: noFilesLayout.toggleVisibility(true)
} ?: binding.noFilesLayout.toggleVisibility(true)
}

private fun navigateToFirstFolder(pendingFolders: RealmResults<UploadFile>) {
private fun navigateToFirstFolder(pendingFolders: RealmResults<UploadFile>) = with(binding) {
val uploadFile = pendingFolders.first()!!
val isSharedWithMe = AccountUtils.currentDriveId != uploadFile.driveId
val userDrive = UserDrive(driveId = uploadFile.driveId, sharedWithMe = isSharedWithMe)
Expand All @@ -276,12 +275,15 @@ class UploadInProgressFragment : FileListFragment() {
navigateToUploadView(uploadFile.remoteFolder, folder.name)
} ?: run {
popBackStack()
requireActivity().showSnackbar(R.string.uploadFolderNotFoundError, requireActivity().mainFab)
requireActivity().showSnackbar(
R.string.uploadFolderNotFoundError,
(requireActivity() as MainActivity).getMainFab()
)
}
}
}

private fun showPendingFolders() {
private fun showPendingFolders() = with(binding) {
swipeRefreshLayout.isRefreshing = true
uploadInProgressViewModel.getPendingFolders().observe(viewLifecycleOwner) {
it?.let { uploadFolders ->
Expand All @@ -296,7 +298,7 @@ class UploadInProgressFragment : FileListFragment() {
}
}

private fun downloadPendingFilesByFolderId() {
private fun downloadPendingFilesByFolderId() = with(binding) {
swipeRefreshLayout.isRefreshing = true
uploadInProgressViewModel.getPendingFiles(folderId).observe(viewLifecycleOwner) {
it?.let { (files, uploadFiles) ->
Expand Down

0 comments on commit 289b0ba

Please sign in to comment.