Skip to content

Commit

Permalink
- set result code as Activity.Cancel when imageAdapter is null
Browse files Browse the repository at this point in the history
- add finishActivity in AlubumContract to finish AlbumActivity with passed code
  • Loading branch information
Moroi committed Nov 11, 2022
1 parent 86fedd5 commit 03adf09
Show file tree
Hide file tree
Showing 9 changed files with 26 additions and 16 deletions.
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
package com.sangcomz.fishbun.ui.album

import android.app.Activity
import android.net.Uri
import com.sangcomz.fishbun.adapter.image.ImageAdapter
import com.sangcomz.fishbun.ui.album.model.Album
Expand All @@ -20,6 +21,7 @@ interface AlbumContract {
fun setToolBar(albumViewData: AlbumViewData)
fun changeToolbarTitle(selectedImageCount: Int, albumViewData: AlbumViewData)
fun finishActivityWithResult(selectedImages: List<Uri>)
fun finishActivity(code: Int = Activity.RESULT_OK)
fun refreshAlbumItem(position: Int, imagePath: ArrayList<Uri>)
fun scanAndRefresh()
fun showNothingSelectedMessage(nothingSelectedMessage: String)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
package com.sangcomz.fishbun.ui.album.mvp

import android.app.Activity
import android.net.Uri
import com.sangcomz.fishbun.ui.album.AlbumContract
import com.sangcomz.fishbun.ui.album.model.Album
Expand Down Expand Up @@ -99,7 +100,7 @@ class AlbumPresenter(
val adapter = albumRepository.getImageAdapter()
// imageAdapter is null, so we can not proceed anymore
if (adapter == null) {
finish()
albumView.finishActivity(Activity.RESULT_CANCELED)
return
}
uiHandler.run {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,21 +25,20 @@ import com.sangcomz.fishbun.R
import com.sangcomz.fishbun.adapter.image.ImageAdapter
import com.sangcomz.fishbun.datasource.CameraDataSourceImpl
import com.sangcomz.fishbun.datasource.FishBunDataSourceImpl
import com.sangcomz.fishbun.ui.album.model.Album
import com.sangcomz.fishbun.ui.album.model.repository.AlbumRepositoryImpl
import com.sangcomz.fishbun.datasource.ImageDataSourceImpl
import com.sangcomz.fishbun.ui.album.AlbumContract
import com.sangcomz.fishbun.ui.album.mvp.AlbumPresenter
import com.sangcomz.fishbun.ui.album.adapter.AlbumListAdapter
import com.sangcomz.fishbun.ui.album.listener.AlbumClickListener
import com.sangcomz.fishbun.ui.album.model.Album
import com.sangcomz.fishbun.ui.album.model.AlbumViewData
import com.sangcomz.fishbun.ui.album.model.repository.AlbumRepositoryImpl
import com.sangcomz.fishbun.ui.album.mvp.AlbumPresenter
import com.sangcomz.fishbun.ui.picker.PickerActivity
import com.sangcomz.fishbun.util.MainUiHandler
import com.sangcomz.fishbun.util.SingleMediaScanner
import com.sangcomz.fishbun.util.isLandscape
import com.sangcomz.fishbun.util.setStatusBarColor
import java.io.File
import kotlin.collections.ArrayList

class AlbumActivity : BaseActivity(),
AlbumContract.View, AlbumClickListener {
Expand Down Expand Up @@ -289,6 +288,11 @@ class AlbumActivity : BaseActivity(),
finish()
}

override fun finishActivity(code: Int) {
setResult(code, Intent())
finish()
}

private fun checkPermission(): Boolean {
return permissionCheck.checkStoragePermission(PERMISSION_STORAGE)
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package com.sangcomz.fishbun.ui.detail

import android.app.Activity
import android.net.Uri
import android.os.Message
import com.sangcomz.fishbun.adapter.image.ImageAdapter
import com.sangcomz.fishbun.ui.detail.model.DetailImageViewData

Expand All @@ -16,7 +16,7 @@ interface DetailImageContract {
fun unselectImage()
fun updateRadioButtonWithText(text: String)
fun updateRadioButtonWithDrawable()
fun finishActivity()
fun finishActivity(code: Int = Activity.RESULT_OK)
fun finishAndShowErrorToast()
fun initViewPagerAdapter(imageAdapter: ImageAdapter)
fun showImages(initPosition: Int, pickerImages: List<Uri>)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
package com.sangcomz.fishbun.ui.detail.mvp

import android.app.Activity
import android.net.Uri
import com.sangcomz.fishbun.ui.detail.DetailImageContract
import com.sangcomz.fishbun.ui.detail.model.DetailImageRepository
Expand Down Expand Up @@ -68,7 +69,7 @@ class DetailImagePresenter(
val adapter = detailImageRepository.getImageAdapter()
// we can not proceed any more if imageAdapter is null
if (adapter == null) {
detailView.finishActivity()
detailView.finishActivity(Activity.RESULT_CANCELED)
return
}
detailView.initViewPagerAdapter(adapter)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,13 +1,11 @@
package com.sangcomz.fishbun.ui.detail.ui

import android.app.Activity
import android.content.Context
import android.content.Intent
import android.graphics.Color
import android.net.Uri
import android.os.Build
import android.os.Bundle
import android.view.View
import android.view.Window
import android.widget.ImageButton
import android.widget.Toast
Expand Down Expand Up @@ -86,9 +84,9 @@ class DetailImageActivity : BaseActivity(), DetailImageContract.View, OnPageChan
presenter.changeButtonStatus(position)
}

override fun finishActivity() {
override fun finishActivity(code: Int) {
val i = Intent()
setResult(Activity.RESULT_OK, i)
setResult(code, i)
finish()
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -371,9 +371,9 @@ class PickerActivity : BaseActivity(),
return false
}

override fun finishActivity() {
override fun finishActivity(code: Int) {
val i = Intent()
setResult(Activity.RESULT_OK, i)
setResult(code, i)
finish()
}

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
package com.sangcomz.fishbun.ui.picker

import android.app.Activity
import android.net.Uri
import com.sangcomz.fishbun.adapter.image.ImageAdapter
import com.sangcomz.fishbun.ui.picker.model.PickerListItem
Expand All @@ -13,20 +14,22 @@ interface PickerContract {
adapter: ImageAdapter,
hasCameraInPickerPage: Boolean
)

fun takePicture(saveDir: String)
fun setToolbarTitle(
pickerViewData: PickerViewData,
selectedCount: Int,
albumName: String
)

fun initToolBar(pickerViewData: PickerViewData)
fun initRecyclerView(pickerViewData: PickerViewData)
fun showLimitReachedMessage(messageLimitReached: String)
fun showMinimumImageMessage(currentSelectedCount: Int)
fun showNothingSelectedMessage(messageNotingSelected: String)
fun onCheckStateChange(position: Int, image: PickerListItem.Image)
fun showDetailView(position: Int)
fun finishActivity()
fun finishActivity(code: Int = Activity.RESULT_OK)
fun finishActivityWithResult(selectedImages: List<Uri>)
fun takeANewPictureWithFinish(position: Int, addedImageList: List<Uri>)
fun addImage(pickerListImage: PickerListItem.Image)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
package com.sangcomz.fishbun.ui.picker

import android.app.Activity
import android.net.Uri
import com.sangcomz.fishbun.ui.picker.model.PickerListItem
import com.sangcomz.fishbun.ui.picker.model.PickerMenuViewData
Expand Down Expand Up @@ -272,7 +273,7 @@ class PickerPresenter internal constructor(
onSuccessAllMediaThumbnailsPath(result)
} else {
// imageAdapter is null, so we can not proceed anymore
finish()
pickerView.finishActivity(Activity.RESULT_CANCELED)
}
}
}

0 comments on commit 03adf09

Please sign in to comment.