Fix encode message showing when it shouldn't
This commit is contained in:
parent
eb014290ff
commit
8268e9e8b5
|
@ -1,7 +1,6 @@
|
||||||
package org.pixeldroid.app.postCreation
|
package org.pixeldroid.app.postCreation
|
||||||
|
|
||||||
import android.os.*
|
import android.os.*
|
||||||
import androidx.core.view.WindowCompat
|
|
||||||
import androidx.navigation.NavController
|
import androidx.navigation.NavController
|
||||||
import androidx.navigation.fragment.NavHostFragment
|
import androidx.navigation.fragment.NavHostFragment
|
||||||
import org.pixeldroid.app.R
|
import org.pixeldroid.app.R
|
||||||
|
|
|
@ -92,6 +92,7 @@ class PostCreationFragment : BaseFragment() {
|
||||||
|
|
||||||
if(model.storyCreation){
|
if(model.storyCreation){
|
||||||
binding.carousel.showCaption = false
|
binding.carousel.showCaption = false
|
||||||
|
//TODO hide grid button, hide dot (indicator), hide arrows, limit photos to 1
|
||||||
}
|
}
|
||||||
|
|
||||||
model.getPhotoData().observe(viewLifecycleOwner) { newPhotoData ->
|
model.getPhotoData().observe(viewLifecycleOwner) { newPhotoData ->
|
||||||
|
@ -281,14 +282,16 @@ class PostCreationFragment : BaseFragment() {
|
||||||
|
|
||||||
|
|
||||||
private fun validatePost(): Boolean {
|
private fun validatePost(): Boolean {
|
||||||
if (model.getPhotoData().value?.all { !it.video || it.videoEncodeComplete } == false) {
|
if (model.getPhotoData().value?.none { it.video && it.videoEncodeComplete == false } == true) {
|
||||||
MaterialAlertDialogBuilder(requireActivity()).apply {
|
// Encoding is done, i.e. none of the items are both a video and not done encoding
|
||||||
setMessage(R.string.still_encoding)
|
return true
|
||||||
setNegativeButton(android.R.string.ok) { _, _ -> }
|
|
||||||
}.show()
|
|
||||||
return false
|
|
||||||
}
|
}
|
||||||
return true
|
// Encoding is not done, show a dialog and return false to indicate validation failed
|
||||||
|
MaterialAlertDialogBuilder(requireActivity()).apply {
|
||||||
|
setMessage(R.string.still_encoding)
|
||||||
|
setNegativeButton(android.R.string.ok) { _, _ -> }
|
||||||
|
}.show()
|
||||||
|
return false
|
||||||
}
|
}
|
||||||
|
|
||||||
private val editResultContract: ActivityResultLauncher<Intent> = registerForActivityResult(
|
private val editResultContract: ActivityResultLauncher<Intent> = registerForActivityResult(
|
||||||
|
|
|
@ -99,7 +99,7 @@ data class PhotoData(
|
||||||
var video: Boolean,
|
var video: Boolean,
|
||||||
var videoEncodeProgress: Int? = null,
|
var videoEncodeProgress: Int? = null,
|
||||||
var videoEncodeStabilizationFirstPass: Boolean? = null,
|
var videoEncodeStabilizationFirstPass: Boolean? = null,
|
||||||
var videoEncodeComplete: Boolean = true,
|
var videoEncodeComplete: Boolean? = null,
|
||||||
var videoEncodeError: Boolean = false,
|
var videoEncodeError: Boolean = false,
|
||||||
) : Parcelable
|
) : Parcelable
|
||||||
|
|
||||||
|
|
|
@ -8,6 +8,6 @@ data class CarouselItem constructor(
|
||||||
val video: Boolean,
|
val video: Boolean,
|
||||||
var encodeProgress: Int?,
|
var encodeProgress: Int?,
|
||||||
var stabilizationFirstPass: Boolean?,
|
var stabilizationFirstPass: Boolean?,
|
||||||
var encodeComplete: Boolean = false,
|
var encodeComplete: Boolean? = null,
|
||||||
var encodeError: Boolean = false,
|
var encodeError: Boolean = false,
|
||||||
)
|
)
|
|
@ -102,7 +102,6 @@ class ImageCarousel(
|
||||||
* ****************************************************************
|
* ****************************************************************
|
||||||
*/
|
*/
|
||||||
|
|
||||||
//FIXME this is modified a bunch of times all over the place, so it can't be set to false and stay there
|
|
||||||
var showCaption = false
|
var showCaption = false
|
||||||
set(value) {
|
set(value) {
|
||||||
field = value
|
field = value
|
||||||
|
@ -245,14 +244,14 @@ class ImageCarousel(
|
||||||
showNavigationButtons = showNavigationButtons
|
showNavigationButtons = showNavigationButtons
|
||||||
|
|
||||||
binding.editMediaDescriptionLayout.visibility = if(editingMediaDescription) VISIBLE else INVISIBLE
|
binding.editMediaDescriptionLayout.visibility = if(editingMediaDescription) VISIBLE else INVISIBLE
|
||||||
showCaption = !editingMediaDescription
|
binding.tvCaption.visibility = if(editingMediaDescription || !showCaption) INVISIBLE else VISIBLE
|
||||||
} else {
|
} else {
|
||||||
recyclerView.layoutManager = GridLayoutManager(context, 3)
|
recyclerView.layoutManager = GridLayoutManager(context, 3)
|
||||||
binding.btnNext.visibility = GONE
|
binding.btnNext.visibility = GONE
|
||||||
binding.btnPrevious.visibility = GONE
|
binding.btnPrevious.visibility = GONE
|
||||||
|
|
||||||
binding.editMediaDescriptionLayout.visibility = INVISIBLE
|
binding.editMediaDescriptionLayout.visibility = INVISIBLE
|
||||||
showCaption = false
|
binding.tvCaption.visibility = INVISIBLE
|
||||||
}
|
}
|
||||||
showIndicator = value
|
showIndicator = value
|
||||||
|
|
||||||
|
@ -279,8 +278,7 @@ class ImageCarousel(
|
||||||
updateDescriptionCallback?.invoke(currentPosition, description)
|
updateDescriptionCallback?.invoke(currentPosition, description)
|
||||||
}
|
}
|
||||||
binding.editMediaDescriptionLayout.visibility = if(value) VISIBLE else INVISIBLE
|
binding.editMediaDescriptionLayout.visibility = if(value) VISIBLE else INVISIBLE
|
||||||
showCaption = !value
|
binding.tvCaption.visibility = if(value || !showCaption) INVISIBLE else VISIBLE
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -561,7 +559,7 @@ class ImageCarousel(
|
||||||
binding.encodeInfoText.setText(R.string.encode_error)
|
binding.encodeInfoText.setText(R.string.encode_error)
|
||||||
binding.encodeInfoText.setCompoundDrawablesWithIntrinsicBounds(ContextCompat.getDrawable(context, R.drawable.error),
|
binding.encodeInfoText.setCompoundDrawablesWithIntrinsicBounds(ContextCompat.getDrawable(context, R.drawable.error),
|
||||||
null, null, null)
|
null, null, null)
|
||||||
} else if(it.encodeComplete){
|
} else if(it.encodeComplete == true){
|
||||||
binding.encodeInfoCard.visibility = VISIBLE
|
binding.encodeInfoCard.visibility = VISIBLE
|
||||||
binding.encodeProgress.visibility = GONE
|
binding.encodeProgress.visibility = GONE
|
||||||
binding.encodeInfoText.setText(R.string.encode_success)
|
binding.encodeInfoText.setText(R.string.encode_success)
|
||||||
|
|
|
@ -11,7 +11,7 @@
|
||||||
android:id="@+id/carousel"
|
android:id="@+id/carousel"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="0dp"
|
android:layout_height="0dp"
|
||||||
app:showCaption="false"
|
app:showCaption="true"
|
||||||
app:layout_constraintBottom_toTopOf="@+id/buttonConstraints"
|
app:layout_constraintBottom_toTopOf="@+id/buttonConstraints"
|
||||||
app:layout_constraintTop_toTopOf="parent"/>
|
app:layout_constraintTop_toTopOf="parent"/>
|
||||||
|
|
||||||
|
|
|
@ -7,7 +7,7 @@ buildscript {
|
||||||
mavenCentral()
|
mavenCentral()
|
||||||
}
|
}
|
||||||
dependencies {
|
dependencies {
|
||||||
classpath 'com.android.tools.build:gradle:8.1.0'
|
classpath 'com.android.tools.build:gradle:8.1.2'
|
||||||
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
|
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
|
||||||
|
|
||||||
// NOTE: Do not place your application dependencies here; they belong
|
// NOTE: Do not place your application dependencies here; they belong
|
||||||
|
|
Loading…
Reference in New Issue