Skip to content

Commit

Permalink
Adding a login first message. Fixes #206
Browse files Browse the repository at this point in the history
  • Loading branch information
dessalines committed Oct 2, 2022
1 parent b24aaf5 commit 6ac8812
Show file tree
Hide file tree
Showing 8 changed files with 72 additions and 29 deletions.
4 changes: 4 additions & 0 deletions app/src/main/java/com/jerboa/Utils.kt
Expand Up @@ -82,6 +82,10 @@ fun toastException(ctx: Context?, error: Exception) {
}
}

fun loginFirstToast(ctx: Context) {
Toast.makeText(ctx, "Login first", Toast.LENGTH_SHORT).show()
}

enum class VoteType {
Upvote,
Downvote
Expand Down
11 changes: 10 additions & 1 deletion app/src/main/java/com/jerboa/ui/components/common/AppBars.kt
Expand Up @@ -22,6 +22,7 @@ import androidx.compose.ui.geometry.Offset
import androidx.compose.ui.geometry.Size
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.platform.LocalContext
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.Dp
import androidx.compose.ui.unit.dp
Expand All @@ -33,6 +34,7 @@ import com.google.accompanist.flowlayout.FlowRow
import com.jerboa.datatypes.PersonSafe
import com.jerboa.datatypes.api.GetUnreadCountResponse
import com.jerboa.db.Account
import com.jerboa.loginFirstToast
import com.jerboa.siFormat
import com.jerboa.ui.components.person.PersonProfileLink
import com.jerboa.ui.theme.*
Expand Down Expand Up @@ -237,6 +239,7 @@ fun ActionBarButton(
account: Account?,
smallIcon: Boolean = false
) {
val ctx = LocalContext.current
// Button(
// onClick = onClick,
// colors = ButtonDefaults.buttonColors(
Expand All @@ -254,7 +257,13 @@ fun ActionBarButton(
val barMod = if (noClick) {
Modifier
} else {
Modifier.clickable(onClick = onClick, enabled = (account !== null))
Modifier.clickable(onClick = {
if (account !== null) {
onClick()
} else {
loginFirstToast(ctx)
}
})
}
Row(
verticalAlignment = Alignment.CenterVertically,
Expand Down
Expand Up @@ -652,7 +652,7 @@ fun MyMarkdownText(
modifier = Modifier.fillMaxSize(),
color = color,
style = MaterialTheme.typography.body1,
fontSize = 22.sp
fontSize = 18.sp
)
}

Expand Down
Expand Up @@ -16,6 +16,7 @@ import androidx.compose.ui.platform.LocalContext
import androidx.navigation.NavController
import com.jerboa.VoteType
import com.jerboa.db.AccountViewModel
import com.jerboa.loginFirstToast
import com.jerboa.openLink
import com.jerboa.scrollToTop
import com.jerboa.ui.components.common.BottomAppBarAll
Expand Down Expand Up @@ -244,6 +245,8 @@ fun CommunityActivity(
communityListViewModel.selectCommunity(it.community)
navController.navigate("createPost")
}
} ?: run {
loginFirstToast(ctx)
}
}
) {
Expand Down
Expand Up @@ -15,6 +15,7 @@ import com.jerboa.api.retrofitErrorHandler
import com.jerboa.datatypes.*
import com.jerboa.datatypes.api.GetCommunity
import com.jerboa.db.Account
import com.jerboa.loginFirstToast
import com.jerboa.serializeToMap
import com.jerboa.ui.components.person.blockPersonRoutine
import com.jerboa.ui.components.post.deletePostRoutine
Expand Down Expand Up @@ -86,6 +87,8 @@ class CommunityViewModel : ViewModel() {
account?.also { acct ->
communityView =
followCommunityWrapper(communityView = cv, auth = acct.jwt, ctx = ctx)?.community_view
} ?: run {
loginFirstToast(ctx)
}
}
}
Expand Down
68 changes: 41 additions & 27 deletions app/src/main/java/com/jerboa/ui/components/home/Home.kt
Expand Up @@ -61,7 +61,7 @@ fun Drawer(
DrawerContent(
accounts = accounts,
unreadCounts = unreadCounts,
follows = myUserInfo?.follows,
myUserInfo = myUserInfo,
showAccountAddMode = showAccountAddMode,
navController = navController,
onSwitchAccountClick = onSwitchAccountClick,
Expand All @@ -88,7 +88,7 @@ fun DrawerContent(
onClickInbox: () -> Unit,
onClickSaved: () -> Unit,
onClickSettings: () -> Unit,
follows: List<CommunityFollowerView>?,
myUserInfo: MyUserInfo?,
unreadCounts: GetUnreadCountResponse?
) {
AnimatedVisibility(
Expand All @@ -106,12 +106,12 @@ fun DrawerContent(

if (!showAccountAddMode) {
DrawerItemsMain(
myUserInfo = myUserInfo,
onClickListingType = onClickListingType,
onCommunityClick = onCommunityClick,
onClickProfile = onClickProfile,
onClickInbox = onClickInbox,
onClickSaved = onClickSaved,
follows = follows,
unreadCounts = unreadCounts,
onClickSettings = onClickSettings
)
Expand All @@ -120,7 +120,7 @@ fun DrawerContent(

@Composable
fun DrawerItemsMain(
follows: List<CommunityFollowerView>? = null,
myUserInfo: MyUserInfo?,
onClickSaved: () -> Unit,
onClickProfile: () -> Unit,
onClickInbox: () -> Unit,
Expand All @@ -132,6 +132,7 @@ fun DrawerItemsMain(
val listState = rememberLazyListState()

val totalUnreads = unreadCounts?.let { unreadCountTotal(it) }
val follows = myUserInfo?.follows

LazyColumn(
state = listState,
Expand Down Expand Up @@ -161,39 +162,51 @@ fun DrawerItemsMain(
)
}
item {
IconAndTextDrawerItem(
text = "Saved",
icon = Icons.Default.Bookmarks,
onClick = onClickSaved
)
myUserInfo?.also {
IconAndTextDrawerItem(
text = "Saved",
icon = Icons.Default.Bookmarks,
onClick = onClickSaved
)
}
}
item {
Divider()
myUserInfo?.also {
Divider()
}
}
item {
IconAndTextDrawerItem(
text = "Profile",
icon = Icons.Default.Person,
onClick = onClickProfile
)
myUserInfo?.also {
IconAndTextDrawerItem(
text = "Profile",
icon = Icons.Default.Person,
onClick = onClickProfile
)
}
}
item {
IconAndTextDrawerItem(
text = "Inbox",
icon = Icons.Default.Email,
onClick = onClickInbox,
iconBadgeCount = totalUnreads
)
myUserInfo?.also {
IconAndTextDrawerItem(
text = "Inbox",
icon = Icons.Default.Email,
onClick = onClickInbox,
iconBadgeCount = totalUnreads
)
}
}
item {
IconAndTextDrawerItem(
text = "Settings",
icon = Icons.Default.Settings,
onClick = onClickSettings
)
myUserInfo?.also {
IconAndTextDrawerItem(
text = "Settings",
icon = Icons.Default.Settings,
onClick = onClickSettings
)
}
}
item {
Divider()
myUserInfo?.also {
Divider()
}
}

follows?.also { follows ->
Expand Down Expand Up @@ -222,6 +235,7 @@ fun DrawerItemsMain(
@Composable
fun DrawerItemsMainPreview() {
DrawerItemsMain(
myUserInfo = null,
onClickListingType = {},
onClickProfile = {},
onClickInbox = {},
Expand Down
Expand Up @@ -23,6 +23,7 @@ import com.jerboa.closeDrawer
import com.jerboa.db.Account
import com.jerboa.db.AccountViewModel
import com.jerboa.fetchInitialData
import com.jerboa.loginFirstToast
import com.jerboa.openLink
import com.jerboa.scrollToTop
import com.jerboa.ui.components.common.BottomAppBarAll
Expand Down Expand Up @@ -118,6 +119,8 @@ fun HomeActivity(
onClick = {
account?.also {
navController.navigate("createPost")
} ?: run {
loginFirstToast(ctx)
}
}
) {
Expand All @@ -137,6 +140,8 @@ fun HomeActivity(
navController = navController,
ctx = ctx
)
} ?: run {
loginFirstToast(ctx)
}
},
onClickInbox = {
Expand All @@ -152,6 +157,8 @@ fun HomeActivity(
ctx = ctx,
saved = true
)
} ?: run {
loginFirstToast(ctx)
}
},
navController = navController
Expand Down
3 changes: 3 additions & 0 deletions app/src/main/java/com/jerboa/ui/components/inbox/Inbox.kt
Expand Up @@ -12,6 +12,7 @@ import androidx.navigation.NavController
import androidx.navigation.compose.rememberNavController
import com.jerboa.UnreadOrAll
import com.jerboa.db.Account
import com.jerboa.loginFirstToast
import com.jerboa.ui.components.common.UnreadOrAllOptionsDialog
import com.jerboa.ui.theme.APP_BAR_ELEVATION
import com.jerboa.ui.theme.muted
Expand Down Expand Up @@ -39,6 +40,8 @@ fun inboxClickWrapper(
ctx = ctx
)
navController.navigate(route = "inbox")
} ?: run {
loginFirstToast(ctx)
}
}

Expand Down

0 comments on commit 6ac8812

Please sign in to comment.