A cheap attempt at a native Bluesky client for Android

Lists: remove loading indicator

Removes the `CircularProgressIndicator` that was previously shown at the bottom of the timeline and notifications lists while fetching more items.

-53
-27
app/src/main/java/industries/geesawra/monarch/NotificationsView.kt
··· 1 1 package industries.geesawra.monarch 2 2 3 3 import androidx.compose.foundation.layout.Arrangement 4 - import androidx.compose.foundation.layout.Box 5 4 import androidx.compose.foundation.layout.PaddingValues 6 - import androidx.compose.foundation.layout.fillMaxSize 7 - import androidx.compose.foundation.layout.fillMaxWidth 8 5 import androidx.compose.foundation.layout.padding 9 - import androidx.compose.foundation.layout.width 10 6 import androidx.compose.foundation.lazy.LazyColumn 11 7 import androidx.compose.foundation.lazy.LazyListState 12 8 import androidx.compose.foundation.lazy.items 13 9 import androidx.compose.material3.Card 14 10 import androidx.compose.material3.CardDefaults 15 - import androidx.compose.material3.CircularProgressIndicator 16 11 import androidx.compose.runtime.Composable 17 12 import androidx.compose.runtime.LaunchedEffect 18 13 import androidx.compose.runtime.derivedStateOf 19 14 import androidx.compose.runtime.getValue 20 15 import androidx.compose.runtime.remember 21 - import androidx.compose.ui.Alignment 22 16 import androidx.compose.ui.Modifier 23 17 import androidx.compose.ui.unit.dp 24 18 import industries.geesawra.monarch.datalayer.Notification ··· 66 60 notification = notif, 67 61 onReplyTap = onReplyTap 68 62 ) 69 - } 70 - } 71 - 72 - if (viewModel.uiState.isFetchingMoreNotifications && viewModel.uiState.notifications.isNotEmpty()) { 73 - item { 74 - Box( 75 - modifier = Modifier 76 - .fillMaxWidth() 77 - .padding(16.dp), 78 - contentAlignment = Alignment.Center 79 - ) { 80 - Box( 81 - contentAlignment = Alignment.Center, 82 - modifier = Modifier.fillMaxSize() 83 - ) { 84 - CircularProgressIndicator( 85 - modifier = Modifier 86 - .width(64.dp), 87 - ) 88 - } 89 - } 90 63 } 91 64 } 92 65 }
-26
app/src/main/java/industries/geesawra/monarch/ShowSkeets.kt
··· 1 1 package industries.geesawra.monarch 2 2 3 3 import androidx.compose.foundation.layout.Arrangement 4 - import androidx.compose.foundation.layout.Box 5 4 import androidx.compose.foundation.layout.fillMaxSize 6 - import androidx.compose.foundation.layout.fillMaxWidth 7 5 import androidx.compose.foundation.layout.height 8 6 import androidx.compose.foundation.layout.padding 9 - import androidx.compose.foundation.layout.width 10 7 import androidx.compose.foundation.lazy.LazyColumn 11 8 import androidx.compose.foundation.lazy.LazyListState 12 9 import androidx.compose.foundation.lazy.items 13 10 import androidx.compose.foundation.lazy.rememberLazyListState 14 11 import androidx.compose.foundation.shape.RoundedCornerShape 15 12 import androidx.compose.material3.Card 16 - import androidx.compose.material3.CircularProgressIndicator 17 13 import androidx.compose.material3.VerticalDivider 18 14 import androidx.compose.runtime.Composable 19 15 import androidx.compose.runtime.LaunchedEffect 20 16 import androidx.compose.runtime.derivedStateOf 21 17 import androidx.compose.runtime.getValue 22 18 import androidx.compose.runtime.remember 23 - import androidx.compose.ui.Alignment 24 19 import androidx.compose.ui.Modifier 25 20 import androidx.compose.ui.draw.clip 26 21 import androidx.compose.ui.unit.dp ··· 130 125 // } 131 126 // } 132 127 ) 133 - } 134 - } 135 - 136 - if (viewModel.uiState.isFetchingMoreTimeline && data.isNotEmpty() && shouldFetchMoreData) { 137 - item { 138 - Box( 139 - modifier = Modifier 140 - .fillMaxWidth() 141 - .padding(16.dp), 142 - contentAlignment = Alignment.Center 143 - ) { 144 - Box( 145 - contentAlignment = Alignment.Center, 146 - modifier = Modifier.fillMaxSize() 147 - ) { 148 - CircularProgressIndicator( 149 - modifier = Modifier 150 - .width(64.dp), 151 - ) 152 - } 153 - } 154 128 } 155 129 } 156 130 }