mirror of
https://github.com/bitfireAT/davx5-ose
synced 2024-10-03 01:44:16 +00:00
Orange progress indicator bar (#803)
* Create ProgressBar composable with secondary default color * Minor change * Add import --------- Co-authored-by: Ricki Hirner <hirner@bitfire.at>
This commit is contained in:
parent
71c57fc00d
commit
c493fbd349
|
@ -35,7 +35,6 @@ import androidx.compose.material3.ExtendedFloatingActionButton
|
|||
import androidx.compose.material3.FloatingActionButton
|
||||
import androidx.compose.material3.Icon
|
||||
import androidx.compose.material3.IconToggleButton
|
||||
import androidx.compose.material3.LinearProgressIndicator
|
||||
import androidx.compose.material3.MaterialTheme
|
||||
import androidx.compose.material3.ModalDrawerSheet
|
||||
import androidx.compose.material3.ModalNavigationDrawer
|
||||
|
@ -56,7 +55,6 @@ import androidx.compose.runtime.rememberCoroutineScope
|
|||
import androidx.compose.ui.Alignment
|
||||
import androidx.compose.ui.Modifier
|
||||
import androidx.compose.ui.draw.alpha
|
||||
import androidx.compose.ui.graphics.RectangleShape
|
||||
import androidx.compose.ui.input.nestedscroll.nestedScroll
|
||||
import androidx.compose.ui.platform.LocalContext
|
||||
import androidx.compose.ui.platform.LocalInspectionMode
|
||||
|
@ -71,6 +69,7 @@ import at.bitfire.davdroid.BuildConfig
|
|||
import at.bitfire.davdroid.R
|
||||
import at.bitfire.davdroid.ui.account.AccountProgress
|
||||
import at.bitfire.davdroid.ui.composable.ActionCard
|
||||
import at.bitfire.davdroid.ui.composable.ProgressBar
|
||||
import com.google.accompanist.permissions.ExperimentalPermissionsApi
|
||||
import com.google.accompanist.permissions.isGranted
|
||||
import com.google.accompanist.permissions.rememberPermissionState
|
||||
|
@ -374,15 +373,15 @@ fun AccountList(
|
|||
val progressAlpha = progress.rememberAlpha()
|
||||
when (progress) {
|
||||
AccountProgress.Active ->
|
||||
LinearProgressIndicator(
|
||||
ProgressBar(
|
||||
modifier = Modifier
|
||||
.alpha(progressAlpha)
|
||||
.fillMaxWidth()
|
||||
)
|
||||
AccountProgress.Pending,
|
||||
AccountProgress.Idle ->
|
||||
LinearProgressIndicator(
|
||||
progress = 1f,
|
||||
ProgressBar(
|
||||
progress = { 1f },
|
||||
modifier = Modifier
|
||||
.alpha(progressAlpha)
|
||||
.fillMaxWidth()
|
||||
|
|
|
@ -18,7 +18,6 @@ import androidx.compose.material3.ExperimentalMaterial3Api
|
|||
import androidx.compose.material3.FloatingActionButton
|
||||
import androidx.compose.material3.Icon
|
||||
import androidx.compose.material3.IconButton
|
||||
import androidx.compose.material3.LinearProgressIndicator
|
||||
import androidx.compose.material3.MaterialTheme
|
||||
import androidx.compose.material3.OutlinedButton
|
||||
import androidx.compose.material3.Scaffold
|
||||
|
@ -42,6 +41,7 @@ import at.bitfire.dav4jvm.exception.DavException
|
|||
import at.bitfire.dav4jvm.exception.HttpException
|
||||
import at.bitfire.davdroid.R
|
||||
import at.bitfire.davdroid.ui.composable.CardWithImage
|
||||
import at.bitfire.davdroid.ui.composable.ProgressBar
|
||||
import java.io.File
|
||||
import java.io.IOError
|
||||
import java.io.IOException
|
||||
|
@ -185,7 +185,7 @@ fun DebugInfoScreen(
|
|||
.verticalScroll(rememberScrollState())
|
||||
) {
|
||||
if (!showDebugInfo || zipProgress)
|
||||
LinearProgressIndicator()
|
||||
ProgressBar()
|
||||
|
||||
if (showModelCause) {
|
||||
CardWithImage(
|
||||
|
|
|
@ -29,7 +29,6 @@ import androidx.compose.material3.ExperimentalMaterial3Api
|
|||
import androidx.compose.material3.ExtendedFloatingActionButton
|
||||
import androidx.compose.material3.Icon
|
||||
import androidx.compose.material3.IconButton
|
||||
import androidx.compose.material3.LinearProgressIndicator
|
||||
import androidx.compose.material3.LocalMinimumInteractiveComponentEnforcement
|
||||
import androidx.compose.material3.MaterialTheme
|
||||
import androidx.compose.material3.OutlinedButton
|
||||
|
@ -41,7 +40,6 @@ import androidx.compose.material3.SnackbarResult
|
|||
import androidx.compose.material3.Tab
|
||||
import androidx.compose.material3.TabRow
|
||||
import androidx.compose.material3.Text
|
||||
import androidx.compose.material3.TextButton
|
||||
import androidx.compose.material3.TopAppBar
|
||||
import androidx.compose.material3.pulltorefresh.PullToRefreshContainer
|
||||
import androidx.compose.material3.pulltorefresh.rememberPullToRefreshState
|
||||
|
@ -78,6 +76,7 @@ import at.bitfire.davdroid.ui.account.AccountScreenModel
|
|||
import at.bitfire.davdroid.ui.account.CollectionsList
|
||||
import at.bitfire.davdroid.ui.account.RenameAccountDialog
|
||||
import at.bitfire.davdroid.ui.composable.ActionCard
|
||||
import at.bitfire.davdroid.ui.composable.ProgressBar
|
||||
import at.bitfire.davdroid.util.TaskUtils
|
||||
import com.google.accompanist.permissions.ExperimentalPermissionsApi
|
||||
import com.google.accompanist.permissions.rememberMultiplePermissionsState
|
||||
|
@ -601,13 +600,13 @@ fun AccountScreen_ServiceTab(
|
|||
// progress indicator
|
||||
val progressAlpha = progress.rememberAlpha()
|
||||
when (progress) {
|
||||
AccountProgress.Active -> LinearProgressIndicator(
|
||||
AccountProgress.Active -> ProgressBar(
|
||||
modifier = Modifier
|
||||
.alpha(progressAlpha)
|
||||
.fillMaxWidth()
|
||||
)
|
||||
AccountProgress.Pending,
|
||||
AccountProgress.Idle -> LinearProgressIndicator(
|
||||
AccountProgress.Idle -> ProgressBar(
|
||||
progress = { 1f },
|
||||
modifier = Modifier
|
||||
.alpha(progressAlpha)
|
||||
|
|
|
@ -29,14 +29,12 @@ import androidx.compose.material3.Button
|
|||
import androidx.compose.material3.ExperimentalMaterial3Api
|
||||
import androidx.compose.material3.Icon
|
||||
import androidx.compose.material3.IconButton
|
||||
import androidx.compose.material3.LinearProgressIndicator
|
||||
import androidx.compose.material3.MaterialTheme
|
||||
import androidx.compose.material3.MediumTopAppBar
|
||||
import androidx.compose.material3.OutlinedButton
|
||||
import androidx.compose.material3.Scaffold
|
||||
import androidx.compose.material3.Switch
|
||||
import androidx.compose.material3.Text
|
||||
import androidx.compose.material3.TextButton
|
||||
import androidx.compose.runtime.Composable
|
||||
import androidx.compose.runtime.getValue
|
||||
import androidx.compose.runtime.mutableStateOf
|
||||
|
@ -57,6 +55,7 @@ import at.bitfire.davdroid.R
|
|||
import at.bitfire.davdroid.repository.DavSyncStatsRepository
|
||||
import at.bitfire.davdroid.ui.AppTheme
|
||||
import at.bitfire.davdroid.ui.composable.ExceptionInfoDialog
|
||||
import at.bitfire.davdroid.ui.composable.ProgressBar
|
||||
import java.time.Instant
|
||||
import java.time.ZoneId
|
||||
import java.time.ZonedDateTime
|
||||
|
@ -175,7 +174,7 @@ fun CollectionScreen(
|
|||
.verticalScroll(rememberScrollState())
|
||||
) {
|
||||
if (inProgress)
|
||||
LinearProgressIndicator(
|
||||
ProgressBar(
|
||||
Modifier
|
||||
.fillMaxWidth()
|
||||
.padding(bottom = 8.dp))
|
||||
|
|
|
@ -18,7 +18,6 @@ import androidx.compose.material3.Button
|
|||
import androidx.compose.material3.ExperimentalMaterial3Api
|
||||
import androidx.compose.material3.Icon
|
||||
import androidx.compose.material3.IconButton
|
||||
import androidx.compose.material3.LinearProgressIndicator
|
||||
import androidx.compose.material3.MaterialTheme
|
||||
import androidx.compose.material3.OutlinedTextField
|
||||
import androidx.compose.material3.Scaffold
|
||||
|
@ -40,6 +39,7 @@ import at.bitfire.davdroid.R
|
|||
import at.bitfire.davdroid.db.HomeSet
|
||||
import at.bitfire.davdroid.ui.AppTheme
|
||||
import at.bitfire.davdroid.ui.composable.ExceptionInfoDialog
|
||||
import at.bitfire.davdroid.ui.composable.ProgressBar
|
||||
import okhttp3.HttpUrl.Companion.toHttpUrl
|
||||
|
||||
@Composable
|
||||
|
@ -117,7 +117,7 @@ fun CreateAddressBookScreen(
|
|||
.verticalScroll(rememberScrollState())
|
||||
) {
|
||||
if (isCreating)
|
||||
LinearProgressIndicator(
|
||||
ProgressBar(
|
||||
modifier = Modifier
|
||||
.fillMaxWidth()
|
||||
.padding(bottom = 8.dp)
|
||||
|
|
|
@ -28,7 +28,6 @@ import androidx.compose.material3.ExposedDropdownMenuBox
|
|||
import androidx.compose.material3.ExposedDropdownMenuDefaults
|
||||
import androidx.compose.material3.Icon
|
||||
import androidx.compose.material3.IconButton
|
||||
import androidx.compose.material3.LinearProgressIndicator
|
||||
import androidx.compose.material3.MaterialTheme
|
||||
import androidx.compose.material3.OutlinedTextField
|
||||
import androidx.compose.material3.Scaffold
|
||||
|
@ -58,6 +57,7 @@ import at.bitfire.davdroid.R
|
|||
import at.bitfire.davdroid.db.HomeSet
|
||||
import at.bitfire.davdroid.ui.AppTheme
|
||||
import at.bitfire.davdroid.ui.composable.ExceptionInfoDialog
|
||||
import at.bitfire.davdroid.ui.composable.ProgressBar
|
||||
import at.bitfire.davdroid.ui.widget.CalendarColorPickerDialog
|
||||
import at.bitfire.ical4android.Css3Color
|
||||
import okhttp3.HttpUrl.Companion.toHttpUrl
|
||||
|
@ -161,7 +161,7 @@ fun CreateCalendarScreen(
|
|||
.verticalScroll(rememberScrollState())
|
||||
) {
|
||||
if (isCreating)
|
||||
LinearProgressIndicator(
|
||||
ProgressBar(
|
||||
modifier = Modifier
|
||||
.fillMaxWidth()
|
||||
.padding(bottom = 8.dp)
|
||||
|
|
|
@ -0,0 +1,42 @@
|
|||
package at.bitfire.davdroid.ui.composable
|
||||
|
||||
import androidx.compose.material3.LinearProgressIndicator
|
||||
import androidx.compose.material3.MaterialTheme
|
||||
import androidx.compose.material3.ProgressIndicatorDefaults
|
||||
import androidx.compose.runtime.Composable
|
||||
import androidx.compose.ui.Modifier
|
||||
import androidx.compose.ui.graphics.Color
|
||||
import androidx.compose.ui.graphics.StrokeCap
|
||||
|
||||
|
||||
@Composable
|
||||
fun ProgressBar(
|
||||
modifier: Modifier = Modifier,
|
||||
color: Color = MaterialTheme.colorScheme.secondary,
|
||||
trackColor: Color = ProgressIndicatorDefaults.linearTrackColor,
|
||||
strokeCap: StrokeCap = ProgressIndicatorDefaults.LinearStrokeCap
|
||||
) {
|
||||
LinearProgressIndicator(
|
||||
modifier = modifier,
|
||||
color = color,
|
||||
trackColor = trackColor,
|
||||
strokeCap = strokeCap
|
||||
)
|
||||
}
|
||||
|
||||
@Composable
|
||||
fun ProgressBar(
|
||||
progress: () -> Float,
|
||||
modifier: Modifier = Modifier,
|
||||
color: Color = MaterialTheme.colorScheme.secondary,
|
||||
trackColor: Color = ProgressIndicatorDefaults.linearTrackColor,
|
||||
strokeCap: StrokeCap = ProgressIndicatorDefaults.LinearStrokeCap
|
||||
) {
|
||||
LinearProgressIndicator(
|
||||
progress = progress,
|
||||
modifier = modifier,
|
||||
color = color,
|
||||
trackColor = trackColor,
|
||||
strokeCap = strokeCap
|
||||
)
|
||||
}
|
|
@ -20,7 +20,6 @@ import androidx.compose.material3.ExperimentalMaterial3Api
|
|||
import androidx.compose.material3.ExposedDropdownMenuBox
|
||||
import androidx.compose.material3.ExposedDropdownMenuDefaults
|
||||
import androidx.compose.material3.Icon
|
||||
import androidx.compose.material3.LinearProgressIndicator
|
||||
import androidx.compose.material3.MaterialTheme
|
||||
import androidx.compose.material3.OutlinedTextField
|
||||
import androidx.compose.material3.RadioButton
|
||||
|
@ -44,6 +43,7 @@ import androidx.compose.ui.window.PopupProperties
|
|||
import androidx.lifecycle.viewmodel.compose.viewModel
|
||||
import at.bitfire.davdroid.R
|
||||
import at.bitfire.davdroid.ui.composable.Assistant
|
||||
import at.bitfire.davdroid.ui.composable.ProgressBar
|
||||
import at.bitfire.vcard4android.GroupMethod
|
||||
|
||||
@Composable
|
||||
|
@ -99,7 +99,7 @@ fun AccountDetailsPageContent(
|
|||
) {
|
||||
Column(Modifier.padding(8.dp)) {
|
||||
if (creatingAccount)
|
||||
LinearProgressIndicator(
|
||||
ProgressBar(
|
||||
Modifier
|
||||
.fillMaxWidth()
|
||||
.padding(bottom = 8.dp))
|
||||
|
|
|
@ -15,7 +15,6 @@ import androidx.compose.material.icons.filled.CloudOff
|
|||
import androidx.compose.material3.Button
|
||||
import androidx.compose.material3.Card
|
||||
import androidx.compose.material3.Icon
|
||||
import androidx.compose.material3.LinearProgressIndicator
|
||||
import androidx.compose.material3.MaterialTheme
|
||||
import androidx.compose.material3.Text
|
||||
import androidx.compose.runtime.Composable
|
||||
|
@ -32,6 +31,7 @@ import at.bitfire.davdroid.Constants.withStatParams
|
|||
import at.bitfire.davdroid.R
|
||||
import at.bitfire.davdroid.ui.DebugInfoActivity
|
||||
import at.bitfire.davdroid.ui.UiUtils.toAnnotatedString
|
||||
import at.bitfire.davdroid.ui.composable.ProgressBar
|
||||
import at.bitfire.davdroid.ui.widget.ClickableTextWithLink
|
||||
|
||||
@Composable
|
||||
|
@ -72,7 +72,7 @@ fun DetectResourcesPageContent(
|
|||
@Preview
|
||||
fun DetectResourcesPageContent_InProgress() {
|
||||
Column(Modifier.fillMaxWidth()) {
|
||||
LinearProgressIndicator(
|
||||
ProgressBar(
|
||||
//color = MaterialTheme.colors.secondary,
|
||||
modifier = Modifier
|
||||
.fillMaxWidth()
|
||||
|
|
|
@ -21,7 +21,6 @@ import androidx.compose.material.icons.filled.Cloud
|
|||
import androidx.compose.material.icons.filled.Warning
|
||||
import androidx.compose.material3.Card
|
||||
import androidx.compose.material3.Icon
|
||||
import androidx.compose.material3.LinearProgressIndicator
|
||||
import androidx.compose.material3.MaterialTheme
|
||||
import androidx.compose.material3.OutlinedTextField
|
||||
import androidx.compose.material3.SnackbarHostState
|
||||
|
@ -48,6 +47,7 @@ import at.bitfire.davdroid.Constants.withStatParams
|
|||
import at.bitfire.davdroid.R
|
||||
import at.bitfire.davdroid.ui.UiUtils.haveCustomTabs
|
||||
import at.bitfire.davdroid.ui.composable.Assistant
|
||||
import at.bitfire.davdroid.ui.composable.ProgressBar
|
||||
import kotlinx.coroutines.launch
|
||||
|
||||
object NextcloudLogin : LoginType {
|
||||
|
@ -146,7 +146,7 @@ fun NextcloudLoginScreen(
|
|||
onNext = onLogin
|
||||
) {
|
||||
if (inProgress)
|
||||
LinearProgressIndicator(
|
||||
ProgressBar(
|
||||
modifier = Modifier
|
||||
.fillMaxWidth()
|
||||
.padding(bottom = 8.dp)
|
||||
|
|
|
@ -20,7 +20,6 @@ import androidx.compose.material3.Button
|
|||
import androidx.compose.material3.ExperimentalMaterial3Api
|
||||
import androidx.compose.material3.Icon
|
||||
import androidx.compose.material3.IconButton
|
||||
import androidx.compose.material3.LinearProgressIndicator
|
||||
import androidx.compose.material3.MaterialTheme
|
||||
import androidx.compose.material3.OutlinedTextField
|
||||
import androidx.compose.material3.Scaffold
|
||||
|
@ -44,6 +43,7 @@ import androidx.lifecycle.viewmodel.compose.viewModel
|
|||
import at.bitfire.davdroid.R
|
||||
import at.bitfire.davdroid.ui.AppTheme
|
||||
import at.bitfire.davdroid.ui.composable.PasswordTextField
|
||||
import at.bitfire.davdroid.ui.composable.ProgressBar
|
||||
import at.bitfire.davdroid.ui.composable.SelectClientCertificateCard
|
||||
|
||||
@Composable
|
||||
|
@ -143,7 +143,7 @@ fun AddWebDavMountScreen(
|
|||
.verticalScroll(rememberScrollState())
|
||||
) {
|
||||
if (isLoading)
|
||||
LinearProgressIndicator(modifier = Modifier.fillMaxWidth())
|
||||
ProgressBar(modifier = Modifier.fillMaxWidth())
|
||||
|
||||
Column(
|
||||
modifier = Modifier
|
||||
|
|
|
@ -34,12 +34,10 @@ import androidx.compose.material3.ExperimentalMaterial3Api
|
|||
import androidx.compose.material3.FloatingActionButton
|
||||
import androidx.compose.material3.Icon
|
||||
import androidx.compose.material3.IconButton
|
||||
import androidx.compose.material3.LinearProgressIndicator
|
||||
import androidx.compose.material3.MaterialTheme
|
||||
import androidx.compose.material3.OutlinedButton
|
||||
import androidx.compose.material3.Scaffold
|
||||
import androidx.compose.material3.Text
|
||||
import androidx.compose.material3.TextButton
|
||||
import androidx.compose.material3.TopAppBar
|
||||
import androidx.compose.material3.pulltorefresh.PullToRefreshContainer
|
||||
import androidx.compose.material3.pulltorefresh.rememberPullToRefreshState
|
||||
|
@ -69,6 +67,7 @@ import at.bitfire.davdroid.db.WebDavMount
|
|||
import at.bitfire.davdroid.db.WebDavMountWithRootDocument
|
||||
import at.bitfire.davdroid.ui.AppTheme
|
||||
import at.bitfire.davdroid.ui.UiUtils.toAnnotatedString
|
||||
import at.bitfire.davdroid.ui.composable.ProgressBar
|
||||
import at.bitfire.davdroid.ui.widget.ClickableTextWithLink
|
||||
import at.bitfire.davdroid.util.DavUtils
|
||||
import okhttp3.HttpUrl
|
||||
|
@ -168,9 +167,10 @@ fun WebdavMountsScreen(
|
|||
else {
|
||||
Column {
|
||||
if (refreshingQuota)
|
||||
LinearProgressIndicator(Modifier
|
||||
.fillMaxWidth()
|
||||
.height(4.dp))
|
||||
ProgressBar(
|
||||
modifier = Modifier
|
||||
.fillMaxWidth()
|
||||
.height(4.dp))
|
||||
else
|
||||
Spacer(Modifier.height(4.dp))
|
||||
|
||||
|
@ -287,7 +287,7 @@ fun WebdavMountsItem(
|
|||
if (quotaUsed != null && quotaAvailable != null) {
|
||||
val quotaTotal = quotaUsed + quotaAvailable
|
||||
val progress = quotaUsed.toFloat() / quotaTotal
|
||||
LinearProgressIndicator(
|
||||
ProgressBar(
|
||||
progress = { progress },
|
||||
modifier = Modifier
|
||||
.fillMaxWidth()
|
||||
|
|
Loading…
Reference in a new issue