mirror of
https://github.com/signalapp/Signal-Android.git
synced 2025-12-24 21:15:48 +00:00
Minor poll UI fixes.
This commit is contained in:
@@ -790,6 +790,7 @@ public final class ConversationUpdateItem extends FrameLayout
|
||||
handler.post(timerUpdateRunnable);
|
||||
} else {
|
||||
latestFrame = 0;
|
||||
updateBodyWithTimer();
|
||||
handler.removeCallbacks(timerUpdateRunnable);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,6 +4,7 @@ import android.app.Dialog
|
||||
import android.os.Bundle
|
||||
import android.view.WindowManager
|
||||
import androidx.compose.animation.AnimatedVisibility
|
||||
import androidx.compose.foundation.gestures.animateScrollBy
|
||||
import androidx.compose.foundation.layout.Box
|
||||
import androidx.compose.foundation.layout.PaddingValues
|
||||
import androidx.compose.foundation.layout.Spacer
|
||||
@@ -30,6 +31,7 @@ import androidx.compose.runtime.getValue
|
||||
import androidx.compose.runtime.mutableStateListOf
|
||||
import androidx.compose.runtime.mutableStateOf
|
||||
import androidx.compose.runtime.remember
|
||||
import androidx.compose.runtime.rememberCoroutineScope
|
||||
import androidx.compose.runtime.setValue
|
||||
import androidx.compose.runtime.snapshotFlow
|
||||
import androidx.compose.ui.Alignment
|
||||
@@ -40,6 +42,7 @@ import androidx.compose.ui.focus.onFocusChanged
|
||||
import androidx.compose.ui.graphics.vector.ImageVector
|
||||
import androidx.compose.ui.platform.LocalConfiguration
|
||||
import androidx.compose.ui.platform.LocalContext
|
||||
import androidx.compose.ui.platform.LocalDensity
|
||||
import androidx.compose.ui.res.stringResource
|
||||
import androidx.compose.ui.res.vectorResource
|
||||
import androidx.compose.ui.text.input.KeyboardCapitalization
|
||||
@@ -49,6 +52,7 @@ import androidx.fragment.app.setFragmentResult
|
||||
import com.google.android.material.snackbar.Snackbar
|
||||
import kotlinx.coroutines.FlowPreview
|
||||
import kotlinx.coroutines.flow.debounce
|
||||
import kotlinx.coroutines.launch
|
||||
import org.signal.core.ui.compose.Buttons
|
||||
import org.signal.core.ui.compose.DayNightPreviews
|
||||
import org.signal.core.ui.compose.Dividers
|
||||
@@ -134,6 +138,8 @@ private fun CreatePollScreen(
|
||||
onSend: (String, Boolean, List<String>) -> Unit = { _, _, _ -> },
|
||||
onShowErrorSnackbar: (Boolean, Boolean) -> Unit = { _, _ -> }
|
||||
) {
|
||||
val coroutineScope = rememberCoroutineScope()
|
||||
val density = LocalDensity.current
|
||||
val focusRequester = remember { FocusRequester() }
|
||||
|
||||
// Parts of poll
|
||||
@@ -167,6 +173,10 @@ private fun CreatePollScreen(
|
||||
val count = currentOptions.count { it.isNotBlank() }
|
||||
if (count == currentOptions.size && currentOptions.size < CreatePollFragment.MAX_OPTIONS) {
|
||||
options.add("")
|
||||
coroutineScope.launch {
|
||||
val offset = with(density) { 48.dp.toPx() }
|
||||
listState.animateScrollBy(offset)
|
||||
}
|
||||
}
|
||||
hasMinimumOptions = count >= CreatePollFragment.MIN_OPTIONS
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user