Skip to content

Commit d519d5f

Browse files
committed
Polish
1 parent 3cf14aa commit d519d5f

File tree

7 files changed

+52
-33
lines changed

7 files changed

+52
-33
lines changed

app/src/main/java/com/autocrop/activities/IntentExtraIdentifier.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ object IntentExtraIdentifier {
66

77
val N_SAVED_CROPS_WITH_N_DELETED_SCREENSHOTS = intentExtraIdentifier("n_saved_crops")
88
val CROP_WRITE_DIR_PATH = intentExtraIdentifier("crop_write_dir_path")
9-
val CROP_WRITE_URIS = intentExtraIdentifier("crop_write_uris")
9+
val CROP_SAVING_URIS = intentExtraIdentifier("crop_saving_uris")
1010

1111
private fun intentExtraIdentifier(name: String): String = "com.autocrop.$name"
1212
}

app/src/main/java/com/autocrop/activities/examination/ExaminationActivity.kt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -106,10 +106,10 @@ class ExaminationActivity :
106106
IntentExtraIdentifier.CROP_WRITE_DIR_PATH,
107107
sharedViewModel.cropWriteDirIdentifier()
108108
)
109-
if (sharedViewModel.cropWriteUris.isNotEmpty())
109+
if (sharedViewModel.cropSavingUris.isNotEmpty())
110110
putParcelableArrayListExtra(
111-
IntentExtraIdentifier.CROP_WRITE_URIS,
112-
ArrayList(sharedViewModel.cropWriteUris)
111+
IntentExtraIdentifier.CROP_SAVING_URIS,
112+
ArrayList(sharedViewModel.cropSavingUris)
113113
)
114114
}
115115
)

app/src/main/java/com/autocrop/activities/examination/ExaminationActivityViewModel.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ class ExaminationActivityViewModel(private val validSaveDirDocumentUri: Uri?)
2222
get() = _nDeletedScreenshots
2323
private var _nDeletedScreenshots = 0
2424

25-
val cropWriteUris = mutableListOf<Uri>()
25+
val cropSavingUris = mutableListOf<Uri>()
2626

2727
fun processCropBundle(cropBundlesPosition: Int, deleteScreenshot: Boolean, context: Context){
2828
val (savingResult, deletionResult) = context.processCropBundle(
@@ -32,7 +32,7 @@ class ExaminationActivityViewModel(private val validSaveDirDocumentUri: Uri?)
3232
)
3333
with(savingResult){
3434
if (first)
35-
cropWriteUris.add(second)
35+
cropSavingUris.add(second)
3636
}
3737
deletionResult?.second?.let {
3838
deletionQueryScreenshotUris.add(it)
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
package com.autocrop.activities.main.fragments.flowfield
2+
3+
import android.app.Activity
4+
import android.content.Context
5+
import android.content.Intent
6+
import android.net.Uri
7+
import android.util.AttributeSet
8+
import androidx.appcompat.widget.AppCompatImageButton
9+
import com.autocrop.activities.IntentExtraIdentifier
10+
import com.autocrop.uielements.view.show
11+
import com.autocrop.utils.android.MimeTypes
12+
13+
class CropSharingButton(context: Context, attrs: AttributeSet)
14+
: AppCompatImageButton(context, attrs){
15+
16+
init {
17+
(context as Activity).intent.extras?.getParcelableArrayList<Uri>(IntentExtraIdentifier.CROP_SAVING_URIS)?.let {
18+
show()
19+
setCropSharingButtonOnClickListener(it)
20+
}
21+
}
22+
23+
/**
24+
* [show] and setOnClickListener
25+
*/
26+
private fun setCropSharingButtonOnClickListener(cropWriteUris: ArrayList<Uri>) =
27+
setOnClickListener {
28+
context.startActivity(
29+
Intent.createChooser(
30+
Intent().apply {
31+
action = Intent.ACTION_SEND_MULTIPLE
32+
putParcelableArrayListExtra(Intent.EXTRA_STREAM, cropWriteUris)
33+
type = MimeTypes.IMAGE
34+
},
35+
null
36+
)
37+
)
38+
}
39+
}

app/src/main/java/com/autocrop/activities/main/fragments/flowfield/FlowFieldFragment.kt

Lines changed: 5 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@ import com.autocrop.activities.cropping.CroppingActivity
1515
import com.autocrop.activities.main.fragments.MainActivityFragment
1616
import com.autocrop.global.CropFileSaveDestinationPreferences
1717
import com.autocrop.uicontroller.fragment.ActivityRootFragment
18-
import com.autocrop.uielements.view.show
1918
import com.autocrop.utils.android.*
2019
import com.autocrop.utils.numericallyInflected
2120
import com.w2sv.autocrop.R
@@ -42,35 +41,17 @@ class FlowFieldFragment:
4241
setMenuInflationButtonOnClickListener()
4342
flowFieldBinding.setCaptureButton(binding.flowfieldCaptureButton, permissionsHandler)
4443

45-
requireActivity().intent.extras?.getParcelableArrayList<Uri>(IntentExtraIdentifier.CROP_WRITE_URIS)?.let {
46-
setCropSharingButton(it)
47-
}
48-
49-
// display CropIOResultSnackbar
44+
// display CropIOResultSnackbar upon activity entry
5045
if (savedInstanceState == null)
5146
displayActivityEntrySnackbar()
5247
}
5348

54-
private fun setCropSharingButton(cropWriteUris: ArrayList<Uri>){
55-
with(binding.cropSharingButton){
56-
show()
57-
setOnClickListener {
58-
startActivity(
59-
Intent.createChooser(Intent().apply {
60-
action = Intent.ACTION_SEND_MULTIPLE
61-
putParcelableArrayListExtra(Intent.EXTRA_STREAM, cropWriteUris)
62-
type = MimeTypes.IMAGE
63-
},
64-
"Share crops"
65-
)
66-
)
67-
}
68-
}
69-
}
70-
7149
private val nSavedCropsRetriever = IntentExtraRetriever<IntArray>(IntentExtraIdentifier.N_SAVED_CROPS_WITH_N_DELETED_SCREENSHOTS)
7250
private val cropWriteDirPathRetriever = IntentExtraRetriever<String>(IntentExtraIdentifier.CROP_WRITE_DIR_PATH)
7351

52+
/**
53+
* Notifies as to IO results from previous ExaminationActivity cycle
54+
*/
7455
override fun displayActivityEntrySnackbar(){
7556
nSavedCropsRetriever(requireActivity().intent)?.let {
7657
val (nSavedCrops, nDeletedScreenshots) = it[0] to it[1]
@@ -95,9 +76,8 @@ class FlowFieldFragment:
9576
// Menu-related $
9677
//$$$$$$$$$$$$$$$
9778

98-
private fun setMenuInflationButtonOnClickListener() {
79+
private fun setMenuInflationButtonOnClickListener() =
9980
binding.menuButton.setOnClickListener { popupMenu.show() }
100-
}
10181

10282
private val popupMenu: FlowFieldFragmentMenu by lazy {
10383
FlowFieldFragmentMenu(

app/src/main/res/layout/activity_examination_fragment_viewpager.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -129,7 +129,7 @@
129129

130130
android:layout_alignParentBottom="true"
131131

132-
android:layout_marginBottom="90dp"
132+
android:layout_marginBottom="70dp"
133133
android:layout_marginHorizontal="30dp"
134134

135135
android:textSize="13sp"

app/src/main/res/layout/activity_main_fragment_flowfield.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@
5050

5151
<!-- Crop Sharing -->
5252

53-
<ImageButton
53+
<com.autocrop.activities.main.fragments.flowfield.CropSharingButton
5454
android:id="@+id/crop_sharing_button"
5555
android:layout_width="35dp"
5656
android:layout_height="35dp"

0 commit comments

Comments
 (0)