Updates API token bottom sheet UI

Changes the background color of the copy token button to yellow.
Dismisses the bottom sheet after copying the token.
This commit is contained in:
Hafiz 2025-06-03 11:40:44 -05:00 committed by Phillip Thelen
parent 0a5d3f893f
commit 0944c64e8b
3 changed files with 14 additions and 12 deletions

View file

@ -185,14 +185,7 @@ class AccountPreferenceFragment :
"APIToken" -> {
ApiTokenBottomSheetFragment(
apiToken = hostConfig.apiKey, { copiedToken ->
(activity as? SnackbarActivity)?.showSnackbar(
content = getString(R.string.copied_to_clipboard, copiedToken),
displayType = HabiticaSnackbar.SnackbarDisplayType.SUCCESS,
)
},
).show(childFragmentManager, ApiTokenBottomSheetFragment.TAG)
apiToken = hostConfig.apiKey).show(childFragmentManager, ApiTokenBottomSheetFragment.TAG)
return true
}

View file

@ -6,11 +6,13 @@ import android.view.View
import android.view.ViewGroup
import androidx.compose.ui.platform.ComposeView
import com.google.android.material.bottomsheet.BottomSheetDialogFragment
import com.habitrpg.android.habitica.R
import com.habitrpg.android.habitica.ui.views.ApiTokenBottomSheet
import com.habitrpg.android.habitica.ui.views.HabiticaSnackbar
import com.habitrpg.android.habitica.ui.views.SnackbarActivity
class ApiTokenBottomSheetFragment(
private val apiToken: String,
private val onCopyToken: (String) -> Unit,
private val apiToken: String
) : BottomSheetDialogFragment() {
override fun onCreateView(
inflater: LayoutInflater,
@ -19,7 +21,13 @@ class ApiTokenBottomSheetFragment(
): View {
return ComposeView(requireContext()).apply {
setContent {
ApiTokenBottomSheet(apiToken = apiToken, onCopyToken = onCopyToken)
ApiTokenBottomSheet(apiToken = apiToken, onCopyToken = { copiedToken ->
(activity as? SnackbarActivity)?.showSnackbar(
content = getString(R.string.copied_to_clipboard, copiedToken),
displayType = HabiticaSnackbar.SnackbarDisplayType.SUCCESS,
)
dismiss()
})
}
}
}

View file

@ -16,6 +16,7 @@ import androidx.compose.ui.unit.*
import com.habitrpg.android.habitica.R
import com.habitrpg.android.habitica.ui.theme.colors
import com.habitrpg.common.habitica.theme.HabiticaTheme
import androidx.compose.ui.res.colorResource
@Composable
fun ApiTokenBottomSheet(
@ -29,7 +30,7 @@ fun ApiTokenBottomSheet(
val fieldBackground = colors.contentBackground
val mainText = colors.textPrimary
val secondaryText = colors.textSecondary
val buttonBg = colors.tintedUiMain
val buttonBg = colorResource(id = R.color.yellow_100)
val buttonText = colors.tintedUiDetails
val lockIconColor = colors.textSecondary