mirror of
https://github.com/vitorpamplona/amethyst.git
synced 2026-10-05 19:28:25 +00:00
refactor: share SafeImeInsets, DisappearingScaffold, emoji text and the user name text
- SafeImeInsets moves to commonsUI androidMain unchanged; its test moves to androidHostTest. rememberSafeImeInsets() is now an expect returning WindowInsets (WindowInsets.ime on desktop and iOS), and Modifier.imePaddingSafe() is shared in commonMain. 82 app files repoint their imports. - DisappearingScaffold moves to commonsUI commonMain. The account read becomes an immersiveScrolling lambda and the large-screen pin folds into allowBarHide; the app keeps a wrapper with the old signature, so its callers are unchanged. The OS status-bar hiding is an expect with an Android actual and a no-op on desktop and iOS. getActivityWindow and getDialogWindow move to commonsUI androidMain for it. - CustomEmojiChecker, CreateTextWithEmoji, the route-less CreateClickableTextWithEmoji and ClickableInLineIconRenderer move next to the shared InLineIconRenderer, which gains maxLines/overflow. The app's own InLineIconRenderer copy is deleted: it remembered its text with no keys, so a slot whose emoji list changed kept the old text. - UsernameDisplay's display half becomes commonsUI UserNameText (name with emojis, or the npub fallback, now remembered per user). The app keeps the petname and crossfade reads. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0168wY9t7i9NC5u3svyMxEz6
This commit is contained in:
+2
-2
@@ -61,11 +61,11 @@ import org.junit.Test
|
|||||||
* [aCancelledImeAnimationMustNotWedgeTheAnimatedInset] FAILS on every version from 1.4.0 on, so it
|
* [aCancelledImeAnimationMustNotWedgeTheAnimatedInset] FAILS on every version from 1.4.0 on, so it
|
||||||
* is [Ignore]d to keep CI green. It is not a test of Amethyst code — it is the upstream repro we
|
* is [Ignore]d to keep CI green. It is not a test of Amethyst code — it is the upstream repro we
|
||||||
* attached to the bug. **Re-run it by hand after every Compose upgrade**: when it passes, the
|
* attached to the bug. **Re-run it by hand after every Compose upgrade**: when it passes, the
|
||||||
* upstream fix has landed and [com.vitorpamplona.amethyst.ui.insets.SafeImeInsets] can be retired.
|
* upstream fix has landed and [com.vitorpamplona.amethyst.commons.ui.insets.SafeImeInsets] can be retired.
|
||||||
*
|
*
|
||||||
* [theAnimationTargetSurvivesTheWedge] documents the asymmetry that makes a workaround possible
|
* [theAnimationTargetSurvivesTheWedge] documents the asymmetry that makes a workaround possible
|
||||||
* and is expected to PASS — `updateImeAnimationTarget` is called outside the guard. It stays
|
* and is expected to PASS — `updateImeAnimationTarget` is called outside the guard. It stays
|
||||||
* enabled, because it guards the premise [com.vitorpamplona.amethyst.ui.insets.SafeImeInsets]
|
* enabled, because it guards the premise [com.vitorpamplona.amethyst.commons.ui.insets.SafeImeInsets]
|
||||||
* depends on: if a future Compose release stopped keeping `imeAnimationTarget` current, our
|
* depends on: if a future Compose release stopped keeping `imeAnimationTarget` current, our
|
||||||
* fallback would silently start reading a dead value too.
|
* fallback would silently start reading a dead value too.
|
||||||
*/
|
*/
|
||||||
|
|||||||
+1
-1
@@ -45,6 +45,7 @@ import androidx.media3.common.Player
|
|||||||
import androidx.media3.common.util.UnstableApi
|
import androidx.media3.common.util.UnstableApi
|
||||||
import androidx.media3.ui.compose.ContentFrame
|
import androidx.media3.ui.compose.ContentFrame
|
||||||
import androidx.media3.ui.compose.SURFACE_TYPE_TEXTURE_VIEW
|
import androidx.media3.ui.compose.SURFACE_TYPE_TEXTURE_VIEW
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.components.getDialogWindow
|
||||||
import com.vitorpamplona.amethyst.service.playback.composable.controls.BottomGradientOverlay
|
import com.vitorpamplona.amethyst.service.playback.composable.controls.BottomGradientOverlay
|
||||||
import com.vitorpamplona.amethyst.service.playback.composable.controls.FullscreenSwipeControlsState
|
import com.vitorpamplona.amethyst.service.playback.composable.controls.FullscreenSwipeControlsState
|
||||||
import com.vitorpamplona.amethyst.service.playback.composable.controls.FullscreenSwipeLevelIndicator
|
import com.vitorpamplona.amethyst.service.playback.composable.controls.FullscreenSwipeLevelIndicator
|
||||||
@@ -62,7 +63,6 @@ import com.vitorpamplona.amethyst.service.playback.composable.mediaitem.LoadedMe
|
|||||||
import com.vitorpamplona.amethyst.service.playback.composable.mediaitem.isHlsMedia
|
import com.vitorpamplona.amethyst.service.playback.composable.mediaitem.isHlsMedia
|
||||||
import com.vitorpamplona.amethyst.service.playback.composable.wavefront.AudioPlayingAnimation
|
import com.vitorpamplona.amethyst.service.playback.composable.wavefront.AudioPlayingAnimation
|
||||||
import com.vitorpamplona.amethyst.service.playback.composable.wavefront.rememberIsAudioTrack
|
import com.vitorpamplona.amethyst.service.playback.composable.wavefront.rememberIsAudioTrack
|
||||||
import com.vitorpamplona.amethyst.ui.components.getDialogWindow
|
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
|
|
||||||
internal const val SKIP_SECONDS = 10
|
internal const val SKIP_SECONDS = 10
|
||||||
|
|||||||
@@ -78,6 +78,7 @@ import com.vitorpamplona.amethyst.commons.resources.lightning_create_and_add_inv
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.lightning_invoice
|
import com.vitorpamplona.amethyst.commons.resources.lightning_invoice
|
||||||
import com.vitorpamplona.amethyst.commons.resources.what_s_on_your_mind
|
import com.vitorpamplona.amethyst.commons.resources.what_s_on_your_mind
|
||||||
import com.vitorpamplona.amethyst.commons.richtext.RichTextParser
|
import com.vitorpamplona.amethyst.commons.richtext.RichTextParser
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.PostingTopBar
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.PostingTopBar
|
||||||
import com.vitorpamplona.amethyst.commons.ui.note.creators.invoice.AddLnInvoiceButton
|
import com.vitorpamplona.amethyst.commons.ui.note.creators.invoice.AddLnInvoiceButton
|
||||||
@@ -98,7 +99,6 @@ import com.vitorpamplona.amethyst.ui.actions.uploads.SelectFromGallery
|
|||||||
import com.vitorpamplona.amethyst.ui.components.BechLink
|
import com.vitorpamplona.amethyst.ui.components.BechLink
|
||||||
import com.vitorpamplona.amethyst.ui.components.LoadUrlPreview
|
import com.vitorpamplona.amethyst.ui.components.LoadUrlPreview
|
||||||
import com.vitorpamplona.amethyst.ui.components.OutlinedThinPaddingTextField
|
import com.vitorpamplona.amethyst.ui.components.OutlinedThinPaddingTextField
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.note.NoteCompose
|
import com.vitorpamplona.amethyst.ui.note.NoteCompose
|
||||||
import com.vitorpamplona.amethyst.ui.note.creators.invoice.InvoiceRequest
|
import com.vitorpamplona.amethyst.ui.note.creators.invoice.InvoiceRequest
|
||||||
import com.vitorpamplona.amethyst.ui.note.creators.uploads.ImageVideoDescription
|
import com.vitorpamplona.amethyst.ui.note.creators.uploads.ImageVideoDescription
|
||||||
|
|||||||
@@ -73,6 +73,7 @@ import com.vitorpamplona.amethyst.commons.resources.video_codec_h265_description
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.video_codec_h265_label
|
import com.vitorpamplona.amethyst.commons.resources.video_codec_h265_label
|
||||||
import com.vitorpamplona.amethyst.commons.ui.components.TextSpinner
|
import com.vitorpamplona.amethyst.commons.ui.components.TextSpinner
|
||||||
import com.vitorpamplona.amethyst.commons.ui.components.TitleExplainer
|
import com.vitorpamplona.amethyst.commons.ui.components.TitleExplainer
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.PostingTopBar
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.PostingTopBar
|
||||||
import com.vitorpamplona.amethyst.commons.ui.note.creators.contentWarning.SettingSwitchItem
|
import com.vitorpamplona.amethyst.commons.ui.note.creators.contentWarning.SettingSwitchItem
|
||||||
@@ -82,7 +83,6 @@ import com.vitorpamplona.amethyst.commons.ui.theme.placeholderText
|
|||||||
import com.vitorpamplona.amethyst.ui.actions.uploads.SelectedMedia
|
import com.vitorpamplona.amethyst.ui.actions.uploads.SelectedMedia
|
||||||
import com.vitorpamplona.amethyst.ui.actions.uploads.ShowImageUploadGallery
|
import com.vitorpamplona.amethyst.ui.actions.uploads.ShowImageUploadGallery
|
||||||
import com.vitorpamplona.amethyst.ui.components.SetDialogToEdgeToEdge
|
import com.vitorpamplona.amethyst.ui.components.SetDialogToEdgeToEdge
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.settings.SettingsRow
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.settings.SettingsRow
|
||||||
import kotlinx.collections.immutable.ImmutableList
|
import kotlinx.collections.immutable.ImmutableList
|
||||||
|
|||||||
+1
-1
@@ -75,12 +75,12 @@ import com.vitorpamplona.amethyst.commons.resources.twitter
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.twitter_proof_url_template
|
import com.vitorpamplona.amethyst.commons.resources.twitter_proof_url_template
|
||||||
import com.vitorpamplona.amethyst.commons.resources.username
|
import com.vitorpamplona.amethyst.commons.resources.username
|
||||||
import com.vitorpamplona.amethyst.commons.resources.website_url
|
import com.vitorpamplona.amethyst.commons.resources.website_url
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.SavingTopBar
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.SavingTopBar
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.placeholderText
|
import com.vitorpamplona.amethyst.commons.ui.theme.placeholderText
|
||||||
import com.vitorpamplona.amethyst.ui.actions.uploads.SelectSingleFromGallery
|
import com.vitorpamplona.amethyst.ui.actions.uploads.SelectSingleFromGallery
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
|
|
||||||
@OptIn(ExperimentalMaterial3Api::class)
|
@OptIn(ExperimentalMaterial3Api::class)
|
||||||
|
|||||||
+1
-1
@@ -63,6 +63,7 @@ import com.vitorpamplona.amethyst.commons.resources.bolt12_offers_section_explai
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.delete_bolt12_offer
|
import com.vitorpamplona.amethyst.commons.resources.delete_bolt12_offer
|
||||||
import com.vitorpamplona.amethyst.commons.resources.invalid_bolt12_offer
|
import com.vitorpamplona.amethyst.commons.resources.invalid_bolt12_offer
|
||||||
import com.vitorpamplona.amethyst.commons.resources.no_bolt12_offers_message
|
import com.vitorpamplona.amethyst.commons.resources.no_bolt12_offers_message
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.SavingTopBar
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.SavingTopBar
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
@@ -73,7 +74,6 @@ import com.vitorpamplona.amethyst.commons.ui.theme.Size10dp
|
|||||||
import com.vitorpamplona.amethyst.commons.ui.theme.StdVertSpacer
|
import com.vitorpamplona.amethyst.commons.ui.theme.StdVertSpacer
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.grayText
|
import com.vitorpamplona.amethyst.commons.ui.theme.grayText
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.placeholderText
|
import com.vitorpamplona.amethyst.commons.ui.theme.placeholderText
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.profile.header.abbreviateBolt12Offer
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.profile.header.abbreviateBolt12Offer
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.relays.SettingsCategory
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.relays.SettingsCategory
|
||||||
|
|||||||
+1
-1
@@ -57,12 +57,12 @@ import com.vitorpamplona.amethyst.commons.resources.local_blossom_cache_profile_
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.media_servers
|
import com.vitorpamplona.amethyst.commons.resources.media_servers
|
||||||
import com.vitorpamplona.amethyst.commons.resources.use_local_blossom_cache
|
import com.vitorpamplona.amethyst.commons.resources.use_local_blossom_cache
|
||||||
import com.vitorpamplona.amethyst.commons.resources.use_local_blossom_cache_caption
|
import com.vitorpamplona.amethyst.commons.resources.use_local_blossom_cache_caption
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.TopBarWithBackButton
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.TopBarWithBackButton
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.allGoodColor
|
import com.vitorpamplona.amethyst.commons.ui.theme.allGoodColor
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.grayText
|
import com.vitorpamplona.amethyst.commons.ui.theme.grayText
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
|
|
||||||
@Composable
|
@Composable
|
||||||
|
|||||||
+1
-1
@@ -69,6 +69,7 @@ import com.vitorpamplona.amethyst.commons.resources.nests_servers_relay_label
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.nests_servers_remove
|
import com.vitorpamplona.amethyst.commons.resources.nests_servers_remove
|
||||||
import com.vitorpamplona.amethyst.commons.resources.nests_servers_title
|
import com.vitorpamplona.amethyst.commons.resources.nests_servers_title
|
||||||
import com.vitorpamplona.amethyst.commons.resources.nests_servers_use_defaults
|
import com.vitorpamplona.amethyst.commons.resources.nests_servers_use_defaults
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.SavingTopBar
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.SavingTopBar
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
@@ -82,7 +83,6 @@ import com.vitorpamplona.amethyst.commons.ui.theme.StdVertSpacer
|
|||||||
import com.vitorpamplona.amethyst.commons.ui.theme.grayText
|
import com.vitorpamplona.amethyst.commons.ui.theme.grayText
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.placeholderText
|
import com.vitorpamplona.amethyst.commons.ui.theme.placeholderText
|
||||||
import com.vitorpamplona.amethyst.ui.actions.mediaServers.AllMediaServersScreen
|
import com.vitorpamplona.amethyst.ui.actions.mediaServers.AllMediaServersScreen
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.relays.SettingsCategory
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.relays.SettingsCategory
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.relays.SettingsCategoryWithButton
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.relays.SettingsCategoryWithButton
|
||||||
|
|||||||
+1
-1
@@ -61,6 +61,7 @@ import com.vitorpamplona.amethyst.commons.resources.payment_target_type
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.payment_targets
|
import com.vitorpamplona.amethyst.commons.resources.payment_targets
|
||||||
import com.vitorpamplona.amethyst.commons.resources.payment_targets_explainer
|
import com.vitorpamplona.amethyst.commons.resources.payment_targets_explainer
|
||||||
import com.vitorpamplona.amethyst.commons.resources.payment_targets_section_explainer
|
import com.vitorpamplona.amethyst.commons.resources.payment_targets_section_explainer
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.SavingTopBar
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.SavingTopBar
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
@@ -71,7 +72,6 @@ import com.vitorpamplona.amethyst.commons.ui.theme.Size10dp
|
|||||||
import com.vitorpamplona.amethyst.commons.ui.theme.StdVertSpacer
|
import com.vitorpamplona.amethyst.commons.ui.theme.StdVertSpacer
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.grayText
|
import com.vitorpamplona.amethyst.commons.ui.theme.grayText
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.placeholderText
|
import com.vitorpamplona.amethyst.commons.ui.theme.placeholderText
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.relays.SettingsCategory
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.relays.SettingsCategory
|
||||||
import com.vitorpamplona.quartz.experimental.nipA3.PaymentTarget
|
import com.vitorpamplona.quartz.experimental.nipA3.PaymentTarget
|
||||||
|
|||||||
@@ -20,12 +20,6 @@
|
|||||||
*/
|
*/
|
||||||
package com.vitorpamplona.amethyst.ui.components
|
package com.vitorpamplona.amethyst.ui.components
|
||||||
|
|
||||||
import androidx.compose.foundation.layout.fillMaxSize
|
|
||||||
import androidx.compose.foundation.layout.padding
|
|
||||||
import androidx.compose.foundation.text.InlineTextContent
|
|
||||||
import androidx.compose.foundation.text.appendInlineContent
|
|
||||||
import androidx.compose.material3.LocalContentColor
|
|
||||||
import androidx.compose.material3.LocalTextStyle
|
|
||||||
import androidx.compose.material3.MaterialTheme
|
import androidx.compose.material3.MaterialTheme
|
||||||
import androidx.compose.material3.Text
|
import androidx.compose.material3.Text
|
||||||
import androidx.compose.runtime.Composable
|
import androidx.compose.runtime.Composable
|
||||||
@@ -34,26 +28,17 @@ import androidx.compose.runtime.getValue
|
|||||||
import androidx.compose.runtime.mutableStateOf
|
import androidx.compose.runtime.mutableStateOf
|
||||||
import androidx.compose.runtime.remember
|
import androidx.compose.runtime.remember
|
||||||
import androidx.compose.runtime.setValue
|
import androidx.compose.runtime.setValue
|
||||||
import androidx.compose.ui.Modifier
|
|
||||||
import androidx.compose.ui.graphics.Color
|
import androidx.compose.ui.graphics.Color
|
||||||
import androidx.compose.ui.graphics.takeOrElse
|
|
||||||
import androidx.compose.ui.platform.LocalUriHandler
|
import androidx.compose.ui.platform.LocalUriHandler
|
||||||
import androidx.compose.ui.text.LinkAnnotation
|
import androidx.compose.ui.text.LinkAnnotation
|
||||||
import androidx.compose.ui.text.Placeholder
|
|
||||||
import androidx.compose.ui.text.PlaceholderVerticalAlign
|
|
||||||
import androidx.compose.ui.text.SpanStyle
|
import androidx.compose.ui.text.SpanStyle
|
||||||
import androidx.compose.ui.text.TextLinkStyles
|
import androidx.compose.ui.text.TextLinkStyles
|
||||||
import androidx.compose.ui.text.TextStyle
|
|
||||||
import androidx.compose.ui.text.buildAnnotatedString
|
import androidx.compose.ui.text.buildAnnotatedString
|
||||||
import androidx.compose.ui.text.font.FontWeight
|
import androidx.compose.ui.text.font.FontWeight
|
||||||
import androidx.compose.ui.text.style.TextAlign
|
|
||||||
import androidx.compose.ui.text.style.TextOverflow
|
import androidx.compose.ui.text.style.TextOverflow
|
||||||
import androidx.compose.ui.text.withLink
|
import androidx.compose.ui.text.withLink
|
||||||
import androidx.compose.ui.text.withStyle
|
import androidx.compose.ui.text.withStyle
|
||||||
import androidx.compose.ui.unit.TextUnit
|
import androidx.compose.ui.unit.TextUnit
|
||||||
import androidx.compose.ui.unit.dp
|
|
||||||
import androidx.compose.ui.unit.sp
|
|
||||||
import coil3.compose.AsyncImage
|
|
||||||
import com.vitorpamplona.amethyst.commons.model.EmptyTagList
|
import com.vitorpamplona.amethyst.commons.model.EmptyTagList
|
||||||
import com.vitorpamplona.amethyst.commons.model.ImmutableListOfLists
|
import com.vitorpamplona.amethyst.commons.model.ImmutableListOfLists
|
||||||
import com.vitorpamplona.amethyst.commons.model.Note
|
import com.vitorpamplona.amethyst.commons.model.Note
|
||||||
@@ -62,6 +47,9 @@ import com.vitorpamplona.amethyst.commons.model.navigation.Route
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.Res
|
import com.vitorpamplona.amethyst.commons.resources.Res
|
||||||
import com.vitorpamplona.amethyst.commons.resources.concord_invite_naddr_label
|
import com.vitorpamplona.amethyst.commons.resources.concord_invite_naddr_label
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.richtext.ClickableInLineIconRenderer
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.richtext.CreateClickableTextWithEmoji
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.richtext.CustomEmojiChecker
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.commons.util.njumpLink
|
import com.vitorpamplona.amethyst.commons.util.njumpLink
|
||||||
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.event.observeNote
|
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.event.observeNote
|
||||||
@@ -84,9 +72,6 @@ import com.vitorpamplona.quartz.nip19Bech32.entities.NSec
|
|||||||
import com.vitorpamplona.quartz.nip19Bech32.toNIP19
|
import com.vitorpamplona.quartz.nip19Bech32.toNIP19
|
||||||
import com.vitorpamplona.quartz.nip29RelayGroups.GroupNAddrInvite
|
import com.vitorpamplona.quartz.nip29RelayGroups.GroupNAddrInvite
|
||||||
import com.vitorpamplona.quartz.nip29RelayGroups.metadata.GroupMetadataEvent
|
import com.vitorpamplona.quartz.nip29RelayGroups.metadata.GroupMetadataEvent
|
||||||
import com.vitorpamplona.quartz.nip30CustomEmoji.CustomEmoji
|
|
||||||
import kotlinx.collections.immutable.ImmutableList
|
|
||||||
import kotlinx.collections.immutable.ImmutableMap
|
|
||||||
|
|
||||||
@Composable
|
@Composable
|
||||||
fun ClickableRoute(
|
fun ClickableRoute(
|
||||||
@@ -406,208 +391,6 @@ fun CreateClickableText(
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
@Composable
|
|
||||||
fun CustomEmojiChecker(
|
|
||||||
text: String,
|
|
||||||
tags: ImmutableListOfLists<String>?,
|
|
||||||
onRegularText: @Composable (String) -> Unit,
|
|
||||||
onEmojiText: @Composable (ImmutableList<CustomEmoji.Renderable>) -> Unit,
|
|
||||||
) {
|
|
||||||
val mayContainEmoji by remember(text, tags) {
|
|
||||||
mutableStateOf(CustomEmoji.fastMightContainEmoji(text, tags?.lists))
|
|
||||||
}
|
|
||||||
|
|
||||||
if (mayContainEmoji) {
|
|
||||||
var emojiList by
|
|
||||||
remember(text, tags) {
|
|
||||||
mutableStateOf<ImmutableList<CustomEmoji.Renderable>?>(null)
|
|
||||||
}
|
|
||||||
|
|
||||||
LaunchedEffect(text, tags) {
|
|
||||||
val newEmojiList = CustomEmoji.assembleAnnotatedList(text, tags?.lists)
|
|
||||||
if (newEmojiList != null) {
|
|
||||||
emojiList = newEmojiList
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
emojiList?.let {
|
|
||||||
onEmojiText(it)
|
|
||||||
} ?: run {
|
|
||||||
onRegularText(text)
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
onRegularText(text)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Composable
|
|
||||||
fun CustomEmojiChecker(
|
|
||||||
text: String,
|
|
||||||
emojis: ImmutableMap<String, String>,
|
|
||||||
onRegularText: @Composable (String) -> Unit,
|
|
||||||
onEmojiText: @Composable (ImmutableList<CustomEmoji.Renderable>) -> Unit,
|
|
||||||
) {
|
|
||||||
val mayContainEmoji by remember(text, emojis) {
|
|
||||||
mutableStateOf(CustomEmoji.fastMightContainEmoji(text, emojis))
|
|
||||||
}
|
|
||||||
|
|
||||||
if (mayContainEmoji) {
|
|
||||||
var emojiList by
|
|
||||||
remember(text, emojis) {
|
|
||||||
mutableStateOf<ImmutableList<CustomEmoji.Renderable>?>(null)
|
|
||||||
}
|
|
||||||
|
|
||||||
LaunchedEffect(text, emojis) {
|
|
||||||
val newEmojiList = CustomEmoji.assembleAnnotatedList(text, emojis)
|
|
||||||
if (newEmojiList != null) {
|
|
||||||
emojiList = newEmojiList
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
emojiList?.let {
|
|
||||||
onEmojiText(it)
|
|
||||||
} ?: run {
|
|
||||||
onRegularText(text)
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
onRegularText(text)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Composable
|
|
||||||
fun CreateTextWithEmoji(
|
|
||||||
text: String,
|
|
||||||
tags: ImmutableListOfLists<String>?,
|
|
||||||
color: Color = Color.Unspecified,
|
|
||||||
textAlign: TextAlign? = null,
|
|
||||||
fontWeight: FontWeight? = null,
|
|
||||||
fontSize: TextUnit = TextUnit.Unspecified,
|
|
||||||
maxLines: Int = Int.MAX_VALUE,
|
|
||||||
overflow: TextOverflow = TextOverflow.Clip,
|
|
||||||
modifier: Modifier = Modifier,
|
|
||||||
) {
|
|
||||||
CustomEmojiChecker(
|
|
||||||
text,
|
|
||||||
tags,
|
|
||||||
onEmojiText = {
|
|
||||||
val textColor =
|
|
||||||
color.takeOrElse { LocalTextStyle.current.color.takeOrElse { LocalContentColor.current } }
|
|
||||||
val style =
|
|
||||||
LocalTextStyle.current
|
|
||||||
.merge(
|
|
||||||
TextStyle(
|
|
||||||
color = textColor,
|
|
||||||
textAlign = TextAlign.Unspecified,
|
|
||||||
fontWeight = fontWeight,
|
|
||||||
fontSize = fontSize,
|
|
||||||
),
|
|
||||||
).toSpanStyle()
|
|
||||||
|
|
||||||
InLineIconRenderer(it, style, fontSize, maxLines, overflow, modifier)
|
|
||||||
},
|
|
||||||
onRegularText = {
|
|
||||||
val textColor =
|
|
||||||
color.takeOrElse { LocalTextStyle.current.color.takeOrElse { LocalContentColor.current } }
|
|
||||||
Text(
|
|
||||||
text = it,
|
|
||||||
color = textColor,
|
|
||||||
textAlign = textAlign,
|
|
||||||
fontWeight = fontWeight,
|
|
||||||
fontSize = fontSize,
|
|
||||||
maxLines = maxLines,
|
|
||||||
overflow = overflow,
|
|
||||||
modifier = modifier,
|
|
||||||
)
|
|
||||||
},
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
@Composable
|
|
||||||
fun CreateTextWithEmoji(
|
|
||||||
text: String,
|
|
||||||
emojis: ImmutableMap<String, String>,
|
|
||||||
color: Color = Color.Unspecified,
|
|
||||||
textAlign: TextAlign? = null,
|
|
||||||
fontWeight: FontWeight? = null,
|
|
||||||
fontSize: TextUnit = TextUnit.Unspecified,
|
|
||||||
maxLines: Int = Int.MAX_VALUE,
|
|
||||||
overflow: TextOverflow = TextOverflow.Clip,
|
|
||||||
modifier: Modifier = Modifier,
|
|
||||||
) {
|
|
||||||
val textColor =
|
|
||||||
color.takeOrElse { LocalTextStyle.current.color.takeOrElse { LocalContentColor.current } }
|
|
||||||
|
|
||||||
CustomEmojiChecker(
|
|
||||||
text,
|
|
||||||
emojis,
|
|
||||||
onEmojiText = {
|
|
||||||
val currentStyle = LocalTextStyle.current
|
|
||||||
val style =
|
|
||||||
remember(currentStyle) {
|
|
||||||
currentStyle
|
|
||||||
.merge(
|
|
||||||
TextStyle(
|
|
||||||
color = textColor,
|
|
||||||
textAlign = TextAlign.Unspecified,
|
|
||||||
fontWeight = fontWeight,
|
|
||||||
fontSize = fontSize,
|
|
||||||
),
|
|
||||||
).toSpanStyle()
|
|
||||||
}
|
|
||||||
|
|
||||||
InLineIconRenderer(it, style, fontSize, maxLines, overflow, modifier)
|
|
||||||
},
|
|
||||||
onRegularText = {
|
|
||||||
Text(
|
|
||||||
text = it,
|
|
||||||
color = textColor,
|
|
||||||
textAlign = textAlign,
|
|
||||||
fontWeight = fontWeight,
|
|
||||||
fontSize = fontSize,
|
|
||||||
maxLines = maxLines,
|
|
||||||
overflow = overflow,
|
|
||||||
modifier = modifier,
|
|
||||||
)
|
|
||||||
},
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
@Composable
|
|
||||||
fun CreateClickableTextWithEmoji(
|
|
||||||
clickablePart: String,
|
|
||||||
maxLines: Int = Int.MAX_VALUE,
|
|
||||||
tags: ImmutableListOfLists<String>?,
|
|
||||||
style: TextStyle,
|
|
||||||
onClick: () -> Unit,
|
|
||||||
) {
|
|
||||||
CustomEmojiChecker(
|
|
||||||
text = clickablePart,
|
|
||||||
tags = tags,
|
|
||||||
onRegularText = {
|
|
||||||
Text(
|
|
||||||
text =
|
|
||||||
buildAnnotatedString {
|
|
||||||
withLink(
|
|
||||||
LinkAnnotation.Clickable(
|
|
||||||
"me",
|
|
||||||
TextLinkStyles(style = style.toSpanStyle()),
|
|
||||||
) {
|
|
||||||
onClick()
|
|
||||||
},
|
|
||||||
) {
|
|
||||||
append(clickablePart)
|
|
||||||
}
|
|
||||||
},
|
|
||||||
style = style,
|
|
||||||
maxLines = maxLines,
|
|
||||||
)
|
|
||||||
},
|
|
||||||
onEmojiText = {
|
|
||||||
ClickableInLineIconRenderer(it, maxLines, style.toSpanStyle(), onClick = onClick)
|
|
||||||
},
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
@Composable
|
@Composable
|
||||||
fun CreateClickableTextWithEmoji(
|
fun CreateClickableTextWithEmoji(
|
||||||
clickablePart: String,
|
clickablePart: String,
|
||||||
@@ -653,144 +436,3 @@ fun CreateClickableTextWithEmoji(
|
|||||||
},
|
},
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
@Composable
|
|
||||||
fun ClickableInLineIconRenderer(
|
|
||||||
wordsInOrder: ImmutableList<CustomEmoji.Renderable>,
|
|
||||||
maxLines: Int = Int.MAX_VALUE,
|
|
||||||
style: SpanStyle,
|
|
||||||
suffix: String? = null,
|
|
||||||
nonClickableStype: SpanStyle? = null,
|
|
||||||
onClick: () -> Unit,
|
|
||||||
) {
|
|
||||||
val placeholderSize =
|
|
||||||
remember(style) {
|
|
||||||
if (style.fontSize == TextUnit.Unspecified) 22.sp else style.fontSize.times(1.1f)
|
|
||||||
}
|
|
||||||
|
|
||||||
val inlineContent =
|
|
||||||
wordsInOrder
|
|
||||||
.mapIndexedNotNull { idx, value ->
|
|
||||||
if (value is CustomEmoji.ImageUrlType) {
|
|
||||||
Pair(
|
|
||||||
"inlineContent$idx",
|
|
||||||
InlineTextContent(
|
|
||||||
Placeholder(
|
|
||||||
width = placeholderSize,
|
|
||||||
height = placeholderSize,
|
|
||||||
placeholderVerticalAlign = PlaceholderVerticalAlign.Center,
|
|
||||||
),
|
|
||||||
) {
|
|
||||||
AsyncImage(
|
|
||||||
model = value.url,
|
|
||||||
contentDescription = null,
|
|
||||||
modifier =
|
|
||||||
Modifier
|
|
||||||
.fillMaxSize()
|
|
||||||
.padding(1.dp),
|
|
||||||
)
|
|
||||||
},
|
|
||||||
)
|
|
||||||
} else {
|
|
||||||
null
|
|
||||||
}
|
|
||||||
}.associate { it.first to it.second }
|
|
||||||
|
|
||||||
val annotatedText =
|
|
||||||
buildAnnotatedString {
|
|
||||||
wordsInOrder.forEachIndexed { idx, value ->
|
|
||||||
withLink(
|
|
||||||
LinkAnnotation.Clickable("link", TextLinkStyles(style)) {
|
|
||||||
onClick()
|
|
||||||
},
|
|
||||||
) {
|
|
||||||
if (value is CustomEmoji.TextType) {
|
|
||||||
append(value.text)
|
|
||||||
} else if (value is CustomEmoji.ImageUrlType) {
|
|
||||||
appendInlineContent("inlineContent$idx", "[icon]")
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (suffix != null && nonClickableStype != null) {
|
|
||||||
withStyle(nonClickableStype) {
|
|
||||||
append(suffix)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
Text(
|
|
||||||
text = annotatedText,
|
|
||||||
inlineContent = inlineContent,
|
|
||||||
maxLines = maxLines,
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
@Composable
|
|
||||||
fun InLineIconRenderer(
|
|
||||||
wordsInOrder: ImmutableList<CustomEmoji.Renderable>,
|
|
||||||
style: SpanStyle,
|
|
||||||
fontSize: TextUnit = TextUnit.Unspecified,
|
|
||||||
maxLines: Int = Int.MAX_VALUE,
|
|
||||||
overflow: TextOverflow = TextOverflow.Clip,
|
|
||||||
modifier: Modifier = Modifier,
|
|
||||||
) {
|
|
||||||
val placeholderSize =
|
|
||||||
remember(fontSize) {
|
|
||||||
if (fontSize == TextUnit.Unspecified) 22.sp else fontSize.times(1.1f)
|
|
||||||
}
|
|
||||||
|
|
||||||
val inlineContent =
|
|
||||||
wordsInOrder
|
|
||||||
.mapIndexedNotNull { idx, value ->
|
|
||||||
if (value is CustomEmoji.ImageUrlType) {
|
|
||||||
Pair(
|
|
||||||
"inlineContent$idx",
|
|
||||||
InlineTextContent(
|
|
||||||
Placeholder(
|
|
||||||
width = placeholderSize,
|
|
||||||
height = placeholderSize,
|
|
||||||
placeholderVerticalAlign = PlaceholderVerticalAlign.Center,
|
|
||||||
),
|
|
||||||
) {
|
|
||||||
AsyncImage(
|
|
||||||
model = value.url,
|
|
||||||
contentDescription = null,
|
|
||||||
modifier =
|
|
||||||
Modifier
|
|
||||||
.fillMaxSize()
|
|
||||||
.padding(horizontal = 0.dp),
|
|
||||||
)
|
|
||||||
},
|
|
||||||
)
|
|
||||||
} else {
|
|
||||||
null
|
|
||||||
}
|
|
||||||
}.associate { it.first to it.second }
|
|
||||||
|
|
||||||
val annotatedText =
|
|
||||||
remember {
|
|
||||||
buildAnnotatedString {
|
|
||||||
wordsInOrder.forEachIndexed { idx, value ->
|
|
||||||
withStyle(
|
|
||||||
style,
|
|
||||||
) {
|
|
||||||
if (value is CustomEmoji.TextType) {
|
|
||||||
append(value.text)
|
|
||||||
} else if (value is CustomEmoji.ImageUrlType) {
|
|
||||||
appendInlineContent("inlineContent$idx", "[icon]")
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
Text(
|
|
||||||
text = annotatedText,
|
|
||||||
inlineContent = inlineContent,
|
|
||||||
fontSize = fontSize,
|
|
||||||
maxLines = maxLines,
|
|
||||||
overflow = overflow,
|
|
||||||
modifier = modifier,
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -105,6 +105,8 @@ import com.vitorpamplona.amethyst.commons.ui.components.ClickableTextPrimary
|
|||||||
import com.vitorpamplona.amethyst.commons.ui.components.NowhereLinkCard
|
import com.vitorpamplona.amethyst.commons.ui.components.NowhereLinkCard
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.EmptyNav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.EmptyNav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.richtext.CreateClickableTextWithEmoji
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.richtext.CreateTextWithEmoji
|
||||||
import com.vitorpamplona.amethyst.commons.ui.richtext.HashtagIcon
|
import com.vitorpamplona.amethyst.commons.ui.richtext.HashtagIcon
|
||||||
import com.vitorpamplona.amethyst.commons.ui.richtext.checkForHashtagWithIcon
|
import com.vitorpamplona.amethyst.commons.ui.richtext.checkForHashtagWithIcon
|
||||||
import com.vitorpamplona.amethyst.commons.ui.state.produceCachedState
|
import com.vitorpamplona.amethyst.commons.ui.state.produceCachedState
|
||||||
|
|||||||
+1
@@ -29,6 +29,7 @@ import androidx.compose.runtime.SideEffect
|
|||||||
import androidx.compose.ui.platform.LocalView
|
import androidx.compose.ui.platform.LocalView
|
||||||
import androidx.compose.ui.window.DialogWindowProvider
|
import androidx.compose.ui.window.DialogWindowProvider
|
||||||
import androidx.core.view.WindowCompat
|
import androidx.core.view.WindowCompat
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.components.getActivityWindow
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.isLight
|
import com.vitorpamplona.amethyst.commons.ui.theme.isLight
|
||||||
|
|
||||||
@Composable
|
@Composable
|
||||||
|
|||||||
@@ -20,31 +20,13 @@
|
|||||||
*/
|
*/
|
||||||
package com.vitorpamplona.amethyst.ui.components
|
package com.vitorpamplona.amethyst.ui.components
|
||||||
|
|
||||||
import android.app.Activity
|
|
||||||
import android.content.Context
|
import android.content.Context
|
||||||
import android.content.ContextWrapper
|
import android.content.ContextWrapper
|
||||||
import android.view.Window
|
|
||||||
import androidx.activity.ComponentActivity
|
import androidx.activity.ComponentActivity
|
||||||
import androidx.compose.runtime.Composable
|
import androidx.compose.runtime.Composable
|
||||||
import androidx.compose.ui.platform.LocalContext
|
import androidx.compose.ui.platform.LocalContext
|
||||||
import androidx.compose.ui.platform.LocalView
|
|
||||||
import androidx.compose.ui.window.DialogWindowProvider
|
|
||||||
import com.vitorpamplona.amethyst.Amethyst
|
import com.vitorpamplona.amethyst.Amethyst
|
||||||
|
|
||||||
// Window utils
|
|
||||||
@Composable
|
|
||||||
fun getDialogWindow(): Window? = (LocalView.current.parent as? DialogWindowProvider)?.window
|
|
||||||
|
|
||||||
@Composable
|
|
||||||
fun getActivityWindow(): Window? = LocalView.current.context.getActivityWindow()
|
|
||||||
|
|
||||||
private tailrec fun Context.getActivityWindow(): Window? =
|
|
||||||
when (this) {
|
|
||||||
is Activity -> window
|
|
||||||
is ContextWrapper -> baseContext.getActivityWindow()
|
|
||||||
else -> null
|
|
||||||
}
|
|
||||||
|
|
||||||
tailrec fun Context.getActivity(): ComponentActivity =
|
tailrec fun Context.getActivity(): ComponentActivity =
|
||||||
when (this) {
|
when (this) {
|
||||||
is ComponentActivity -> this
|
is ComponentActivity -> this
|
||||||
|
|||||||
+2
@@ -80,6 +80,8 @@ import com.vitorpamplona.amethyst.commons.richtext.MediaUrlContent
|
|||||||
import com.vitorpamplona.amethyst.commons.richtext.MediaUrlImage
|
import com.vitorpamplona.amethyst.commons.richtext.MediaUrlImage
|
||||||
import com.vitorpamplona.amethyst.commons.richtext.MediaUrlPdf
|
import com.vitorpamplona.amethyst.commons.richtext.MediaUrlPdf
|
||||||
import com.vitorpamplona.amethyst.commons.richtext.MediaUrlVideo
|
import com.vitorpamplona.amethyst.commons.richtext.MediaUrlVideo
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.components.getActivityWindow
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.components.getDialogWindow
|
||||||
import com.vitorpamplona.amethyst.commons.ui.loadStringRes
|
import com.vitorpamplona.amethyst.commons.ui.loadStringRes
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.imageModifier
|
import com.vitorpamplona.amethyst.commons.ui.theme.imageModifier
|
||||||
import com.vitorpamplona.amethyst.model.MediaAspectRatioCache
|
import com.vitorpamplona.amethyst.model.MediaAspectRatioCache
|
||||||
|
|||||||
+1
-1
@@ -62,6 +62,7 @@ import androidx.compose.ui.window.DialogProperties
|
|||||||
import androidx.core.graphics.createBitmap
|
import androidx.core.graphics.createBitmap
|
||||||
import coil3.disk.DiskCache
|
import coil3.disk.DiskCache
|
||||||
import com.vitorpamplona.amethyst.commons.richtext.MediaUrlPdf
|
import com.vitorpamplona.amethyst.commons.richtext.MediaUrlPdf
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.components.getDialogWindow
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.Size10dp
|
import com.vitorpamplona.amethyst.commons.ui.theme.Size10dp
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.Size5dp
|
import com.vitorpamplona.amethyst.commons.ui.theme.Size5dp
|
||||||
import com.vitorpamplona.amethyst.ui.components.ImmersiveSystemBarsEffect
|
import com.vitorpamplona.amethyst.ui.components.ImmersiveSystemBarsEffect
|
||||||
@@ -69,7 +70,6 @@ import com.vitorpamplona.amethyst.ui.components.ViewerBackButton
|
|||||||
import com.vitorpamplona.amethyst.ui.components.ViewerControlsRow
|
import com.vitorpamplona.amethyst.ui.components.ViewerControlsRow
|
||||||
import com.vitorpamplona.amethyst.ui.components.ViewerSaveToGalleryButton
|
import com.vitorpamplona.amethyst.ui.components.ViewerSaveToGalleryButton
|
||||||
import com.vitorpamplona.amethyst.ui.components.ViewerShareButton
|
import com.vitorpamplona.amethyst.ui.components.ViewerShareButton
|
||||||
import com.vitorpamplona.amethyst.ui.components.getDialogWindow
|
|
||||||
import com.vitorpamplona.amethyst.ui.components.rememberViewerControlsVisibility
|
import com.vitorpamplona.amethyst.ui.components.rememberViewerControlsVisibility
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
import com.vitorpamplona.quartz.utils.Log
|
import com.vitorpamplona.quartz.utils.Log
|
||||||
|
|||||||
+16
-337
@@ -20,57 +20,16 @@
|
|||||||
*/
|
*/
|
||||||
package com.vitorpamplona.amethyst.ui.layouts
|
package com.vitorpamplona.amethyst.ui.layouts
|
||||||
|
|
||||||
import androidx.compose.foundation.layout.Box
|
|
||||||
import androidx.compose.foundation.layout.Column
|
|
||||||
import androidx.compose.foundation.layout.PaddingValues
|
import androidx.compose.foundation.layout.PaddingValues
|
||||||
import androidx.compose.foundation.layout.WindowInsets
|
|
||||||
import androidx.compose.foundation.layout.WindowInsetsSides
|
|
||||||
import androidx.compose.foundation.layout.navigationBars
|
|
||||||
import androidx.compose.foundation.layout.navigationBarsPadding
|
|
||||||
import androidx.compose.foundation.layout.only
|
|
||||||
import androidx.compose.foundation.layout.systemBars
|
|
||||||
import androidx.compose.foundation.layout.windowInsetsPadding
|
|
||||||
import androidx.compose.material3.HorizontalDivider
|
|
||||||
import androidx.compose.material3.MaterialTheme
|
|
||||||
import androidx.compose.material3.Surface
|
|
||||||
import androidx.compose.runtime.Composable
|
import androidx.compose.runtime.Composable
|
||||||
import androidx.compose.runtime.CompositionLocalProvider
|
|
||||||
import androidx.compose.runtime.DisposableEffect
|
|
||||||
import androidx.compose.runtime.LaunchedEffect
|
|
||||||
import androidx.compose.runtime.getValue
|
|
||||||
import androidx.compose.runtime.remember
|
|
||||||
import androidx.compose.runtime.rememberCoroutineScope
|
|
||||||
import androidx.compose.runtime.rememberUpdatedState
|
|
||||||
import androidx.compose.runtime.snapshotFlow
|
|
||||||
import androidx.compose.ui.Modifier
|
|
||||||
import androidx.compose.ui.graphics.graphicsLayer
|
|
||||||
import androidx.compose.ui.input.nestedscroll.nestedScroll
|
|
||||||
import androidx.compose.ui.layout.SubcomposeLayout
|
|
||||||
import androidx.compose.ui.platform.LocalView
|
|
||||||
import androidx.compose.ui.unit.Constraints
|
|
||||||
import androidx.compose.ui.unit.dp
|
|
||||||
import androidx.core.view.WindowInsetsCompat
|
|
||||||
import androidx.core.view.WindowInsetsControllerCompat
|
|
||||||
import androidx.lifecycle.Lifecycle
|
|
||||||
import androidx.lifecycle.LifecycleEventObserver
|
|
||||||
import androidx.lifecycle.compose.LocalLifecycleOwner
|
|
||||||
import com.vitorpamplona.amethyst.commons.ui.layouts.DisappearingBarNestedScroll
|
|
||||||
import com.vitorpamplona.amethyst.commons.ui.layouts.DisappearingBarState
|
|
||||||
import com.vitorpamplona.amethyst.commons.ui.layouts.LocalDisappearingBarState
|
|
||||||
import com.vitorpamplona.amethyst.commons.ui.layouts.LocalDisappearingScaffoldPadding
|
|
||||||
import com.vitorpamplona.amethyst.commons.ui.layouts.rememberDisappearingBarState
|
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.DividerThickness
|
|
||||||
import com.vitorpamplona.amethyst.ui.components.getActivityWindow
|
|
||||||
import com.vitorpamplona.amethyst.ui.insets.SafeImeInsets
|
|
||||||
import com.vitorpamplona.amethyst.ui.insets.rememberSafeImeInsets
|
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
import kotlinx.coroutines.flow.distinctUntilChanged
|
import com.vitorpamplona.amethyst.commons.ui.layouts.DisappearingScaffold as SharedDisappearingScaffold
|
||||||
import kotlinx.coroutines.launch
|
|
||||||
|
|
||||||
private enum class DisappearingSlot { Top, Bottom, Content, Fab }
|
|
||||||
|
|
||||||
private val FabEdgePadding = 16.dp
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The app's [SharedDisappearingScaffold]: bars hide on scroll only when the user's immersive
|
||||||
|
* scrolling setting is on, and never on large screens (rail / permanent drawer), which pin the
|
||||||
|
* chrome.
|
||||||
|
*/
|
||||||
@Composable
|
@Composable
|
||||||
fun DisappearingScaffold(
|
fun DisappearingScaffold(
|
||||||
isInvertedLayout: Boolean,
|
isInvertedLayout: Boolean,
|
||||||
@@ -81,293 +40,13 @@ fun DisappearingScaffold(
|
|||||||
isActive: () -> Boolean = { true },
|
isActive: () -> Boolean = { true },
|
||||||
allowBarHide: Boolean = true,
|
allowBarHide: Boolean = true,
|
||||||
mainContent: @Composable (padding: PaddingValues) -> Unit,
|
mainContent: @Composable (padding: PaddingValues) -> Unit,
|
||||||
) {
|
) = SharedDisappearingScaffold(
|
||||||
val state = rememberDisappearingBarState()
|
isInvertedLayout = isInvertedLayout,
|
||||||
|
topBar = topBar,
|
||||||
// Large screens (rail / permanent drawer) pin the chrome: bars never slide away on
|
bottomBar = bottomBar,
|
||||||
// scroll, and the immersive status-bar hiding stays off.
|
floatingButton = floatingButton,
|
||||||
val canHideBars = allowBarHide && !LocalScreenLayout.current.isLargeScreen
|
immersiveScrolling = { accountViewModel.settings.isImmersiveScrollingActive() },
|
||||||
|
isActive = isActive,
|
||||||
// Hold the latest values in state so the NSC's captured lambda stays fresh across
|
allowBarHide = allowBarHide && !LocalScreenLayout.current.isLargeScreen,
|
||||||
// recompositions without rebuilding the NSC itself.
|
mainContent = mainContent,
|
||||||
val latestIsActive by rememberUpdatedState(isActive)
|
)
|
||||||
val latestAllowBarHide by rememberUpdatedState(canHideBars)
|
|
||||||
val latestAccountViewModel by rememberUpdatedState(accountViewModel)
|
|
||||||
|
|
||||||
val connection =
|
|
||||||
remember(state, isInvertedLayout) {
|
|
||||||
DisappearingBarNestedScroll(
|
|
||||||
state = state,
|
|
||||||
canScroll = {
|
|
||||||
latestAllowBarHide &&
|
|
||||||
latestIsActive() &&
|
|
||||||
latestAccountViewModel.settings.isImmersiveScrollingActive()
|
|
||||||
},
|
|
||||||
reverseLayout = isInvertedLayout,
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Only wire the lifecycle observer + system-bar control when the scaffold actually moves its bars.
|
|
||||||
if (canHideBars) {
|
|
||||||
ResetBarsOnResume(state)
|
|
||||||
ImmersiveStatusBarEffect(state)
|
|
||||||
}
|
|
||||||
|
|
||||||
// If the bars were scrolled away when hiding got disabled (e.g. the window grew to a
|
|
||||||
// large tier mid-scroll), nothing above can bring them back — the nested-scroll
|
|
||||||
// connection and the resume reset are gone. Snap them visible here instead of
|
|
||||||
// leaving the chrome stranded off-screen.
|
|
||||||
LaunchedEffect(canHideBars, state) {
|
|
||||||
if (!canHideBars) state.resetToVisible()
|
|
||||||
}
|
|
||||||
|
|
||||||
// When bars are pinned, skip attaching the nested-scroll connection entirely.
|
|
||||||
// The outer Surface provides the Material container color + onBackground as
|
|
||||||
// LocalContentColor, matching M3 Scaffold's behaviour (without it, default text
|
|
||||||
// color falls back to Color.Black and is invisible on the dark theme).
|
|
||||||
// Hoisted above the branch: imePaddingSafe() inside both arms would put the call in two
|
|
||||||
// different composition groups, so toggling canHideBars (a window-size-class change) would
|
|
||||||
// dispose and rebuild it. Resolved once here, and handed to ScaffoldLayout below so the value
|
|
||||||
// this pads with is the same object the nav-bar subtraction reads.
|
|
||||||
val imeInsets = rememberSafeImeInsets()
|
|
||||||
val baseModifier =
|
|
||||||
if (canHideBars) {
|
|
||||||
Modifier.windowInsetsPadding(imeInsets).nestedScroll(connection)
|
|
||||||
} else {
|
|
||||||
Modifier.windowInsetsPadding(imeInsets)
|
|
||||||
}
|
|
||||||
val rootModifier =
|
|
||||||
baseModifier
|
|
||||||
// systemBars (not just statusBars) so a desktop window's caption bar is respected too.
|
|
||||||
.let { if (topBar == null) it.windowInsetsPadding(WindowInsets.systemBars.only(WindowInsetsSides.Top)) else it }
|
|
||||||
.let { if (bottomBar == null) it.navigationBarsPadding() else it }
|
|
||||||
|
|
||||||
Surface(
|
|
||||||
modifier = rootModifier,
|
|
||||||
color = MaterialTheme.colorScheme.background,
|
|
||||||
contentColor = MaterialTheme.colorScheme.onBackground,
|
|
||||||
) {
|
|
||||||
ScaffoldLayout(
|
|
||||||
state = state,
|
|
||||||
topBar = topBar,
|
|
||||||
bottomBar = bottomBar,
|
|
||||||
floatingButton = floatingButton,
|
|
||||||
imeInsets = imeInsets,
|
|
||||||
mainContent = mainContent,
|
|
||||||
)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Composable
|
|
||||||
private fun ScaffoldLayout(
|
|
||||||
state: DisappearingBarState,
|
|
||||||
topBar: (@Composable () -> Unit)?,
|
|
||||||
bottomBar: (@Composable () -> Unit)?,
|
|
||||||
floatingButton: (@Composable () -> Unit)?,
|
|
||||||
imeInsets: SafeImeInsets,
|
|
||||||
mainContent: @Composable (padding: PaddingValues) -> Unit,
|
|
||||||
) {
|
|
||||||
val navBarInsets = WindowInsets.navigationBars
|
|
||||||
SubcomposeLayout { constraints ->
|
|
||||||
val layoutWidth = constraints.maxWidth
|
|
||||||
val layoutHeight = constraints.maxHeight
|
|
||||||
val looseConstraints = constraints.copy(minWidth = 0, minHeight = 0)
|
|
||||||
|
|
||||||
val topPlaceable =
|
|
||||||
topBar?.let { bar ->
|
|
||||||
subcompose(DisappearingSlot.Top) {
|
|
||||||
Column(
|
|
||||||
modifier =
|
|
||||||
Modifier.graphicsLayer {
|
|
||||||
translationY = state.topHeightOffset
|
|
||||||
},
|
|
||||||
) {
|
|
||||||
bar()
|
|
||||||
HorizontalDivider(thickness = DividerThickness)
|
|
||||||
}
|
|
||||||
}.firstOrNull()?.measure(looseConstraints)
|
|
||||||
}
|
|
||||||
val topHeight = topPlaceable?.height ?: 0
|
|
||||||
|
|
||||||
val bottomPlaceable =
|
|
||||||
bottomBar?.let { bar ->
|
|
||||||
subcompose(DisappearingSlot.Bottom) {
|
|
||||||
Column(
|
|
||||||
modifier =
|
|
||||||
Modifier.graphicsLayer {
|
|
||||||
translationY = -state.bottomHeightOffset
|
|
||||||
},
|
|
||||||
) {
|
|
||||||
bar()
|
|
||||||
}
|
|
||||||
}.firstOrNull()?.measure(looseConstraints)
|
|
||||||
}
|
|
||||||
// When the bar lambda is provided but its content emits nothing (e.g. AppBottomBar
|
|
||||||
// hides itself on canPop entries, or while the keyboard is up), reserve the
|
|
||||||
// system-nav-bar inset so the FAB and content stay clear of the navigation bar instead
|
|
||||||
// of sliding under it. Subtract the IME inset: the root imePadding has already lifted the
|
|
||||||
// whole scaffold above the keyboard, and the IME inset spans the nav-bar band, so
|
|
||||||
// reserving the full nav bar on top of that would double-count and strand a gap above the
|
|
||||||
// keyboard (the `bottomBar == null` branch gets this for free via navigationBarsPadding,
|
|
||||||
// which excludes the consumed IME inset). The `bottomBar == null` case is on rootModifier.
|
|
||||||
val bottomHeight =
|
|
||||||
(bottomPlaceable?.height ?: 0).let { measured ->
|
|
||||||
if (bottomBar != null && measured == 0) {
|
|
||||||
(navBarInsets.getBottom(this) - imeInsets.getBottom(this)).coerceAtLeast(0)
|
|
||||||
} else {
|
|
||||||
measured
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Publish the measured limits so the nested-scroll connection can clamp correctly.
|
|
||||||
state.topHeightLimit = topHeight.toFloat()
|
|
||||||
state.bottomHeightLimit = bottomHeight.toFloat()
|
|
||||||
|
|
||||||
val contentPadding =
|
|
||||||
PaddingValues(
|
|
||||||
top = topHeight.toDp(),
|
|
||||||
bottom = bottomHeight.toDp(),
|
|
||||||
)
|
|
||||||
|
|
||||||
val contentPlaceable =
|
|
||||||
subcompose(DisappearingSlot.Content) {
|
|
||||||
CompositionLocalProvider(
|
|
||||||
LocalDisappearingScaffoldPadding provides contentPadding,
|
|
||||||
LocalDisappearingBarState provides state,
|
|
||||||
) {
|
|
||||||
mainContent(contentPadding)
|
|
||||||
}
|
|
||||||
}.firstOrNull()?.measure(
|
|
||||||
Constraints.fixed(layoutWidth, layoutHeight),
|
|
||||||
)
|
|
||||||
|
|
||||||
val fabPlaceable =
|
|
||||||
floatingButton?.let { fab ->
|
|
||||||
subcompose(DisappearingSlot.Fab) {
|
|
||||||
FloatingButtonHolder(state = state) { fab() }
|
|
||||||
}.firstOrNull()?.measure(looseConstraints)
|
|
||||||
}
|
|
||||||
|
|
||||||
val fabEdgePx = FabEdgePadding.roundToPx()
|
|
||||||
|
|
||||||
layout(layoutWidth, layoutHeight) {
|
|
||||||
contentPlaceable?.place(0, 0)
|
|
||||||
topPlaceable?.place(0, 0)
|
|
||||||
bottomPlaceable?.place(0, layoutHeight - bottomHeight)
|
|
||||||
if (fabPlaceable != null) {
|
|
||||||
val x = layoutWidth - fabPlaceable.width - fabEdgePx
|
|
||||||
val yBase = layoutHeight - bottomHeight - fabPlaceable.height - fabEdgePx
|
|
||||||
fabPlaceable.place(x, yBase)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Holds the floating button. Scales / fades it with the bottom-bar collapse fraction and
|
|
||||||
* rides along with the bar via graphicsLayer, so the layout pass is untouched while
|
|
||||||
* the bar animates.
|
|
||||||
*/
|
|
||||||
@Composable
|
|
||||||
private fun FloatingButtonHolder(
|
|
||||||
state: DisappearingBarState,
|
|
||||||
content: @Composable () -> Unit,
|
|
||||||
) {
|
|
||||||
Box(
|
|
||||||
modifier =
|
|
||||||
Modifier.graphicsLayer {
|
|
||||||
val visible = (1f - state.bottomCollapsedFraction).coerceAtLeast(0.001f)
|
|
||||||
scaleX = visible
|
|
||||||
scaleY = visible
|
|
||||||
alpha = visible
|
|
||||||
translationY = -state.bottomHeightOffset
|
|
||||||
},
|
|
||||||
) {
|
|
||||||
content()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Composable
|
|
||||||
private fun ResetBarsOnResume(state: DisappearingBarState) {
|
|
||||||
val lifecycleOwner = LocalLifecycleOwner.current
|
|
||||||
val scope = rememberCoroutineScope()
|
|
||||||
DisposableEffect(lifecycleOwner, state) {
|
|
||||||
val observer =
|
|
||||||
LifecycleEventObserver { _, event ->
|
|
||||||
if (event == Lifecycle.Event.ON_RESUME &&
|
|
||||||
(state.topHeightOffset != 0f || state.bottomHeightOffset != 0f)
|
|
||||||
) {
|
|
||||||
scope.launch { state.resetToVisible() }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
lifecycleOwner.lifecycle.addObserver(observer)
|
|
||||||
onDispose { lifecycleOwner.lifecycle.removeObserver(observer) }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/** Fraction at which the tracked in-app bar is considered fully settled into the hidden edge. */
|
|
||||||
private const val STATUS_BAR_HIDE_THRESHOLD = 0.999f
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Fraction the chrome must fall back below before the OS status bar reappears. Lower than
|
|
||||||
* [STATUS_BAR_HIDE_THRESHOLD] on purpose: this hysteresis gap means the finger that stops a fast
|
|
||||||
* scroll — which makes a tiny reverse reveal — does not immediately pop the status bar back. The
|
|
||||||
* user has to deliberately scroll the chrome back by ~30% before the status bar returns.
|
|
||||||
*/
|
|
||||||
private const val STATUS_BAR_SHOW_THRESHOLD = 0.7f
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Hides the OS status bar once the tracked in-app bar has settled into the hidden edge, and shows it
|
|
||||||
* the moment it starts coming back. The OS status bar is binary (cannot slide), so it is driven off
|
|
||||||
* the collapse fraction with a near-1 threshold, which means it toggles on settle rather than
|
|
||||||
* mid-drag.
|
|
||||||
*
|
|
||||||
* The status bar sits with the top in-app bar, so it tracks the top bar's collapse. The top and
|
|
||||||
* bottom bars can collapse at different rates (each clamps to its own height), so tracking the top
|
|
||||||
* fraction keeps the status bar in step with the chrome directly beneath it. On screens with no top
|
|
||||||
* bar (topHeightLimit == 0) it falls back to the bottom bar, so the status bar still hides in sync
|
|
||||||
* with the bottom navigation.
|
|
||||||
*
|
|
||||||
* Only the top status bar is touched; the bottom OS navigation bar is left alone.
|
|
||||||
* BEHAVIOR_SHOW_TRANSIENT_BARS_BY_SWIPE lets the user swipe to peek the status bar while immersed.
|
|
||||||
* The status bar is always restored on dispose so leaving an immersive screen can never strand a
|
|
||||||
* hidden bar.
|
|
||||||
*/
|
|
||||||
@Composable
|
|
||||||
private fun ImmersiveStatusBarEffect(state: DisappearingBarState) {
|
|
||||||
val view = LocalView.current
|
|
||||||
if (view.isInEditMode) return
|
|
||||||
val window = getActivityWindow() ?: return
|
|
||||||
val controller = remember(window, view) { WindowInsetsControllerCompat(window, view) }
|
|
||||||
|
|
||||||
LaunchedEffect(controller, state) {
|
|
||||||
controller.systemBarsBehavior = WindowInsetsControllerCompat.BEHAVIOR_SHOW_TRANSIENT_BARS_BY_SWIPE
|
|
||||||
var statusBarHidden = false
|
|
||||||
snapshotFlow {
|
|
||||||
if (state.topHeightLimit > 0f) state.topCollapsedFraction else state.bottomCollapsedFraction
|
|
||||||
}.distinctUntilChanged()
|
|
||||||
.collect { fraction ->
|
|
||||||
// Hysteresis: hide once fully settled, but only show again after the chrome has
|
|
||||||
// been pulled back past STATUS_BAR_SHOW_THRESHOLD. Between the two thresholds the
|
|
||||||
// status bar keeps its current state, so a stray reverse reveal can't flip it.
|
|
||||||
val shouldHide =
|
|
||||||
when {
|
|
||||||
fraction >= STATUS_BAR_HIDE_THRESHOLD -> true
|
|
||||||
fraction <= STATUS_BAR_SHOW_THRESHOLD -> false
|
|
||||||
else -> statusBarHidden
|
|
||||||
}
|
|
||||||
if (shouldHide != statusBarHidden) {
|
|
||||||
statusBarHidden = shouldHide
|
|
||||||
if (shouldHide) {
|
|
||||||
controller.hide(WindowInsetsCompat.Type.statusBars())
|
|
||||||
} else {
|
|
||||||
controller.show(WindowInsetsCompat.Type.statusBars())
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
DisposableEffect(controller) {
|
|
||||||
onDispose { controller.show(WindowInsetsCompat.Type.statusBars()) }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|||||||
+1
-2
@@ -25,8 +25,7 @@ import androidx.compose.runtime.State
|
|||||||
import androidx.compose.runtime.derivedStateOf
|
import androidx.compose.runtime.derivedStateOf
|
||||||
import androidx.compose.runtime.remember
|
import androidx.compose.runtime.remember
|
||||||
import androidx.compose.ui.platform.LocalDensity
|
import androidx.compose.ui.platform.LocalDensity
|
||||||
import com.vitorpamplona.amethyst.ui.insets.SafeImeInsets
|
import com.vitorpamplona.amethyst.commons.ui.insets.rememberSafeImeInsets
|
||||||
import com.vitorpamplona.amethyst.ui.insets.rememberSafeImeInsets
|
|
||||||
|
|
||||||
enum class KeyboardState {
|
enum class KeyboardState {
|
||||||
Opened,
|
Opened,
|
||||||
|
|||||||
+1
-1
@@ -74,12 +74,12 @@ import com.vitorpamplona.amethyst.commons.scheduledposts.ScheduledPostStatus
|
|||||||
import com.vitorpamplona.amethyst.commons.ui.components.RobohashFallbackAsyncImage
|
import com.vitorpamplona.amethyst.commons.ui.components.RobohashFallbackAsyncImage
|
||||||
import com.vitorpamplona.amethyst.commons.ui.loadPluralStringRes
|
import com.vitorpamplona.amethyst.commons.ui.loadPluralStringRes
|
||||||
import com.vitorpamplona.amethyst.commons.ui.pluralStringRes
|
import com.vitorpamplona.amethyst.commons.ui.pluralStringRes
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.richtext.CreateTextWithEmoji
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.AccountPictureModifier
|
import com.vitorpamplona.amethyst.commons.ui.theme.AccountPictureModifier
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.Size10dp
|
import com.vitorpamplona.amethyst.commons.ui.theme.Size10dp
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.Size55dp
|
import com.vitorpamplona.amethyst.commons.ui.theme.Size55dp
|
||||||
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.user.observeUserInfo
|
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.user.observeUserInfo
|
||||||
import com.vitorpamplona.amethyst.ui.components.CreateTextWithEmoji
|
|
||||||
import com.vitorpamplona.amethyst.ui.note.toShortDisplay
|
import com.vitorpamplona.amethyst.ui.note.toShortDisplay
|
||||||
import com.vitorpamplona.amethyst.ui.screen.AccountSessionManager
|
import com.vitorpamplona.amethyst.ui.screen.AccountSessionManager
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
|
|||||||
+1
-1
@@ -119,6 +119,7 @@ import com.vitorpamplona.amethyst.commons.scheduledposts.ScheduledPostStatus
|
|||||||
import com.vitorpamplona.amethyst.commons.ui.components.RobohashFallbackAsyncImage
|
import com.vitorpamplona.amethyst.commons.ui.components.RobohashFallbackAsyncImage
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.EmptyNav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.EmptyNav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.richtext.CreateTextWithEmoji
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.DividerThickness
|
import com.vitorpamplona.amethyst.commons.ui.theme.DividerThickness
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.DoubleHorzSpacer
|
import com.vitorpamplona.amethyst.commons.ui.theme.DoubleHorzSpacer
|
||||||
@@ -146,7 +147,6 @@ import com.vitorpamplona.amethyst.service.relayClient.reqCommand.event.observeNo
|
|||||||
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.user.observeUserContactCardsFollowerCount
|
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.user.observeUserContactCardsFollowerCount
|
||||||
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.user.observeUserInfo
|
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.user.observeUserInfo
|
||||||
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.user.observeUserStatuses
|
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.user.observeUserStatuses
|
||||||
import com.vitorpamplona.amethyst.ui.components.CreateTextWithEmoji
|
|
||||||
import com.vitorpamplona.amethyst.ui.layouts.PermanentDrawerWidth
|
import com.vitorpamplona.amethyst.ui.layouts.PermanentDrawerWidth
|
||||||
import com.vitorpamplona.amethyst.ui.navigation.bottombars.NavBarCatalog
|
import com.vitorpamplona.amethyst.ui.navigation.bottombars.NavBarCatalog
|
||||||
import com.vitorpamplona.amethyst.ui.navigation.bottombars.NavBarItemDef
|
import com.vitorpamplona.amethyst.ui.navigation.bottombars.NavBarItemDef
|
||||||
|
|||||||
@@ -26,9 +26,8 @@ import androidx.compose.runtime.snapshotFlow
|
|||||||
import androidx.compose.ui.platform.LocalDensity
|
import androidx.compose.ui.platform.LocalDensity
|
||||||
import androidx.compose.ui.platform.LocalFocusManager
|
import androidx.compose.ui.platform.LocalFocusManager
|
||||||
import androidx.compose.ui.platform.LocalSoftwareKeyboardController
|
import androidx.compose.ui.platform.LocalSoftwareKeyboardController
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.rememberSafeImeInsets
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.EmptyNav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.EmptyNav
|
||||||
import com.vitorpamplona.amethyst.ui.insets.SafeImeInsets
|
|
||||||
import com.vitorpamplona.amethyst.ui.insets.rememberSafeImeInsets
|
|
||||||
import kotlinx.coroutines.flow.first
|
import kotlinx.coroutines.flow.first
|
||||||
import kotlinx.coroutines.withTimeoutOrNull
|
import kotlinx.coroutines.withTimeoutOrNull
|
||||||
|
|
||||||
|
|||||||
@@ -84,6 +84,7 @@ import com.vitorpamplona.amethyst.commons.ui.note.LikedIcon
|
|||||||
import com.vitorpamplona.amethyst.commons.ui.note.RepostedIcon
|
import com.vitorpamplona.amethyst.commons.ui.note.RepostedIcon
|
||||||
import com.vitorpamplona.amethyst.commons.ui.note.ScoreTagSmall
|
import com.vitorpamplona.amethyst.commons.ui.note.ScoreTagSmall
|
||||||
import com.vitorpamplona.amethyst.commons.ui.note.ZappedIcon
|
import com.vitorpamplona.amethyst.commons.ui.note.ZappedIcon
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.richtext.InLineIconRenderer
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.BitcoinOrange
|
import com.vitorpamplona.amethyst.commons.ui.theme.BitcoinOrange
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.HalfTopPadding
|
import com.vitorpamplona.amethyst.commons.ui.theme.HalfTopPadding
|
||||||
@@ -106,7 +107,6 @@ import com.vitorpamplona.amethyst.service.relayClient.reqCommand.user.observeUse
|
|||||||
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.user.observeUserPicture
|
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.user.observeUserPicture
|
||||||
import com.vitorpamplona.amethyst.ui.components.CoreSecretMessage
|
import com.vitorpamplona.amethyst.ui.components.CoreSecretMessage
|
||||||
import com.vitorpamplona.amethyst.ui.components.ExpandableRichTextViewer
|
import com.vitorpamplona.amethyst.ui.components.ExpandableRichTextViewer
|
||||||
import com.vitorpamplona.amethyst.ui.components.InLineIconRenderer
|
|
||||||
import com.vitorpamplona.amethyst.ui.components.TranslatableRichTextViewer
|
import com.vitorpamplona.amethyst.ui.components.TranslatableRichTextViewer
|
||||||
import com.vitorpamplona.amethyst.ui.navigation.routes.authorRouteFor
|
import com.vitorpamplona.amethyst.ui.navigation.routes.authorRouteFor
|
||||||
import com.vitorpamplona.amethyst.ui.navigation.routes.routeFor
|
import com.vitorpamplona.amethyst.ui.navigation.routes.routeFor
|
||||||
|
|||||||
+1
-1
@@ -57,6 +57,7 @@ import com.vitorpamplona.amethyst.commons.resources.nip05_failed
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.nip05_verified
|
import com.vitorpamplona.amethyst.commons.resources.nip05_verified
|
||||||
import com.vitorpamplona.amethyst.commons.ui.components.ClickableTextPrimary
|
import com.vitorpamplona.amethyst.commons.ui.components.ClickableTextPrimary
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.richtext.CreateTextWithEmoji
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.Font14SP
|
import com.vitorpamplona.amethyst.commons.ui.theme.Font14SP
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.NIP05IconSize
|
import com.vitorpamplona.amethyst.commons.ui.theme.NIP05IconSize
|
||||||
@@ -70,7 +71,6 @@ import com.vitorpamplona.amethyst.service.relayClient.reqCommand.event.EventFind
|
|||||||
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.event.observeNote
|
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.event.observeNote
|
||||||
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.user.observeUserStatuses
|
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.user.observeUserStatuses
|
||||||
import com.vitorpamplona.amethyst.ui.actions.CrossfadeIfEnabled
|
import com.vitorpamplona.amethyst.ui.actions.CrossfadeIfEnabled
|
||||||
import com.vitorpamplona.amethyst.ui.components.CreateTextWithEmoji
|
|
||||||
import com.vitorpamplona.amethyst.ui.components.LoadNote
|
import com.vitorpamplona.amethyst.ui.components.LoadNote
|
||||||
import com.vitorpamplona.amethyst.ui.navigation.routes.routeFor
|
import com.vitorpamplona.amethyst.ui.navigation.routes.routeFor
|
||||||
import com.vitorpamplona.amethyst.ui.navigation.routes.routeForUser
|
import com.vitorpamplona.amethyst.ui.navigation.routes.routeForUser
|
||||||
|
|||||||
@@ -167,6 +167,7 @@ import com.vitorpamplona.amethyst.commons.ui.note.ShareIcon
|
|||||||
import com.vitorpamplona.amethyst.commons.ui.note.VoiceReplyIcon
|
import com.vitorpamplona.amethyst.commons.ui.note.VoiceReplyIcon
|
||||||
import com.vitorpamplona.amethyst.commons.ui.note.ZapIcon
|
import com.vitorpamplona.amethyst.commons.ui.note.ZapIcon
|
||||||
import com.vitorpamplona.amethyst.commons.ui.note.ZappedIcon
|
import com.vitorpamplona.amethyst.commons.ui.note.ZappedIcon
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.richtext.InLineIconRenderer
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.BitcoinOrange
|
import com.vitorpamplona.amethyst.commons.ui.theme.BitcoinOrange
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.ButtonBorder
|
import com.vitorpamplona.amethyst.commons.ui.theme.ButtonBorder
|
||||||
@@ -226,7 +227,6 @@ import com.vitorpamplona.amethyst.ui.actions.CrossfadeIfEnabled
|
|||||||
import com.vitorpamplona.amethyst.ui.actions.uploads.FloatingRecordingIndicator
|
import com.vitorpamplona.amethyst.ui.actions.uploads.FloatingRecordingIndicator
|
||||||
import com.vitorpamplona.amethyst.ui.actions.uploads.MAX_VOICE_RECORD_SECONDS
|
import com.vitorpamplona.amethyst.ui.actions.uploads.MAX_VOICE_RECORD_SECONDS
|
||||||
import com.vitorpamplona.amethyst.ui.actions.uploads.RecordAudioBox
|
import com.vitorpamplona.amethyst.ui.actions.uploads.RecordAudioBox
|
||||||
import com.vitorpamplona.amethyst.ui.components.InLineIconRenderer
|
|
||||||
import com.vitorpamplona.amethyst.ui.components.toasts.multiline.UserBasedErrorMessage
|
import com.vitorpamplona.amethyst.ui.components.toasts.multiline.UserBasedErrorMessage
|
||||||
import com.vitorpamplona.amethyst.ui.components.util.setText
|
import com.vitorpamplona.amethyst.ui.components.util.setText
|
||||||
import com.vitorpamplona.amethyst.ui.navigation.routes.routeReplyTo
|
import com.vitorpamplona.amethyst.ui.navigation.routes.routeReplyTo
|
||||||
|
|||||||
@@ -39,6 +39,7 @@ import com.vitorpamplona.amethyst.commons.resources.Res
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.and
|
import com.vitorpamplona.amethyst.commons.resources.and
|
||||||
import com.vitorpamplona.amethyst.commons.resources.replying_to
|
import com.vitorpamplona.amethyst.commons.resources.replying_to
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.richtext.CreateClickableTextWithEmoji
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.StdVertSpacer
|
import com.vitorpamplona.amethyst.commons.ui.theme.StdVertSpacer
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.lessImportantLink
|
import com.vitorpamplona.amethyst.commons.ui.theme.lessImportantLink
|
||||||
|
|||||||
+2
-2
@@ -76,9 +76,11 @@ import com.vitorpamplona.amethyst.commons.resources.Res
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.add
|
import com.vitorpamplona.amethyst.commons.resources.add
|
||||||
import com.vitorpamplona.amethyst.commons.resources.new_reaction_symbol
|
import com.vitorpamplona.amethyst.commons.resources.new_reaction_symbol
|
||||||
import com.vitorpamplona.amethyst.commons.ui.components.AnimatedBorderTextCornerRadius
|
import com.vitorpamplona.amethyst.commons.ui.components.AnimatedBorderTextCornerRadius
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.SavingTopBar
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.SavingTopBar
|
||||||
import com.vitorpamplona.amethyst.commons.ui.note.LikedIcon
|
import com.vitorpamplona.amethyst.commons.ui.note.LikedIcon
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.richtext.InLineIconRenderer
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.ButtonBorder
|
import com.vitorpamplona.amethyst.commons.ui.theme.ButtonBorder
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.StdVertSpacer
|
import com.vitorpamplona.amethyst.commons.ui.theme.StdVertSpacer
|
||||||
@@ -86,8 +88,6 @@ import com.vitorpamplona.amethyst.commons.ui.theme.placeholderText
|
|||||||
import com.vitorpamplona.amethyst.commons.util.firstFullChar
|
import com.vitorpamplona.amethyst.commons.util.firstFullChar
|
||||||
import com.vitorpamplona.amethyst.model.Account
|
import com.vitorpamplona.amethyst.model.Account
|
||||||
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.event.observeNoteEventAndMapNotNull
|
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.event.observeNoteEventAndMapNotNull
|
||||||
import com.vitorpamplona.amethyst.ui.components.InLineIconRenderer
|
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.navigation.routes.routeFor
|
import com.vitorpamplona.amethyst.ui.navigation.routes.routeFor
|
||||||
import com.vitorpamplona.amethyst.ui.note.types.RenderEmojiPack
|
import com.vitorpamplona.amethyst.ui.note.types.RenderEmojiPack
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
|
|||||||
@@ -110,6 +110,7 @@ import com.vitorpamplona.amethyst.commons.resources.zap_type_public_explainer
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.zap_type_section_explainer
|
import com.vitorpamplona.amethyst.commons.resources.zap_type_section_explainer
|
||||||
import com.vitorpamplona.amethyst.commons.ui.components.TextSpinner
|
import com.vitorpamplona.amethyst.commons.ui.components.TextSpinner
|
||||||
import com.vitorpamplona.amethyst.commons.ui.components.TitleExplainer
|
import com.vitorpamplona.amethyst.commons.ui.components.TitleExplainer
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.ButtonBorder
|
import com.vitorpamplona.amethyst.commons.ui.theme.ButtonBorder
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.SettingsCategoryFirstModifier
|
import com.vitorpamplona.amethyst.commons.ui.theme.SettingsCategoryFirstModifier
|
||||||
@@ -117,7 +118,6 @@ import com.vitorpamplona.amethyst.commons.ui.theme.SettingsCategorySpacingModifi
|
|||||||
import com.vitorpamplona.amethyst.commons.ui.theme.Size20Modifier
|
import com.vitorpamplona.amethyst.commons.ui.theme.Size20Modifier
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.ThemeComparisonRow
|
import com.vitorpamplona.amethyst.commons.ui.theme.ThemeComparisonRow
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.placeholderText
|
import com.vitorpamplona.amethyst.commons.ui.theme.placeholderText
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.keyBackup.getFragmentActivity
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.keyBackup.getFragmentActivity
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.mockAccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.mockAccountViewModel
|
||||||
|
|||||||
@@ -23,22 +23,19 @@ package com.vitorpamplona.amethyst.ui.note
|
|||||||
import android.content.Context
|
import android.content.Context
|
||||||
import androidx.compose.material3.IconButton
|
import androidx.compose.material3.IconButton
|
||||||
import androidx.compose.material3.MaterialTheme
|
import androidx.compose.material3.MaterialTheme
|
||||||
import androidx.compose.material3.Text
|
|
||||||
import androidx.compose.runtime.Composable
|
import androidx.compose.runtime.Composable
|
||||||
import androidx.compose.runtime.getValue
|
import androidx.compose.runtime.getValue
|
||||||
import androidx.compose.runtime.remember
|
|
||||||
import androidx.compose.ui.Modifier
|
import androidx.compose.ui.Modifier
|
||||||
import androidx.compose.ui.graphics.Color
|
import androidx.compose.ui.graphics.Color
|
||||||
import androidx.compose.ui.platform.LocalContext
|
import androidx.compose.ui.platform.LocalContext
|
||||||
import androidx.compose.ui.text.font.FontWeight
|
import androidx.compose.ui.text.font.FontWeight
|
||||||
import androidx.compose.ui.text.style.TextAlign
|
import androidx.compose.ui.text.style.TextAlign
|
||||||
import androidx.compose.ui.text.style.TextOverflow
|
|
||||||
import androidx.lifecycle.LifecycleOwner
|
import androidx.lifecycle.LifecycleOwner
|
||||||
import androidx.lifecycle.compose.LocalLifecycleOwner
|
import androidx.lifecycle.compose.LocalLifecycleOwner
|
||||||
import com.vitorpamplona.amethyst.commons.model.ImmutableListOfLists
|
|
||||||
import com.vitorpamplona.amethyst.commons.model.Note
|
import com.vitorpamplona.amethyst.commons.model.Note
|
||||||
import com.vitorpamplona.amethyst.commons.model.User
|
import com.vitorpamplona.amethyst.commons.model.User
|
||||||
import com.vitorpamplona.amethyst.commons.ui.note.PlayIcon
|
import com.vitorpamplona.amethyst.commons.ui.note.PlayIcon
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.note.UserNameText
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.StdButtonSizeModifier
|
import com.vitorpamplona.amethyst.commons.ui.theme.StdButtonSizeModifier
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.placeholderText
|
import com.vitorpamplona.amethyst.commons.ui.theme.placeholderText
|
||||||
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.event.observeNote
|
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.event.observeNote
|
||||||
@@ -46,7 +43,6 @@ import com.vitorpamplona.amethyst.service.relayClient.reqCommand.user.observeUse
|
|||||||
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.user.observeUserNickname
|
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.user.observeUserNickname
|
||||||
import com.vitorpamplona.amethyst.service.tts.TextToSpeechHelper
|
import com.vitorpamplona.amethyst.service.tts.TextToSpeechHelper
|
||||||
import com.vitorpamplona.amethyst.ui.actions.CrossfadeIfEnabled
|
import com.vitorpamplona.amethyst.ui.actions.CrossfadeIfEnabled
|
||||||
import com.vitorpamplona.amethyst.ui.components.CreateTextWithEmoji
|
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
import com.vitorpamplona.quartz.utils.Log
|
import com.vitorpamplona.quartz.utils.Log
|
||||||
|
|
||||||
@@ -113,55 +109,18 @@ fun UsernameDisplay(
|
|||||||
// the account's own nickname for this user wins over the user's metadata;
|
// the account's own nickname for this user wins over the user's metadata;
|
||||||
// its custom emojis resolve against the contact card's tags, not the profile's
|
// its custom emojis resolve against the contact card's tags, not the profile's
|
||||||
val petName = nickname?.petName
|
val petName = nickname?.petName
|
||||||
val name = petName ?: it?.info?.bestName()
|
UserNameText(
|
||||||
if (name != null) {
|
user = baseUser,
|
||||||
UserDisplay(name, if (petName != null) nickname?.tags else it?.tags, weight, fontWeight, textColor, textAlign)
|
displayName = petName ?: it?.info?.bestName(),
|
||||||
} else {
|
tags = if (petName != null) nickname?.tags else it?.tags,
|
||||||
NPubDisplay(baseUser, weight, fontWeight, textColor, textAlign)
|
modifier = weight,
|
||||||
}
|
fontWeight = fontWeight,
|
||||||
|
textColor = textColor,
|
||||||
|
textAlign = textAlign,
|
||||||
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Composable
|
|
||||||
private fun NPubDisplay(
|
|
||||||
user: User,
|
|
||||||
modifier: Modifier,
|
|
||||||
fontWeight: FontWeight = FontWeight.Bold,
|
|
||||||
textColor: Color = Color.Unspecified,
|
|
||||||
textAlign: TextAlign? = null,
|
|
||||||
) {
|
|
||||||
Text(
|
|
||||||
text = remember { user.pubkeyDisplayHex() },
|
|
||||||
fontWeight = fontWeight,
|
|
||||||
modifier = modifier,
|
|
||||||
maxLines = 1,
|
|
||||||
overflow = TextOverflow.Ellipsis,
|
|
||||||
color = textColor,
|
|
||||||
textAlign = textAlign,
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
@Composable
|
|
||||||
private fun UserDisplay(
|
|
||||||
bestDisplayName: String,
|
|
||||||
tags: ImmutableListOfLists<String>?,
|
|
||||||
modifier: Modifier,
|
|
||||||
fontWeight: FontWeight = FontWeight.Bold,
|
|
||||||
textColor: Color = Color.Unspecified,
|
|
||||||
textAlign: TextAlign? = null,
|
|
||||||
) {
|
|
||||||
CreateTextWithEmoji(
|
|
||||||
text = bestDisplayName,
|
|
||||||
tags = tags,
|
|
||||||
fontWeight = fontWeight,
|
|
||||||
textAlign = textAlign,
|
|
||||||
maxLines = 1,
|
|
||||||
overflow = TextOverflow.Ellipsis,
|
|
||||||
modifier = modifier,
|
|
||||||
color = textColor,
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
@Composable
|
@Composable
|
||||||
fun DrawPlayName(name: String) {
|
fun DrawPlayName(name: String) {
|
||||||
val context = LocalContext.current
|
val context = LocalContext.current
|
||||||
|
|||||||
@@ -99,6 +99,7 @@ import com.vitorpamplona.amethyst.commons.resources.zap_type_private
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.zap_type_private_explainer
|
import com.vitorpamplona.amethyst.commons.resources.zap_type_private_explainer
|
||||||
import com.vitorpamplona.amethyst.commons.resources.zap_type_public
|
import com.vitorpamplona.amethyst.commons.resources.zap_type_public
|
||||||
import com.vitorpamplona.amethyst.commons.resources.zap_type_public_explainer
|
import com.vitorpamplona.amethyst.commons.resources.zap_type_public_explainer
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.TopBarWithBackButton
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.TopBarWithBackButton
|
||||||
import com.vitorpamplona.amethyst.commons.ui.note.buttons.CloseButton
|
import com.vitorpamplona.amethyst.commons.ui.note.buttons.CloseButton
|
||||||
@@ -113,7 +114,6 @@ import com.vitorpamplona.amethyst.commons.ui.theme.placeholderText
|
|||||||
import com.vitorpamplona.amethyst.model.Account
|
import com.vitorpamplona.amethyst.model.Account
|
||||||
import com.vitorpamplona.amethyst.service.ZapPaymentHandler
|
import com.vitorpamplona.amethyst.service.ZapPaymentHandler
|
||||||
import com.vitorpamplona.amethyst.ui.components.toasts.multiline.UserBasedErrorMessage
|
import com.vitorpamplona.amethyst.ui.components.toasts.multiline.UserBasedErrorMessage
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.wallet.OnchainZapSendDialog
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.wallet.OnchainZapSendDialog
|
||||||
import com.vitorpamplona.quartz.nip01Core.core.Event
|
import com.vitorpamplona.quartz.nip01Core.core.Event
|
||||||
|
|||||||
+1
-1
@@ -95,10 +95,10 @@ import com.vitorpamplona.amethyst.commons.resources.location_picker_search_empty
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.location_picker_search_hint
|
import com.vitorpamplona.amethyst.commons.resources.location_picker_search_hint
|
||||||
import com.vitorpamplona.amethyst.commons.resources.location_picker_title
|
import com.vitorpamplona.amethyst.commons.resources.location_picker_title
|
||||||
import com.vitorpamplona.amethyst.commons.resources.location_picker_use_mine
|
import com.vitorpamplona.amethyst.commons.resources.location_picker_use_mine
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.service.location.ForwardGeolocation
|
import com.vitorpamplona.amethyst.service.location.ForwardGeolocation
|
||||||
import com.vitorpamplona.amethyst.service.location.LocationState
|
import com.vitorpamplona.amethyst.service.location.LocationState
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.chats.geohashChat.label
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.chats.geohashChat.label
|
||||||
import com.vitorpamplona.quartz.experimental.bitchat.geohash.GeohashChannelLevel
|
import com.vitorpamplona.quartz.experimental.bitchat.geohash.GeohashChannelLevel
|
||||||
import com.vitorpamplona.quartz.nip01Core.tags.geohash.GeoHash
|
import com.vitorpamplona.quartz.nip01Core.tags.geohash.GeoHash
|
||||||
|
|||||||
+1
-1
@@ -76,6 +76,7 @@ import com.vitorpamplona.amethyst.commons.resources.lightning_invoice
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.post_anonymously
|
import com.vitorpamplona.amethyst.commons.resources.post_anonymously
|
||||||
import com.vitorpamplona.amethyst.commons.resources.what_s_on_your_mind
|
import com.vitorpamplona.amethyst.commons.resources.what_s_on_your_mind
|
||||||
import com.vitorpamplona.amethyst.commons.resources.zapraiser
|
import com.vitorpamplona.amethyst.commons.resources.zapraiser
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.PostingTopBar
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.PostingTopBar
|
||||||
import com.vitorpamplona.amethyst.commons.ui.note.creators.contentWarning.ContentSensitivityExplainer
|
import com.vitorpamplona.amethyst.commons.ui.note.creators.contentWarning.ContentSensitivityExplainer
|
||||||
import com.vitorpamplona.amethyst.commons.ui.note.creators.contentWarning.MarkAsSensitiveButton
|
import com.vitorpamplona.amethyst.commons.ui.note.creators.contentWarning.MarkAsSensitiveButton
|
||||||
@@ -103,7 +104,6 @@ import com.vitorpamplona.amethyst.ui.actions.uploads.SelectedMedia
|
|||||||
import com.vitorpamplona.amethyst.ui.actions.uploads.TakePictureButton
|
import com.vitorpamplona.amethyst.ui.actions.uploads.TakePictureButton
|
||||||
import com.vitorpamplona.amethyst.ui.actions.uploads.TakeVideoButton
|
import com.vitorpamplona.amethyst.ui.actions.uploads.TakeVideoButton
|
||||||
import com.vitorpamplona.amethyst.ui.components.getActivity
|
import com.vitorpamplona.amethyst.ui.components.getActivity
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.navigation.navs.Nav
|
import com.vitorpamplona.amethyst.ui.navigation.navs.Nav
|
||||||
import com.vitorpamplona.amethyst.ui.note.BaseUserPicture
|
import com.vitorpamplona.amethyst.ui.note.BaseUserPicture
|
||||||
import com.vitorpamplona.amethyst.ui.note.NoteCompose
|
import com.vitorpamplona.amethyst.ui.note.NoteCompose
|
||||||
|
|||||||
@@ -103,11 +103,11 @@ import com.vitorpamplona.amethyst.commons.richtext.RichTextParser
|
|||||||
import com.vitorpamplona.amethyst.commons.ui.components.ClickableTextPrimary
|
import com.vitorpamplona.amethyst.commons.ui.components.ClickableTextPrimary
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.note.LinkIcon
|
import com.vitorpamplona.amethyst.commons.ui.note.LinkIcon
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.richtext.CreateTextWithEmoji
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.Size16Modifier
|
import com.vitorpamplona.amethyst.commons.ui.theme.Size16Modifier
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.placeholderText
|
import com.vitorpamplona.amethyst.commons.ui.theme.placeholderText
|
||||||
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.event.observeNote
|
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.event.observeNote
|
||||||
import com.vitorpamplona.amethyst.ui.components.CreateTextWithEmoji
|
|
||||||
import com.vitorpamplona.amethyst.ui.components.TranslatableRichTextViewer
|
import com.vitorpamplona.amethyst.ui.components.TranslatableRichTextViewer
|
||||||
import com.vitorpamplona.amethyst.ui.components.ZoomableImageDialog
|
import com.vitorpamplona.amethyst.ui.components.ZoomableImageDialog
|
||||||
import com.vitorpamplona.amethyst.ui.components.util.setText
|
import com.vitorpamplona.amethyst.ui.components.util.setText
|
||||||
|
|||||||
@@ -54,6 +54,7 @@ import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
|||||||
import com.vitorpamplona.amethyst.commons.ui.note.HighlightQuoteIndent
|
import com.vitorpamplona.amethyst.commons.ui.note.HighlightQuoteIndent
|
||||||
import com.vitorpamplona.amethyst.commons.ui.note.HighlightQuoteSpacing
|
import com.vitorpamplona.amethyst.commons.ui.note.HighlightQuoteSpacing
|
||||||
import com.vitorpamplona.amethyst.commons.ui.note.HighlightedQuote
|
import com.vitorpamplona.amethyst.commons.ui.note.HighlightedQuote
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.richtext.CreateClickableTextWithEmoji
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.ThemeComparisonColumn
|
import com.vitorpamplona.amethyst.commons.ui.theme.ThemeComparisonColumn
|
||||||
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.event.observeNote
|
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.event.observeNote
|
||||||
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.user.observeUserInfo
|
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.user.observeUserInfo
|
||||||
|
|||||||
@@ -67,6 +67,7 @@ import com.vitorpamplona.amethyst.commons.resources.profile_card_bot
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.profile_card_follows_you
|
import com.vitorpamplona.amethyst.commons.resources.profile_card_follows_you
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.note.ShowUserButton
|
import com.vitorpamplona.amethyst.commons.ui.note.ShowUserButton
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.richtext.CreateTextWithEmoji
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.Size16Modifier
|
import com.vitorpamplona.amethyst.commons.ui.theme.Size16Modifier
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.Size5dp
|
import com.vitorpamplona.amethyst.commons.ui.theme.Size5dp
|
||||||
@@ -77,7 +78,6 @@ import com.vitorpamplona.amethyst.service.relayClient.reqCommand.account.observe
|
|||||||
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.user.observeUserContactCardsFollowerCount
|
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.user.observeUserContactCardsFollowerCount
|
||||||
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.user.observeUserInfo
|
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.user.observeUserInfo
|
||||||
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.user.observeUserIsFollowing
|
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.user.observeUserIsFollowing
|
||||||
import com.vitorpamplona.amethyst.ui.components.CreateTextWithEmoji
|
|
||||||
import com.vitorpamplona.amethyst.ui.navigation.routes.routeFor
|
import com.vitorpamplona.amethyst.ui.navigation.routes.routeFor
|
||||||
import com.vitorpamplona.amethyst.ui.note.BaseUserPicture
|
import com.vitorpamplona.amethyst.ui.note.BaseUserPicture
|
||||||
import com.vitorpamplona.amethyst.ui.note.ObserveDisplayNip05Status
|
import com.vitorpamplona.amethyst.ui.note.ObserveDisplayNip05Status
|
||||||
|
|||||||
+1
-1
@@ -63,6 +63,7 @@ import com.vitorpamplona.amethyst.R
|
|||||||
import com.vitorpamplona.amethyst.commons.model.backups.BackupEventType
|
import com.vitorpamplona.amethyst.commons.model.backups.BackupEventType
|
||||||
import com.vitorpamplona.amethyst.commons.model.backups.ReplaceableBackupConflict
|
import com.vitorpamplona.amethyst.commons.model.backups.ReplaceableBackupConflict
|
||||||
import com.vitorpamplona.amethyst.commons.model.navigation.Route
|
import com.vitorpamplona.amethyst.commons.model.navigation.Route
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.TopBarWithBackButton
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.TopBarWithBackButton
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.Size35dp
|
import com.vitorpamplona.amethyst.commons.ui.theme.Size35dp
|
||||||
@@ -70,7 +71,6 @@ import com.vitorpamplona.amethyst.commons.ui.theme.placeholderText
|
|||||||
import com.vitorpamplona.amethyst.commons.util.toShortDisplay
|
import com.vitorpamplona.amethyst.commons.util.toShortDisplay
|
||||||
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.channel.observeChannel
|
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.channel.observeChannel
|
||||||
import com.vitorpamplona.amethyst.ui.components.LoadNote
|
import com.vitorpamplona.amethyst.ui.components.LoadNote
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.navigation.routes.routeFor
|
import com.vitorpamplona.amethyst.ui.navigation.routes.routeFor
|
||||||
import com.vitorpamplona.amethyst.ui.note.LoadAddressableNote
|
import com.vitorpamplona.amethyst.ui.note.LoadAddressableNote
|
||||||
import com.vitorpamplona.amethyst.ui.note.LoadPublicChatChannel
|
import com.vitorpamplona.amethyst.ui.note.LoadPublicChatChannel
|
||||||
|
|||||||
+1
-1
@@ -56,11 +56,11 @@ import com.vitorpamplona.amethyst.commons.resources.award_badge_remove_recipient
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.award_badge_search_label
|
import com.vitorpamplona.amethyst.commons.resources.award_badge_search_label
|
||||||
import com.vitorpamplona.amethyst.commons.resources.award_badge_search_placeholder
|
import com.vitorpamplona.amethyst.commons.resources.award_badge_search_placeholder
|
||||||
import com.vitorpamplona.amethyst.commons.ui.components.Nip05OrPubkeyLine
|
import com.vitorpamplona.amethyst.commons.ui.components.Nip05OrPubkeyLine
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.SavingTopBar
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.SavingTopBar
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.SuggestionListDefaultHeightPage
|
import com.vitorpamplona.amethyst.commons.ui.theme.SuggestionListDefaultHeightPage
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.note.UserPicture
|
import com.vitorpamplona.amethyst.ui.note.UserPicture
|
||||||
import com.vitorpamplona.amethyst.ui.note.creators.userSuggestions.ShowUserSuggestionList
|
import com.vitorpamplona.amethyst.ui.note.creators.userSuggestions.ShowUserSuggestionList
|
||||||
import com.vitorpamplona.amethyst.ui.note.creators.userSuggestions.UserSuggestionState
|
import com.vitorpamplona.amethyst.ui.note.creators.userSuggestions.UserSuggestionState
|
||||||
|
|||||||
+1
-1
@@ -85,6 +85,7 @@ import com.vitorpamplona.amethyst.commons.resources.strip_metadata_description
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.strip_metadata_label
|
import com.vitorpamplona.amethyst.commons.resources.strip_metadata_label
|
||||||
import com.vitorpamplona.amethyst.commons.ui.components.TextSpinner
|
import com.vitorpamplona.amethyst.commons.ui.components.TextSpinner
|
||||||
import com.vitorpamplona.amethyst.commons.ui.components.TitleExplainer
|
import com.vitorpamplona.amethyst.commons.ui.components.TitleExplainer
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.CreatingTopBar
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.CreatingTopBar
|
||||||
import com.vitorpamplona.amethyst.commons.ui.note.creators.contentWarning.SettingSwitchItem
|
import com.vitorpamplona.amethyst.commons.ui.note.creators.contentWarning.SettingSwitchItem
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
@@ -94,7 +95,6 @@ import com.vitorpamplona.amethyst.ui.actions.StrippingFailureDialog
|
|||||||
import com.vitorpamplona.amethyst.ui.actions.uploads.GallerySelect
|
import com.vitorpamplona.amethyst.ui.actions.uploads.GallerySelect
|
||||||
import com.vitorpamplona.amethyst.ui.actions.uploads.ShowImageUploadGallery
|
import com.vitorpamplona.amethyst.ui.actions.uploads.ShowImageUploadGallery
|
||||||
import com.vitorpamplona.amethyst.ui.components.SetDialogToEdgeToEdge
|
import com.vitorpamplona.amethyst.ui.components.SetDialogToEdgeToEdge
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.settings.SettingsRow
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.settings.SettingsRow
|
||||||
import kotlinx.collections.immutable.persistentListOf
|
import kotlinx.collections.immutable.persistentListOf
|
||||||
|
|||||||
+1
-1
@@ -71,6 +71,7 @@ import com.vitorpamplona.amethyst.commons.ui.components.DeletedItemsBanner
|
|||||||
import com.vitorpamplona.amethyst.commons.ui.components.M3ActionDialog
|
import com.vitorpamplona.amethyst.commons.ui.components.M3ActionDialog
|
||||||
import com.vitorpamplona.amethyst.commons.ui.components.M3ActionRow
|
import com.vitorpamplona.amethyst.commons.ui.components.M3ActionRow
|
||||||
import com.vitorpamplona.amethyst.commons.ui.components.M3ActionSection
|
import com.vitorpamplona.amethyst.commons.ui.components.M3ActionSection
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.ShorterTopAppBar
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.ShorterTopAppBar
|
||||||
import com.vitorpamplona.amethyst.commons.ui.note.ArrowBackIcon
|
import com.vitorpamplona.amethyst.commons.ui.note.ArrowBackIcon
|
||||||
@@ -79,7 +80,6 @@ import com.vitorpamplona.amethyst.commons.ui.stringRes
|
|||||||
import com.vitorpamplona.amethyst.commons.ui.theme.ButtonBorder
|
import com.vitorpamplona.amethyst.commons.ui.theme.ButtonBorder
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.StdPadding
|
import com.vitorpamplona.amethyst.commons.ui.theme.StdPadding
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.TabRowHeight
|
import com.vitorpamplona.amethyst.commons.ui.theme.TabRowHeight
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
import com.vitorpamplona.quartz.nip01Core.core.Address
|
import com.vitorpamplona.quartz.nip01Core.core.Address
|
||||||
import kotlinx.coroutines.launch
|
import kotlinx.coroutines.launch
|
||||||
|
|||||||
+1
-1
@@ -53,6 +53,7 @@ import com.vitorpamplona.amethyst.commons.resources.follow_set_edit_list_metadat
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.login_with_a_private_key_to_be_able_to_sign_events
|
import com.vitorpamplona.amethyst.commons.resources.login_with_a_private_key_to_be_able_to_sign_events
|
||||||
import com.vitorpamplona.amethyst.commons.resources.optional_picture_url
|
import com.vitorpamplona.amethyst.commons.resources.optional_picture_url
|
||||||
import com.vitorpamplona.amethyst.commons.resources.read_only_user
|
import com.vitorpamplona.amethyst.commons.resources.read_only_user
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.CreatingTopBar
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.CreatingTopBar
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.SavingTopBar
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.SavingTopBar
|
||||||
@@ -61,7 +62,6 @@ import com.vitorpamplona.amethyst.commons.ui.theme.DoubleVertSpacer
|
|||||||
import com.vitorpamplona.amethyst.commons.ui.theme.SettingsCategoryFirstModifier
|
import com.vitorpamplona.amethyst.commons.ui.theme.SettingsCategoryFirstModifier
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.placeholderText
|
import com.vitorpamplona.amethyst.commons.ui.theme.placeholderText
|
||||||
import com.vitorpamplona.amethyst.ui.actions.uploads.SelectSingleFromGallery
|
import com.vitorpamplona.amethyst.ui.actions.uploads.SelectSingleFromGallery
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.relays.SettingsCategory
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.relays.SettingsCategory
|
||||||
import com.vitorpamplona.quartz.nip01Core.signers.SignerExceptions
|
import com.vitorpamplona.quartz.nip01Core.signers.SignerExceptions
|
||||||
|
|||||||
+1
-1
@@ -42,10 +42,10 @@ import com.vitorpamplona.amethyst.commons.nip51Lists.ui.BookmarkGroupManagementI
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.Res
|
import com.vitorpamplona.amethyst.commons.resources.Res
|
||||||
import com.vitorpamplona.amethyst.commons.resources.article_bookmark_management_title
|
import com.vitorpamplona.amethyst.commons.resources.article_bookmark_management_title
|
||||||
import com.vitorpamplona.amethyst.commons.resources.bookmarks_title
|
import com.vitorpamplona.amethyst.commons.resources.bookmarks_title
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.TopBarWithBackButton
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.TopBarWithBackButton
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.navigation.bottombars.FabBottomBarPadded
|
import com.vitorpamplona.amethyst.ui.navigation.bottombars.FabBottomBarPadded
|
||||||
import com.vitorpamplona.amethyst.ui.note.LoadAddressableNote
|
import com.vitorpamplona.amethyst.ui.note.LoadAddressableNote
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
|
|||||||
+1
-1
@@ -42,11 +42,11 @@ import com.vitorpamplona.amethyst.commons.nip51Lists.ui.BookmarkGroupManagementI
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.Res
|
import com.vitorpamplona.amethyst.commons.resources.Res
|
||||||
import com.vitorpamplona.amethyst.commons.resources.bookmarks_title
|
import com.vitorpamplona.amethyst.commons.resources.bookmarks_title
|
||||||
import com.vitorpamplona.amethyst.commons.resources.post_bookmark_management_title
|
import com.vitorpamplona.amethyst.commons.resources.post_bookmark_management_title
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.TopBarWithBackButton
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.TopBarWithBackButton
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.ui.components.LoadNote
|
import com.vitorpamplona.amethyst.ui.components.LoadNote
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.navigation.bottombars.FabBottomBarPadded
|
import com.vitorpamplona.amethyst.ui.navigation.bottombars.FabBottomBarPadded
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.lists.list.NewListButton
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.lists.list.NewListButton
|
||||||
|
|||||||
+1
-1
@@ -68,10 +68,10 @@ import com.vitorpamplona.amethyst.commons.resources.calendar_untitled
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.cancel
|
import com.vitorpamplona.amethyst.commons.resources.cancel
|
||||||
import com.vitorpamplona.amethyst.commons.resources.edit_calendar_collection
|
import com.vitorpamplona.amethyst.commons.resources.edit_calendar_collection
|
||||||
import com.vitorpamplona.amethyst.commons.resources.new_calendar_collection
|
import com.vitorpamplona.amethyst.commons.resources.new_calendar_collection
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.SavingTopBar
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.SavingTopBar
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.calendars.formatLongDate
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.calendars.formatLongDate
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -78,12 +78,12 @@ import com.vitorpamplona.amethyst.commons.resources.calendar_event_summary
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.calendar_event_title
|
import com.vitorpamplona.amethyst.commons.resources.calendar_event_title
|
||||||
import com.vitorpamplona.amethyst.commons.resources.edit_calendar_event
|
import com.vitorpamplona.amethyst.commons.resources.edit_calendar_event
|
||||||
import com.vitorpamplona.amethyst.commons.resources.new_calendar_event
|
import com.vitorpamplona.amethyst.commons.resources.new_calendar_event
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.SavingTopBar
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.SavingTopBar
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.Size30dp
|
import com.vitorpamplona.amethyst.commons.ui.theme.Size30dp
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.SuggestionListDefaultHeightChat
|
import com.vitorpamplona.amethyst.commons.ui.theme.SuggestionListDefaultHeightChat
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.note.ClickableUserPicture
|
import com.vitorpamplona.amethyst.ui.note.ClickableUserPicture
|
||||||
import com.vitorpamplona.amethyst.ui.note.UsernameDisplay
|
import com.vitorpamplona.amethyst.ui.note.UsernameDisplay
|
||||||
import com.vitorpamplona.amethyst.ui.note.creators.userSuggestions.ShowUserSuggestionList
|
import com.vitorpamplona.amethyst.ui.note.creators.userSuggestions.ShowUserSuggestionList
|
||||||
|
|||||||
+1
-1
@@ -89,6 +89,7 @@ import com.vitorpamplona.amethyst.commons.resources.calendar_share_nostr_title
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.calendar_untitled
|
import com.vitorpamplona.amethyst.commons.resources.calendar_untitled
|
||||||
import com.vitorpamplona.amethyst.commons.resources.edit_calendar_event
|
import com.vitorpamplona.amethyst.commons.resources.edit_calendar_event
|
||||||
import com.vitorpamplona.amethyst.commons.resources.route_calendar_event_detail
|
import com.vitorpamplona.amethyst.commons.resources.route_calendar_event_detail
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.pluralStringRes
|
import com.vitorpamplona.amethyst.commons.ui.pluralStringRes
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
@@ -96,7 +97,6 @@ import com.vitorpamplona.amethyst.commons.ui.theme.Size30dp
|
|||||||
import com.vitorpamplona.amethyst.commons.ui.theme.Size35dp
|
import com.vitorpamplona.amethyst.commons.ui.theme.Size35dp
|
||||||
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.event.observeNote
|
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.event.observeNote
|
||||||
import com.vitorpamplona.amethyst.ui.components.MyAsyncImage
|
import com.vitorpamplona.amethyst.ui.components.MyAsyncImage
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.note.ClickableUserPicture
|
import com.vitorpamplona.amethyst.ui.note.ClickableUserPicture
|
||||||
import com.vitorpamplona.amethyst.ui.note.ReactionsRow
|
import com.vitorpamplona.amethyst.ui.note.ReactionsRow
|
||||||
import com.vitorpamplona.amethyst.ui.note.UsernameDisplay
|
import com.vitorpamplona.amethyst.ui.note.UsernameDisplay
|
||||||
|
|||||||
+1
-1
@@ -65,6 +65,7 @@ import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
|||||||
import com.vitorpamplona.amethyst.commons.ui.note.LikedIcon
|
import com.vitorpamplona.amethyst.commons.ui.note.LikedIcon
|
||||||
import com.vitorpamplona.amethyst.commons.ui.note.ZappedIcon
|
import com.vitorpamplona.amethyst.commons.ui.note.ZappedIcon
|
||||||
import com.vitorpamplona.amethyst.commons.ui.pluralStringRes
|
import com.vitorpamplona.amethyst.commons.ui.pluralStringRes
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.richtext.InLineIconRenderer
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.ButtonBorder
|
import com.vitorpamplona.amethyst.commons.ui.theme.ButtonBorder
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.Font12SP
|
import com.vitorpamplona.amethyst.commons.ui.theme.Font12SP
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.Size14Modifier
|
import com.vitorpamplona.amethyst.commons.ui.theme.Size14Modifier
|
||||||
@@ -74,7 +75,6 @@ import com.vitorpamplona.amethyst.commons.ui.theme.subtleBorder
|
|||||||
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.event.observeNoteMinichatReplyCount
|
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.event.observeNoteMinichatReplyCount
|
||||||
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.event.observeNoteReactions
|
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.event.observeNoteReactions
|
||||||
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.event.observeNoteZaps
|
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.event.observeNoteZaps
|
||||||
import com.vitorpamplona.amethyst.ui.components.InLineIconRenderer
|
|
||||||
import com.vitorpamplona.amethyst.ui.note.ObserveZapAmountText
|
import com.vitorpamplona.amethyst.ui.note.ObserveZapAmountText
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
import com.vitorpamplona.quartz.nip30CustomEmoji.CustomEmoji
|
import com.vitorpamplona.quartz.nip30CustomEmoji.CustomEmoji
|
||||||
|
|||||||
+1
-1
@@ -34,12 +34,12 @@ import com.vitorpamplona.amethyst.commons.model.Note
|
|||||||
import com.vitorpamplona.amethyst.commons.model.User
|
import com.vitorpamplona.amethyst.commons.model.User
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.note.FollowingIcon
|
import com.vitorpamplona.amethyst.commons.ui.note.FollowingIcon
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.richtext.CreateTextWithEmoji
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.Size20dp
|
import com.vitorpamplona.amethyst.commons.ui.theme.Size20dp
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.Size5Modifier
|
import com.vitorpamplona.amethyst.commons.ui.theme.Size5Modifier
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.isLight
|
import com.vitorpamplona.amethyst.commons.ui.theme.isLight
|
||||||
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.user.observeUserInfo
|
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.user.observeUserInfo
|
||||||
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.user.observeUserNickname
|
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.user.observeUserNickname
|
||||||
import com.vitorpamplona.amethyst.ui.components.CreateTextWithEmoji
|
|
||||||
import com.vitorpamplona.amethyst.ui.note.InnerUserPicture
|
import com.vitorpamplona.amethyst.ui.note.InnerUserPicture
|
||||||
import com.vitorpamplona.amethyst.ui.note.ObserveAndRenderUserCards
|
import com.vitorpamplona.amethyst.ui.note.ObserveAndRenderUserCards
|
||||||
import com.vitorpamplona.amethyst.ui.note.WatchUserFollows
|
import com.vitorpamplona.amethyst.ui.note.WatchUserFollows
|
||||||
|
|||||||
+1
-1
@@ -66,11 +66,11 @@ import com.vitorpamplona.amethyst.commons.model.geohashChat.GeohashChatChannel
|
|||||||
import com.vitorpamplona.amethyst.commons.search.SearchSeed
|
import com.vitorpamplona.amethyst.commons.search.SearchSeed
|
||||||
import com.vitorpamplona.amethyst.commons.ui.components.RobohashFallbackAsyncImage
|
import com.vitorpamplona.amethyst.commons.ui.components.RobohashFallbackAsyncImage
|
||||||
import com.vitorpamplona.amethyst.commons.ui.feeds.WatchLifecycleAndUpdateModel
|
import com.vitorpamplona.amethyst.commons.ui.feeds.WatchLifecycleAndUpdateModel
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.TopBarExtensibleWithBackButton
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.TopBarExtensibleWithBackButton
|
||||||
import com.vitorpamplona.amethyst.service.location.LocationState
|
import com.vitorpamplona.amethyst.service.location.LocationState
|
||||||
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.user.observeUserPicture
|
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.user.observeUserPicture
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.layouts.DisappearingScaffold
|
import com.vitorpamplona.amethyst.ui.layouts.DisappearingScaffold
|
||||||
import com.vitorpamplona.amethyst.ui.navigation.topbars.SearchTopBarAction
|
import com.vitorpamplona.amethyst.ui.navigation.topbars.SearchTopBarAction
|
||||||
import com.vitorpamplona.amethyst.ui.note.creators.location.LoadCityName
|
import com.vitorpamplona.amethyst.ui.note.creators.location.LoadCityName
|
||||||
|
|||||||
+1
-1
@@ -63,10 +63,10 @@ import com.vitorpamplona.amethyst.Amethyst
|
|||||||
import com.vitorpamplona.amethyst.commons.icons.symbols.MaterialSymbol
|
import com.vitorpamplona.amethyst.commons.icons.symbols.MaterialSymbol
|
||||||
import com.vitorpamplona.amethyst.commons.icons.symbols.MaterialSymbols
|
import com.vitorpamplona.amethyst.commons.icons.symbols.MaterialSymbols
|
||||||
import com.vitorpamplona.amethyst.commons.model.navigation.Route
|
import com.vitorpamplona.amethyst.commons.model.navigation.Route
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.TopBarExtensibleWithBackButton
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.TopBarExtensibleWithBackButton
|
||||||
import com.vitorpamplona.amethyst.service.location.LocationState
|
import com.vitorpamplona.amethyst.service.location.LocationState
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.note.creators.location.LoadCityName
|
import com.vitorpamplona.amethyst.ui.note.creators.location.LoadCityName
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
import com.vitorpamplona.quartz.experimental.bitchat.geohash.GeohashChannelLevel
|
import com.vitorpamplona.quartz.experimental.bitchat.geohash.GeohashChannelLevel
|
||||||
|
|||||||
+1
-1
@@ -58,12 +58,12 @@ import com.vitorpamplona.amethyst.commons.resources.marmot_keypackage_relays_not
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.marmot_keypackage_relays_not_set_title
|
import com.vitorpamplona.amethyst.commons.resources.marmot_keypackage_relays_not_set_title
|
||||||
import com.vitorpamplona.amethyst.commons.resources.marmot_skip_for_now
|
import com.vitorpamplona.amethyst.commons.resources.marmot_skip_for_now
|
||||||
import com.vitorpamplona.amethyst.commons.resources.marmot_use_outbox_relays
|
import com.vitorpamplona.amethyst.commons.resources.marmot_use_outbox_relays
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.loadStringRes
|
import com.vitorpamplona.amethyst.commons.ui.loadStringRes
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.CreatingTopBar
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.CreatingTopBar
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.ui.actions.uploads.SelectedMedia
|
import com.vitorpamplona.amethyst.ui.actions.uploads.SelectedMedia
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.chats.marmotGroup.send.MarmotGroupIconChange
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.chats.marmotGroup.send.MarmotGroupIconChange
|
||||||
import com.vitorpamplona.quartz.nip01Core.core.toHexKey
|
import com.vitorpamplona.quartz.nip01Core.core.toHexKey
|
||||||
|
|||||||
+1
-1
@@ -56,12 +56,12 @@ import com.vitorpamplona.amethyst.commons.resources.marmot_group_name
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.marmot_group_name_placeholder
|
import com.vitorpamplona.amethyst.commons.resources.marmot_group_name_placeholder
|
||||||
import com.vitorpamplona.amethyst.commons.resources.marmot_legacy_group_no_avatar_url
|
import com.vitorpamplona.amethyst.commons.resources.marmot_legacy_group_no_avatar_url
|
||||||
import com.vitorpamplona.amethyst.commons.resources.save
|
import com.vitorpamplona.amethyst.commons.resources.save
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.loadStringRes
|
import com.vitorpamplona.amethyst.commons.ui.loadStringRes
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.ActionTopBar
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.ActionTopBar
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.ui.actions.uploads.SelectedMedia
|
import com.vitorpamplona.amethyst.ui.actions.uploads.SelectedMedia
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.chats.marmotGroup.send.MarmotGroupIconChange
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.chats.marmotGroup.send.MarmotGroupIconChange
|
||||||
import com.vitorpamplona.quartz.nip01Core.core.HexKey
|
import com.vitorpamplona.quartz.nip01Core.core.HexKey
|
||||||
|
|||||||
+1
-1
@@ -127,6 +127,7 @@ import com.vitorpamplona.amethyst.commons.resources.marmot_unknown_error
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.marmot_user_fallback_name
|
import com.vitorpamplona.amethyst.commons.resources.marmot_user_fallback_name
|
||||||
import com.vitorpamplona.amethyst.commons.resources.members
|
import com.vitorpamplona.amethyst.commons.resources.members
|
||||||
import com.vitorpamplona.amethyst.commons.resources.remove
|
import com.vitorpamplona.amethyst.commons.resources.remove
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.loadStringRes
|
import com.vitorpamplona.amethyst.commons.ui.loadStringRes
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.pluralStringRes
|
import com.vitorpamplona.amethyst.commons.ui.pluralStringRes
|
||||||
@@ -138,7 +139,6 @@ import com.vitorpamplona.amethyst.commons.ui.theme.placeholderText
|
|||||||
import com.vitorpamplona.amethyst.commons.ui.theme.ripple24dp
|
import com.vitorpamplona.amethyst.commons.ui.theme.ripple24dp
|
||||||
import com.vitorpamplona.amethyst.model.nip11RelayInfo.loadRelayInfo
|
import com.vitorpamplona.amethyst.model.nip11RelayInfo.loadRelayInfo
|
||||||
import com.vitorpamplona.amethyst.ui.components.util.setText
|
import com.vitorpamplona.amethyst.ui.components.util.setText
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.note.RenderRelayIcon
|
import com.vitorpamplona.amethyst.ui.note.RenderRelayIcon
|
||||||
import com.vitorpamplona.amethyst.ui.note.UserPicture
|
import com.vitorpamplona.amethyst.ui.note.UserPicture
|
||||||
import com.vitorpamplona.amethyst.ui.note.creators.userSuggestions.ShowUserSuggestionList
|
import com.vitorpamplona.amethyst.ui.note.creators.userSuggestions.ShowUserSuggestionList
|
||||||
|
|||||||
+1
-1
@@ -65,6 +65,7 @@ import com.vitorpamplona.amethyst.commons.resources.chat_minichat_title
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.chat_send_image_title
|
import com.vitorpamplona.amethyst.commons.resources.chat_send_image_title
|
||||||
import com.vitorpamplona.amethyst.commons.resources.concord_open_channel
|
import com.vitorpamplona.amethyst.commons.resources.concord_open_channel
|
||||||
import com.vitorpamplona.amethyst.commons.resources.reply_here
|
import com.vitorpamplona.amethyst.commons.resources.reply_here
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.EditFieldBorder
|
import com.vitorpamplona.amethyst.commons.ui.theme.EditFieldBorder
|
||||||
@@ -75,7 +76,6 @@ import com.vitorpamplona.amethyst.service.relayClient.reqCommand.event.EventFind
|
|||||||
import com.vitorpamplona.amethyst.ui.actions.uploads.SelectFromGallery
|
import com.vitorpamplona.amethyst.ui.actions.uploads.SelectFromGallery
|
||||||
import com.vitorpamplona.amethyst.ui.actions.uploads.SelectedMedia
|
import com.vitorpamplona.amethyst.ui.actions.uploads.SelectedMedia
|
||||||
import com.vitorpamplona.amethyst.ui.components.ThinPaddingTextField
|
import com.vitorpamplona.amethyst.ui.components.ThinPaddingTextField
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.chats.feed.ChatroomMessageCompose
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.chats.feed.ChatroomMessageCompose
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.chats.feed.LocalSuppressReplyToNoteId
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.chats.feed.LocalSuppressReplyToNoteId
|
||||||
|
|||||||
+1
-1
@@ -30,9 +30,9 @@ import androidx.compose.ui.text.font.FontWeight
|
|||||||
import androidx.compose.ui.text.style.TextOverflow
|
import androidx.compose.ui.text.style.TextOverflow
|
||||||
import androidx.lifecycle.compose.collectAsStateWithLifecycle
|
import androidx.lifecycle.compose.collectAsStateWithLifecycle
|
||||||
import com.vitorpamplona.amethyst.commons.model.User
|
import com.vitorpamplona.amethyst.commons.model.User
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.richtext.CreateTextWithEmoji
|
||||||
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.user.observeUserInfo
|
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.user.observeUserInfo
|
||||||
import com.vitorpamplona.amethyst.ui.actions.CrossfadeIfEnabled
|
import com.vitorpamplona.amethyst.ui.actions.CrossfadeIfEnabled
|
||||||
import com.vitorpamplona.amethyst.ui.components.CreateTextWithEmoji
|
|
||||||
import com.vitorpamplona.amethyst.ui.note.UsernameDisplay
|
import com.vitorpamplona.amethyst.ui.note.UsernameDisplay
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.chats.rooms.LoadUser
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.chats.rooms.LoadUser
|
||||||
|
|||||||
+1
-1
@@ -89,6 +89,7 @@ import com.vitorpamplona.amethyst.commons.richtext.EncryptedMediaUrlVideo
|
|||||||
import com.vitorpamplona.amethyst.commons.richtext.MediaUrlImage
|
import com.vitorpamplona.amethyst.commons.richtext.MediaUrlImage
|
||||||
import com.vitorpamplona.amethyst.commons.richtext.MediaUrlVideo
|
import com.vitorpamplona.amethyst.commons.richtext.MediaUrlVideo
|
||||||
import com.vitorpamplona.amethyst.commons.richtext.RichTextParser
|
import com.vitorpamplona.amethyst.commons.richtext.RichTextParser
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.PostingTopBar
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.PostingTopBar
|
||||||
import com.vitorpamplona.amethyst.commons.ui.note.creators.contentWarning.ContentSensitivityExplainer
|
import com.vitorpamplona.amethyst.commons.ui.note.creators.contentWarning.ContentSensitivityExplainer
|
||||||
@@ -121,7 +122,6 @@ import com.vitorpamplona.amethyst.ui.actions.uploads.TakePictureButton
|
|||||||
import com.vitorpamplona.amethyst.ui.actions.uploads.TakeVideoButton
|
import com.vitorpamplona.amethyst.ui.actions.uploads.TakeVideoButton
|
||||||
import com.vitorpamplona.amethyst.ui.components.ThinPaddingTextField
|
import com.vitorpamplona.amethyst.ui.components.ThinPaddingTextField
|
||||||
import com.vitorpamplona.amethyst.ui.components.ZoomableContentView
|
import com.vitorpamplona.amethyst.ui.components.ZoomableContentView
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.navigation.navs.Nav
|
import com.vitorpamplona.amethyst.ui.navigation.navs.Nav
|
||||||
import com.vitorpamplona.amethyst.ui.navigation.routes.routeToMessage
|
import com.vitorpamplona.amethyst.ui.navigation.routes.routeToMessage
|
||||||
import com.vitorpamplona.amethyst.ui.note.BaseUserPicture
|
import com.vitorpamplona.amethyst.ui.note.BaseUserPicture
|
||||||
|
|||||||
+1
-1
@@ -77,6 +77,7 @@ import com.vitorpamplona.amethyst.commons.ui.feeds.RelayReachMarkers
|
|||||||
import com.vitorpamplona.amethyst.commons.ui.feeds.RelayReachSentinels
|
import com.vitorpamplona.amethyst.commons.ui.feeds.RelayReachSentinels
|
||||||
import com.vitorpamplona.amethyst.commons.ui.feeds.RelayReachState
|
import com.vitorpamplona.amethyst.commons.ui.feeds.RelayReachState
|
||||||
import com.vitorpamplona.amethyst.commons.ui.feeds.WatchLifecycleAndUpdateModel
|
import com.vitorpamplona.amethyst.commons.ui.feeds.WatchLifecycleAndUpdateModel
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.DoubleVertSpacer
|
import com.vitorpamplona.amethyst.commons.ui.theme.DoubleVertSpacer
|
||||||
@@ -91,7 +92,6 @@ import com.vitorpamplona.amethyst.ui.actions.UrlUserTagOutputTransformation
|
|||||||
import com.vitorpamplona.amethyst.ui.actions.uploads.SelectFromGallery
|
import com.vitorpamplona.amethyst.ui.actions.uploads.SelectFromGallery
|
||||||
import com.vitorpamplona.amethyst.ui.actions.uploads.SelectedMedia
|
import com.vitorpamplona.amethyst.ui.actions.uploads.SelectedMedia
|
||||||
import com.vitorpamplona.amethyst.ui.components.ThinPaddingTextField
|
import com.vitorpamplona.amethyst.ui.components.ThinPaddingTextField
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.note.creators.emojiSuggestions.WatchAndLoadMyEmojiList
|
import com.vitorpamplona.amethyst.ui.note.creators.emojiSuggestions.WatchAndLoadMyEmojiList
|
||||||
import com.vitorpamplona.amethyst.ui.note.creators.userSuggestions.ShowUserSuggestionList
|
import com.vitorpamplona.amethyst.ui.note.creators.userSuggestions.ShowUserSuggestionList
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
|
|||||||
+1
-1
@@ -47,6 +47,7 @@ import com.vitorpamplona.amethyst.commons.resources.my_awesome_group
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.relay_chat
|
import com.vitorpamplona.amethyst.commons.resources.relay_chat
|
||||||
import com.vitorpamplona.amethyst.commons.resources.relay_chat_explainer
|
import com.vitorpamplona.amethyst.commons.resources.relay_chat_explainer
|
||||||
import com.vitorpamplona.amethyst.commons.resources.relay_chat_title
|
import com.vitorpamplona.amethyst.commons.resources.relay_chat_title
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.EmptyNav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.EmptyNav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.PostingTopBar
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.PostingTopBar
|
||||||
@@ -55,7 +56,6 @@ import com.vitorpamplona.amethyst.commons.ui.theme.DoubleVertSpacer
|
|||||||
import com.vitorpamplona.amethyst.commons.ui.theme.SettingsCategoryFirstModifier
|
import com.vitorpamplona.amethyst.commons.ui.theme.SettingsCategoryFirstModifier
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.ThemeComparisonColumn
|
import com.vitorpamplona.amethyst.commons.ui.theme.ThemeComparisonColumn
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.placeholderText
|
import com.vitorpamplona.amethyst.commons.ui.theme.placeholderText
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.navigation.routes.routeFor
|
import com.vitorpamplona.amethyst.ui.navigation.routes.routeFor
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.mockAccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.mockAccountViewModel
|
||||||
|
|||||||
+1
-1
@@ -52,6 +52,7 @@ import com.vitorpamplona.amethyst.commons.resources.groups_no_descriptor
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.owner
|
import com.vitorpamplona.amethyst.commons.resources.owner
|
||||||
import com.vitorpamplona.amethyst.commons.ui.components.RobohashFallbackAsyncImage
|
import com.vitorpamplona.amethyst.commons.ui.components.RobohashFallbackAsyncImage
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.richtext.CreateTextWithEmoji
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.DoubleHorzSpacer
|
import com.vitorpamplona.amethyst.commons.ui.theme.DoubleHorzSpacer
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.Size25dp
|
import com.vitorpamplona.amethyst.commons.ui.theme.Size25dp
|
||||||
@@ -59,7 +60,6 @@ import com.vitorpamplona.amethyst.commons.ui.theme.StdVertSpacer
|
|||||||
import com.vitorpamplona.amethyst.commons.ui.theme.largeProfilePictureModifier
|
import com.vitorpamplona.amethyst.commons.ui.theme.largeProfilePictureModifier
|
||||||
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.channel.observeChannel
|
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.channel.observeChannel
|
||||||
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.user.observeUserIsFollowingChannel
|
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.user.observeUserIsFollowingChannel
|
||||||
import com.vitorpamplona.amethyst.ui.components.CreateTextWithEmoji
|
|
||||||
import com.vitorpamplona.amethyst.ui.components.LoadNote
|
import com.vitorpamplona.amethyst.ui.components.LoadNote
|
||||||
import com.vitorpamplona.amethyst.ui.components.TranslatableRichTextViewer
|
import com.vitorpamplona.amethyst.ui.components.TranslatableRichTextViewer
|
||||||
import com.vitorpamplona.amethyst.ui.note.NoteAuthorPicture
|
import com.vitorpamplona.amethyst.ui.note.NoteAuthorPicture
|
||||||
|
|||||||
+1
-1
@@ -60,6 +60,7 @@ import com.vitorpamplona.amethyst.commons.resources.public_chat_relays_explainer
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.public_chat_relays_title
|
import com.vitorpamplona.amethyst.commons.resources.public_chat_relays_title
|
||||||
import com.vitorpamplona.amethyst.commons.resources.public_chat_title
|
import com.vitorpamplona.amethyst.commons.resources.public_chat_title
|
||||||
import com.vitorpamplona.amethyst.commons.resources.read_only_user
|
import com.vitorpamplona.amethyst.commons.resources.read_only_user
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.EmptyNav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.EmptyNav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.CreatingTopBar
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.CreatingTopBar
|
||||||
@@ -72,7 +73,6 @@ import com.vitorpamplona.amethyst.commons.ui.theme.SettingsCategorySpacingModifi
|
|||||||
import com.vitorpamplona.amethyst.commons.ui.theme.ThemeComparisonColumn
|
import com.vitorpamplona.amethyst.commons.ui.theme.ThemeComparisonColumn
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.placeholderText
|
import com.vitorpamplona.amethyst.commons.ui.theme.placeholderText
|
||||||
import com.vitorpamplona.amethyst.ui.actions.uploads.SelectSingleFromGallery
|
import com.vitorpamplona.amethyst.ui.actions.uploads.SelectSingleFromGallery
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.navigation.routes.routeFor
|
import com.vitorpamplona.amethyst.ui.navigation.routes.routeFor
|
||||||
import com.vitorpamplona.amethyst.ui.note.LoadPublicChatChannel
|
import com.vitorpamplona.amethyst.ui.note.LoadPublicChatChannel
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
|
|||||||
+1
-1
@@ -87,13 +87,13 @@ import com.vitorpamplona.amethyst.commons.resources.relay_group_remove_user
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.relay_group_remove_user_confirm
|
import com.vitorpamplona.amethyst.commons.resources.relay_group_remove_user_confirm
|
||||||
import com.vitorpamplona.amethyst.commons.resources.relay_group_role_admin
|
import com.vitorpamplona.amethyst.commons.resources.relay_group_role_admin
|
||||||
import com.vitorpamplona.amethyst.commons.resources.relay_group_role_moderator
|
import com.vitorpamplona.amethyst.commons.resources.relay_group_role_moderator
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.TopBarExtensibleWithBackButton
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.TopBarExtensibleWithBackButton
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.Size35dp
|
import com.vitorpamplona.amethyst.commons.ui.theme.Size35dp
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.SuggestionListDefaultHeightChat
|
import com.vitorpamplona.amethyst.commons.ui.theme.SuggestionListDefaultHeightChat
|
||||||
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.channel.observeChannel
|
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.channel.observeChannel
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.note.UserPicture
|
import com.vitorpamplona.amethyst.ui.note.UserPicture
|
||||||
import com.vitorpamplona.amethyst.ui.note.UsernameDisplay
|
import com.vitorpamplona.amethyst.ui.note.UsernameDisplay
|
||||||
import com.vitorpamplona.amethyst.ui.note.creators.userSuggestions.ShowUserSuggestionList
|
import com.vitorpamplona.amethyst.ui.note.creators.userSuggestions.ShowUserSuggestionList
|
||||||
|
|||||||
+1
-1
@@ -103,12 +103,12 @@ import com.vitorpamplona.amethyst.commons.resources.relay_group_relay_no_nip29
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.relay_group_section_discovery
|
import com.vitorpamplona.amethyst.commons.resources.relay_group_section_discovery
|
||||||
import com.vitorpamplona.amethyst.commons.resources.relay_group_section_discovery_desc
|
import com.vitorpamplona.amethyst.commons.resources.relay_group_section_discovery_desc
|
||||||
import com.vitorpamplona.amethyst.commons.resources.relay_group_section_permissions
|
import com.vitorpamplona.amethyst.commons.resources.relay_group_section_permissions
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.CreatingTopBar
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.CreatingTopBar
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.SavingTopBar
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.SavingTopBar
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.ui.actions.uploads.GallerySelectSingle
|
import com.vitorpamplona.amethyst.ui.actions.uploads.GallerySelectSingle
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.note.creators.location.GeohashLocationPickerDialog
|
import com.vitorpamplona.amethyst.ui.note.creators.location.GeohashLocationPickerDialog
|
||||||
import com.vitorpamplona.amethyst.ui.note.creators.location.LoadCityName
|
import com.vitorpamplona.amethyst.ui.note.creators.location.LoadCityName
|
||||||
import com.vitorpamplona.amethyst.ui.note.creators.location.LocationPreviewMap
|
import com.vitorpamplona.amethyst.ui.note.creators.location.LocationPreviewMap
|
||||||
|
|||||||
+1
-1
@@ -38,10 +38,10 @@ import com.google.accompanist.adaptive.calculateDisplayFeatures
|
|||||||
import com.vitorpamplona.amethyst.commons.chats.ui.ChannelFabColumn
|
import com.vitorpamplona.amethyst.commons.chats.ui.ChannelFabColumn
|
||||||
import com.vitorpamplona.amethyst.commons.feeds.FeedContentState
|
import com.vitorpamplona.amethyst.commons.feeds.FeedContentState
|
||||||
import com.vitorpamplona.amethyst.commons.model.navigation.Route
|
import com.vitorpamplona.amethyst.commons.model.navigation.Route
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.Size20dp
|
import com.vitorpamplona.amethyst.commons.ui.theme.Size20dp
|
||||||
import com.vitorpamplona.amethyst.ui.components.getActivity
|
import com.vitorpamplona.amethyst.ui.components.getActivity
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.navigation.bottombars.AppBottomBar
|
import com.vitorpamplona.amethyst.ui.navigation.bottombars.AppBottomBar
|
||||||
import com.vitorpamplona.amethyst.ui.navigation.topbars.AmethystClickableIcon
|
import com.vitorpamplona.amethyst.ui.navigation.topbars.AmethystClickableIcon
|
||||||
import com.vitorpamplona.amethyst.ui.navigation.topbars.UserDrawerSearchTopBar
|
import com.vitorpamplona.amethyst.ui.navigation.topbars.UserDrawerSearchTopBar
|
||||||
|
|||||||
+1
-1
@@ -74,6 +74,7 @@ import com.vitorpamplona.amethyst.commons.resources.strip_metadata_description
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.strip_metadata_label
|
import com.vitorpamplona.amethyst.commons.resources.strip_metadata_label
|
||||||
import com.vitorpamplona.amethyst.commons.ui.components.TextSpinner
|
import com.vitorpamplona.amethyst.commons.ui.components.TextSpinner
|
||||||
import com.vitorpamplona.amethyst.commons.ui.components.TitleExplainer
|
import com.vitorpamplona.amethyst.commons.ui.components.TitleExplainer
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.ShorterTopAppBar
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.ShorterTopAppBar
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.TitleIconModifier
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.TitleIconModifier
|
||||||
@@ -84,7 +85,6 @@ import com.vitorpamplona.amethyst.commons.ui.theme.Size5dp
|
|||||||
import com.vitorpamplona.amethyst.commons.ui.theme.placeholderText
|
import com.vitorpamplona.amethyst.commons.ui.theme.placeholderText
|
||||||
import com.vitorpamplona.amethyst.ui.actions.uploads.ShowImageUploadGallery
|
import com.vitorpamplona.amethyst.ui.actions.uploads.ShowImageUploadGallery
|
||||||
import com.vitorpamplona.amethyst.ui.components.SetDialogToEdgeToEdge
|
import com.vitorpamplona.amethyst.ui.components.SetDialogToEdgeToEdge
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.settings.SettingsRow
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.settings.SettingsRow
|
||||||
import kotlinx.collections.immutable.toImmutableList
|
import kotlinx.collections.immutable.toImmutableList
|
||||||
|
|||||||
+1
-1
@@ -94,6 +94,7 @@ import com.vitorpamplona.amethyst.commons.resources.new_community_rules_section
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.remove
|
import com.vitorpamplona.amethyst.commons.resources.remove
|
||||||
import com.vitorpamplona.amethyst.commons.resources.save
|
import com.vitorpamplona.amethyst.commons.resources.save
|
||||||
import com.vitorpamplona.amethyst.commons.ui.components.Nip05OrPubkeyLine
|
import com.vitorpamplona.amethyst.commons.ui.components.Nip05OrPubkeyLine
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.ActionTopBar
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.ActionTopBar
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.CreatingTopBar
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.CreatingTopBar
|
||||||
@@ -102,7 +103,6 @@ import com.vitorpamplona.amethyst.commons.ui.theme.SuggestionListDefaultHeightPa
|
|||||||
import com.vitorpamplona.amethyst.ui.actions.StrippingFailureDialog
|
import com.vitorpamplona.amethyst.ui.actions.StrippingFailureDialog
|
||||||
import com.vitorpamplona.amethyst.ui.actions.uploads.GallerySelect
|
import com.vitorpamplona.amethyst.ui.actions.uploads.GallerySelect
|
||||||
import com.vitorpamplona.amethyst.ui.actions.uploads.ShowImageUploadGallery
|
import com.vitorpamplona.amethyst.ui.actions.uploads.ShowImageUploadGallery
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.note.UserPicture
|
import com.vitorpamplona.amethyst.ui.note.UserPicture
|
||||||
import com.vitorpamplona.amethyst.ui.note.creators.userSuggestions.ShowUserSuggestionList
|
import com.vitorpamplona.amethyst.ui.note.creators.userSuggestions.ShowUserSuggestionList
|
||||||
import com.vitorpamplona.amethyst.ui.note.creators.userSuggestions.UserSuggestionState
|
import com.vitorpamplona.amethyst.ui.note.creators.userSuggestions.UserSuggestionState
|
||||||
|
|||||||
+1
-1
@@ -100,6 +100,7 @@ import com.vitorpamplona.amethyst.commons.resources.url_slug
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.url_slug_placeholder
|
import com.vitorpamplona.amethyst.commons.resources.url_slug_placeholder
|
||||||
import com.vitorpamplona.amethyst.commons.resources.your_article_title
|
import com.vitorpamplona.amethyst.commons.resources.your_article_title
|
||||||
import com.vitorpamplona.amethyst.commons.resources.zapraiser
|
import com.vitorpamplona.amethyst.commons.resources.zapraiser
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.PostingTopBar
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.PostingTopBar
|
||||||
import com.vitorpamplona.amethyst.commons.ui.note.creators.contentWarning.ContentSensitivityExplainer
|
import com.vitorpamplona.amethyst.commons.ui.note.creators.contentWarning.ContentSensitivityExplainer
|
||||||
import com.vitorpamplona.amethyst.commons.ui.note.creators.contentWarning.MarkAsSensitiveButton
|
import com.vitorpamplona.amethyst.commons.ui.note.creators.contentWarning.MarkAsSensitiveButton
|
||||||
@@ -129,7 +130,6 @@ import com.vitorpamplona.amethyst.ui.actions.uploads.TakeVideoButton
|
|||||||
import com.vitorpamplona.amethyst.ui.components.MyAsyncImage
|
import com.vitorpamplona.amethyst.ui.components.MyAsyncImage
|
||||||
import com.vitorpamplona.amethyst.ui.components.ThinPaddingTextField
|
import com.vitorpamplona.amethyst.ui.components.ThinPaddingTextField
|
||||||
import com.vitorpamplona.amethyst.ui.components.markdown.RenderContentAsMarkdown
|
import com.vitorpamplona.amethyst.ui.components.markdown.RenderContentAsMarkdown
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.navigation.navs.Nav
|
import com.vitorpamplona.amethyst.ui.navigation.navs.Nav
|
||||||
import com.vitorpamplona.amethyst.ui.note.creators.emojiSuggestions.WatchAndLoadMyEmojiList
|
import com.vitorpamplona.amethyst.ui.note.creators.emojiSuggestions.WatchAndLoadMyEmojiList
|
||||||
import com.vitorpamplona.amethyst.ui.note.creators.expiration.ExpirationDatePicker
|
import com.vitorpamplona.amethyst.ui.note.creators.expiration.ExpirationDatePicker
|
||||||
|
|||||||
+1
-1
@@ -51,6 +51,7 @@ import com.vitorpamplona.amethyst.commons.resources.lightning_create_and_add_inv
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.lightning_invoice
|
import com.vitorpamplona.amethyst.commons.resources.lightning_invoice
|
||||||
import com.vitorpamplona.amethyst.commons.resources.new_product
|
import com.vitorpamplona.amethyst.commons.resources.new_product
|
||||||
import com.vitorpamplona.amethyst.commons.resources.zapraiser
|
import com.vitorpamplona.amethyst.commons.resources.zapraiser
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.PostingTopBar
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.PostingTopBar
|
||||||
import com.vitorpamplona.amethyst.commons.ui.note.creators.contentWarning.ContentSensitivityExplainer
|
import com.vitorpamplona.amethyst.commons.ui.note.creators.contentWarning.ContentSensitivityExplainer
|
||||||
@@ -75,7 +76,6 @@ import com.vitorpamplona.amethyst.ui.actions.uploads.SelectFromGallery
|
|||||||
import com.vitorpamplona.amethyst.ui.actions.uploads.SelectedMedia
|
import com.vitorpamplona.amethyst.ui.actions.uploads.SelectedMedia
|
||||||
import com.vitorpamplona.amethyst.ui.actions.uploads.TakePictureButton
|
import com.vitorpamplona.amethyst.ui.actions.uploads.TakePictureButton
|
||||||
import com.vitorpamplona.amethyst.ui.actions.uploads.TakeVideoButton
|
import com.vitorpamplona.amethyst.ui.actions.uploads.TakeVideoButton
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.navigation.navs.Nav
|
import com.vitorpamplona.amethyst.ui.navigation.navs.Nav
|
||||||
import com.vitorpamplona.amethyst.ui.note.BaseUserPicture
|
import com.vitorpamplona.amethyst.ui.note.BaseUserPicture
|
||||||
import com.vitorpamplona.amethyst.ui.note.creators.emojiSuggestions.WatchAndLoadMyEmojiList
|
import com.vitorpamplona.amethyst.ui.note.creators.emojiSuggestions.WatchAndLoadMyEmojiList
|
||||||
|
|||||||
+1
-1
@@ -71,13 +71,13 @@ import com.vitorpamplona.amethyst.commons.resources.emoji_pack_name_label
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.emoji_pack_upload_image_cta
|
import com.vitorpamplona.amethyst.commons.resources.emoji_pack_upload_image_cta
|
||||||
import com.vitorpamplona.amethyst.commons.resources.emoji_pack_upload_image_hint
|
import com.vitorpamplona.amethyst.commons.resources.emoji_pack_upload_image_hint
|
||||||
import com.vitorpamplona.amethyst.commons.resources.new_emoji_pack
|
import com.vitorpamplona.amethyst.commons.resources.new_emoji_pack
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.CreatingTopBar
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.CreatingTopBar
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.SavingTopBar
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.SavingTopBar
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.placeholderText
|
import com.vitorpamplona.amethyst.commons.ui.theme.placeholderText
|
||||||
import com.vitorpamplona.amethyst.ui.actions.uploads.GallerySelectSingle
|
import com.vitorpamplona.amethyst.ui.actions.uploads.GallerySelectSingle
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
|
|
||||||
@Composable
|
@Composable
|
||||||
|
|||||||
+1
-1
@@ -53,13 +53,13 @@ import com.vitorpamplona.amethyst.commons.resources.emoji_pack_is_not_in_list
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.emoji_pack_management_title
|
import com.vitorpamplona.amethyst.commons.resources.emoji_pack_management_title
|
||||||
import com.vitorpamplona.amethyst.commons.resources.my_emoji_list_title
|
import com.vitorpamplona.amethyst.commons.resources.my_emoji_list_title
|
||||||
import com.vitorpamplona.amethyst.commons.resources.remove_from_emoji_list
|
import com.vitorpamplona.amethyst.commons.resources.remove_from_emoji_list
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.TopBarWithBackButton
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.TopBarWithBackButton
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.Size40Modifier
|
import com.vitorpamplona.amethyst.commons.ui.theme.Size40Modifier
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.StdVertSpacer
|
import com.vitorpamplona.amethyst.commons.ui.theme.StdVertSpacer
|
||||||
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.event.observeNoteAndMap
|
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.event.observeNoteAndMap
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.note.LoadAddressableNote
|
import com.vitorpamplona.amethyst.ui.note.LoadAddressableNote
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
import com.vitorpamplona.quartz.nip01Core.core.Address
|
import com.vitorpamplona.quartz.nip01Core.core.Address
|
||||||
|
|||||||
+1
-1
@@ -100,12 +100,12 @@ import com.vitorpamplona.amethyst.commons.resources.geocache_owner_qr_warning
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.geocache_photo_remove
|
import com.vitorpamplona.amethyst.commons.resources.geocache_photo_remove
|
||||||
import com.vitorpamplona.amethyst.commons.resources.route_edit_geocache
|
import com.vitorpamplona.amethyst.commons.resources.route_edit_geocache
|
||||||
import com.vitorpamplona.amethyst.commons.resources.route_new_geocache
|
import com.vitorpamplona.amethyst.commons.resources.route_new_geocache
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.note.geocacheEmoji
|
import com.vitorpamplona.amethyst.commons.ui.note.geocacheEmoji
|
||||||
import com.vitorpamplona.amethyst.commons.ui.note.geocacheLabelRes
|
import com.vitorpamplona.amethyst.commons.ui.note.geocacheLabelRes
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.ui.components.MyAsyncImage
|
import com.vitorpamplona.amethyst.ui.components.MyAsyncImage
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.note.creators.location.GeohashLocationPickerDialog
|
import com.vitorpamplona.amethyst.ui.note.creators.location.GeohashLocationPickerDialog
|
||||||
import com.vitorpamplona.amethyst.ui.note.creators.location.LocationPreviewMap
|
import com.vitorpamplona.amethyst.ui.note.creators.location.LocationPreviewMap
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
|
|||||||
+1
-1
@@ -88,6 +88,7 @@ import com.vitorpamplona.amethyst.commons.resources.geocache_needs_maintenance
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.geocache_no_logs
|
import com.vitorpamplona.amethyst.commons.resources.geocache_no_logs
|
||||||
import com.vitorpamplona.amethyst.commons.resources.geocache_photos_section
|
import com.vitorpamplona.amethyst.commons.resources.geocache_photos_section
|
||||||
import com.vitorpamplona.amethyst.commons.resources.route_geocache_detail
|
import com.vitorpamplona.amethyst.commons.resources.route_geocache_detail
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.note.GeocacheChips
|
import com.vitorpamplona.amethyst.commons.ui.note.GeocacheChips
|
||||||
import com.vitorpamplona.amethyst.commons.ui.note.GeocacheDetailHero
|
import com.vitorpamplona.amethyst.commons.ui.note.GeocacheDetailHero
|
||||||
@@ -100,7 +101,6 @@ import com.vitorpamplona.amethyst.commons.ui.note.specSummary
|
|||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.event.observeNote
|
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.event.observeNote
|
||||||
import com.vitorpamplona.amethyst.ui.components.MyAsyncImage
|
import com.vitorpamplona.amethyst.ui.components.MyAsyncImage
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.note.creators.location.LocationPreviewMap
|
import com.vitorpamplona.amethyst.ui.note.creators.location.LocationPreviewMap
|
||||||
import com.vitorpamplona.amethyst.ui.note.types.distanceToCache
|
import com.vitorpamplona.amethyst.ui.note.types.distanceToCache
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
|
|||||||
+1
-1
@@ -63,6 +63,7 @@ import com.vitorpamplona.amethyst.commons.resources.geocache_hunt_start
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.geocache_loading
|
import com.vitorpamplona.amethyst.commons.resources.geocache_loading
|
||||||
import com.vitorpamplona.amethyst.commons.resources.geocache_unnamed
|
import com.vitorpamplona.amethyst.commons.resources.geocache_unnamed
|
||||||
import com.vitorpamplona.amethyst.commons.resources.route_geocache_hunt_detail
|
import com.vitorpamplona.amethyst.commons.resources.route_geocache_hunt_detail
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.note.GeocacheSpecLine
|
import com.vitorpamplona.amethyst.commons.ui.note.GeocacheSpecLine
|
||||||
import com.vitorpamplona.amethyst.commons.ui.note.geocacheEmoji
|
import com.vitorpamplona.amethyst.commons.ui.note.geocacheEmoji
|
||||||
@@ -71,7 +72,6 @@ import com.vitorpamplona.amethyst.commons.ui.stringRes
|
|||||||
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.event.observeNote
|
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.event.observeNote
|
||||||
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.event.observeNoteEvent
|
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.event.observeNoteEvent
|
||||||
import com.vitorpamplona.amethyst.ui.components.MyAsyncImage
|
import com.vitorpamplona.amethyst.ui.components.MyAsyncImage
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.note.LoadAddressableNote
|
import com.vitorpamplona.amethyst.ui.note.LoadAddressableNote
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.geocaches.datasource.GeocachesFilterAssemblerSubscription
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.geocaches.datasource.GeocachesFilterAssemblerSubscription
|
||||||
|
|||||||
+1
-1
@@ -63,10 +63,10 @@ import com.vitorpamplona.amethyst.commons.resources.geocache_new_publish
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.geocache_unnamed
|
import com.vitorpamplona.amethyst.commons.resources.geocache_unnamed
|
||||||
import com.vitorpamplona.amethyst.commons.resources.route_edit_geocache_hunt
|
import com.vitorpamplona.amethyst.commons.resources.route_edit_geocache_hunt
|
||||||
import com.vitorpamplona.amethyst.commons.resources.route_new_geocache_hunt
|
import com.vitorpamplona.amethyst.commons.resources.route_new_geocache_hunt
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.event.observeNoteEvent
|
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.event.observeNoteEvent
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.note.LoadAddressableNote
|
import com.vitorpamplona.amethyst.ui.note.LoadAddressableNote
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
import com.vitorpamplona.quartz.nip01Core.core.Address
|
import com.vitorpamplona.quartz.nip01Core.core.Address
|
||||||
|
|||||||
+1
-1
@@ -88,10 +88,10 @@ import com.vitorpamplona.amethyst.commons.resources.geocache_log_scan_code
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.geocache_log_your_log
|
import com.vitorpamplona.amethyst.commons.resources.geocache_log_your_log
|
||||||
import com.vitorpamplona.amethyst.commons.resources.geocache_unnamed
|
import com.vitorpamplona.amethyst.commons.resources.geocache_unnamed
|
||||||
import com.vitorpamplona.amethyst.commons.resources.route_log_geocache_find
|
import com.vitorpamplona.amethyst.commons.resources.route_log_geocache_find
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.note.rememberGeocachePalette
|
import com.vitorpamplona.amethyst.commons.ui.note.rememberGeocachePalette
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.geocaches.datasource.GeocachesFilterAssemblerSubscription
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.geocaches.datasource.GeocachesFilterAssemblerSubscription
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.qrcode.SimpleQrCodeScanner
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.qrcode.SimpleQrCodeScanner
|
||||||
|
|||||||
+1
-1
@@ -71,11 +71,11 @@ import com.vitorpamplona.amethyst.commons.resources.new_highlight_note_placehold
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.new_highlight_passage_placeholder
|
import com.vitorpamplona.amethyst.commons.resources.new_highlight_passage_placeholder
|
||||||
import com.vitorpamplona.amethyst.commons.resources.new_highlight_source_label
|
import com.vitorpamplona.amethyst.commons.resources.new_highlight_source_label
|
||||||
import com.vitorpamplona.amethyst.commons.resources.new_highlight_title
|
import com.vitorpamplona.amethyst.commons.resources.new_highlight_title
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.PostingTopBar
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.PostingTopBar
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.SuggestionListDefaultHeightPage
|
import com.vitorpamplona.amethyst.commons.ui.theme.SuggestionListDefaultHeightPage
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.replyModifier
|
import com.vitorpamplona.amethyst.commons.ui.theme.replyModifier
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.navigation.navs.Nav
|
import com.vitorpamplona.amethyst.ui.navigation.navs.Nav
|
||||||
import com.vitorpamplona.amethyst.ui.note.NoteCompose
|
import com.vitorpamplona.amethyst.ui.note.NoteCompose
|
||||||
import com.vitorpamplona.amethyst.ui.note.creators.emojiSuggestions.WatchAndLoadMyEmojiList
|
import com.vitorpamplona.amethyst.ui.note.creators.emojiSuggestions.WatchAndLoadMyEmojiList
|
||||||
|
|||||||
+1
-1
@@ -108,6 +108,7 @@ import com.vitorpamplona.amethyst.commons.resources.schedule_post_always_on_prom
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.schedule_post_always_on_prompt_title
|
import com.vitorpamplona.amethyst.commons.resources.schedule_post_always_on_prompt_title
|
||||||
import com.vitorpamplona.amethyst.commons.resources.what_s_on_your_mind
|
import com.vitorpamplona.amethyst.commons.resources.what_s_on_your_mind
|
||||||
import com.vitorpamplona.amethyst.commons.resources.zapraiser
|
import com.vitorpamplona.amethyst.commons.resources.zapraiser
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.PostingTopBar
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.PostingTopBar
|
||||||
import com.vitorpamplona.amethyst.commons.ui.note.creators.aihelp.AiWritingHelpPanel
|
import com.vitorpamplona.amethyst.commons.ui.note.creators.aihelp.AiWritingHelpPanel
|
||||||
import com.vitorpamplona.amethyst.commons.ui.note.creators.contentWarning.ContentSensitivityExplainer
|
import com.vitorpamplona.amethyst.commons.ui.note.creators.contentWarning.ContentSensitivityExplainer
|
||||||
@@ -149,7 +150,6 @@ import com.vitorpamplona.amethyst.ui.actions.uploads.VoiceAnonymizationSection
|
|||||||
import com.vitorpamplona.amethyst.ui.actions.uploads.VoiceMessagePreview
|
import com.vitorpamplona.amethyst.ui.actions.uploads.VoiceMessagePreview
|
||||||
import com.vitorpamplona.amethyst.ui.components.ThinPaddingTextField
|
import com.vitorpamplona.amethyst.ui.components.ThinPaddingTextField
|
||||||
import com.vitorpamplona.amethyst.ui.components.getActivity
|
import com.vitorpamplona.amethyst.ui.components.getActivity
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.navigation.navs.Nav
|
import com.vitorpamplona.amethyst.ui.navigation.navs.Nav
|
||||||
import com.vitorpamplona.amethyst.ui.note.BaseUserPicture
|
import com.vitorpamplona.amethyst.ui.note.BaseUserPicture
|
||||||
import com.vitorpamplona.amethyst.ui.note.NoteCompose
|
import com.vitorpamplona.amethyst.ui.note.NoteCompose
|
||||||
|
|||||||
+1
-1
@@ -59,10 +59,10 @@ import com.vitorpamplona.amethyst.commons.resources.goal_summary_placeholder
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.goal_website_label
|
import com.vitorpamplona.amethyst.commons.resources.goal_website_label
|
||||||
import com.vitorpamplona.amethyst.commons.resources.goal_website_placeholder
|
import com.vitorpamplona.amethyst.commons.resources.goal_website_placeholder
|
||||||
import com.vitorpamplona.amethyst.commons.resources.new_goal
|
import com.vitorpamplona.amethyst.commons.resources.new_goal
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.PostingTopBar
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.PostingTopBar
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.navigation.navs.Nav
|
import com.vitorpamplona.amethyst.ui.navigation.navs.Nav
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -46,12 +46,12 @@ import com.vitorpamplona.amethyst.commons.resources.interest_set_name_placeholde
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.interest_set_rename
|
import com.vitorpamplona.amethyst.commons.resources.interest_set_rename
|
||||||
import com.vitorpamplona.amethyst.commons.resources.login_with_a_private_key_to_be_able_to_sign_events
|
import com.vitorpamplona.amethyst.commons.resources.login_with_a_private_key_to_be_able_to_sign_events
|
||||||
import com.vitorpamplona.amethyst.commons.resources.read_only_user
|
import com.vitorpamplona.amethyst.commons.resources.read_only_user
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.CreatingTopBar
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.CreatingTopBar
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.SavingTopBar
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.SavingTopBar
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.placeholderText
|
import com.vitorpamplona.amethyst.commons.ui.theme.placeholderText
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
import com.vitorpamplona.quartz.nip01Core.signers.SignerExceptions
|
import com.vitorpamplona.quartz.nip01Core.signers.SignerExceptions
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -87,6 +87,7 @@ import com.vitorpamplona.amethyst.commons.ui.components.ClickableBox
|
|||||||
import com.vitorpamplona.amethyst.commons.ui.components.M3ActionDialog
|
import com.vitorpamplona.amethyst.commons.ui.components.M3ActionDialog
|
||||||
import com.vitorpamplona.amethyst.commons.ui.components.M3ActionRow
|
import com.vitorpamplona.amethyst.commons.ui.components.M3ActionRow
|
||||||
import com.vitorpamplona.amethyst.commons.ui.components.M3ActionSection
|
import com.vitorpamplona.amethyst.commons.ui.components.M3ActionSection
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.EmptyNav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.EmptyNav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.note.ArrowBackIcon
|
import com.vitorpamplona.amethyst.commons.ui.note.ArrowBackIcon
|
||||||
@@ -101,7 +102,6 @@ import com.vitorpamplona.amethyst.commons.ui.theme.Size10dp
|
|||||||
import com.vitorpamplona.amethyst.commons.ui.theme.StdPadding
|
import com.vitorpamplona.amethyst.commons.ui.theme.StdPadding
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.TabRowHeight
|
import com.vitorpamplona.amethyst.commons.ui.theme.TabRowHeight
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.ThemeComparisonRow
|
import com.vitorpamplona.amethyst.commons.ui.theme.ThemeComparisonRow
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.note.externalLinkForNote
|
import com.vitorpamplona.amethyst.ui.note.externalLinkForNote
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.lists.display.DrawUser
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.lists.display.DrawUser
|
||||||
|
|||||||
+1
-1
@@ -76,6 +76,7 @@ import com.vitorpamplona.amethyst.commons.ui.components.ClickableBox
|
|||||||
import com.vitorpamplona.amethyst.commons.ui.components.M3ActionDialog
|
import com.vitorpamplona.amethyst.commons.ui.components.M3ActionDialog
|
||||||
import com.vitorpamplona.amethyst.commons.ui.components.M3ActionRow
|
import com.vitorpamplona.amethyst.commons.ui.components.M3ActionRow
|
||||||
import com.vitorpamplona.amethyst.commons.ui.components.M3ActionSection
|
import com.vitorpamplona.amethyst.commons.ui.components.M3ActionSection
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.EmptyNav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.EmptyNav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.note.ArrowBackIcon
|
import com.vitorpamplona.amethyst.commons.ui.note.ArrowBackIcon
|
||||||
@@ -89,7 +90,6 @@ import com.vitorpamplona.amethyst.commons.ui.theme.PopupUpEffect
|
|||||||
import com.vitorpamplona.amethyst.commons.ui.theme.Size10dp
|
import com.vitorpamplona.amethyst.commons.ui.theme.Size10dp
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.StdPadding
|
import com.vitorpamplona.amethyst.commons.ui.theme.StdPadding
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.ThemeComparisonRow
|
import com.vitorpamplona.amethyst.commons.ui.theme.ThemeComparisonRow
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.note.externalLinkForNote
|
import com.vitorpamplona.amethyst.ui.note.externalLinkForNote
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.lists.display.DrawUser
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.lists.display.DrawUser
|
||||||
|
|||||||
+1
-1
@@ -54,6 +54,7 @@ import com.vitorpamplona.amethyst.commons.resources.follow_pack_title
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.login_with_a_private_key_to_be_able_to_sign_events
|
import com.vitorpamplona.amethyst.commons.resources.login_with_a_private_key_to_be_able_to_sign_events
|
||||||
import com.vitorpamplona.amethyst.commons.resources.picture_url
|
import com.vitorpamplona.amethyst.commons.resources.picture_url
|
||||||
import com.vitorpamplona.amethyst.commons.resources.read_only_user
|
import com.vitorpamplona.amethyst.commons.resources.read_only_user
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.EmptyNav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.EmptyNav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.CreatingTopBar
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.CreatingTopBar
|
||||||
@@ -64,7 +65,6 @@ import com.vitorpamplona.amethyst.commons.ui.theme.SettingsCategoryFirstModifier
|
|||||||
import com.vitorpamplona.amethyst.commons.ui.theme.ThemeComparisonRow
|
import com.vitorpamplona.amethyst.commons.ui.theme.ThemeComparisonRow
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.placeholderText
|
import com.vitorpamplona.amethyst.commons.ui.theme.placeholderText
|
||||||
import com.vitorpamplona.amethyst.ui.actions.uploads.SelectSingleFromGallery
|
import com.vitorpamplona.amethyst.ui.actions.uploads.SelectSingleFromGallery
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.mockAccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.mockAccountViewModel
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.relays.SettingsCategory
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.relays.SettingsCategory
|
||||||
|
|||||||
+1
-1
@@ -54,6 +54,7 @@ import com.vitorpamplona.amethyst.commons.resources.people_list_explainer
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.people_list_title
|
import com.vitorpamplona.amethyst.commons.resources.people_list_title
|
||||||
import com.vitorpamplona.amethyst.commons.resources.picture_url
|
import com.vitorpamplona.amethyst.commons.resources.picture_url
|
||||||
import com.vitorpamplona.amethyst.commons.resources.read_only_user
|
import com.vitorpamplona.amethyst.commons.resources.read_only_user
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.EmptyNav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.EmptyNav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.CreatingTopBar
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.CreatingTopBar
|
||||||
@@ -64,7 +65,6 @@ import com.vitorpamplona.amethyst.commons.ui.theme.SettingsCategoryFirstModifier
|
|||||||
import com.vitorpamplona.amethyst.commons.ui.theme.ThemeComparisonRow
|
import com.vitorpamplona.amethyst.commons.ui.theme.ThemeComparisonRow
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.placeholderText
|
import com.vitorpamplona.amethyst.commons.ui.theme.placeholderText
|
||||||
import com.vitorpamplona.amethyst.ui.actions.uploads.SelectSingleFromGallery
|
import com.vitorpamplona.amethyst.ui.actions.uploads.SelectSingleFromGallery
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.mockAccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.mockAccountViewModel
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.relays.SettingsCategory
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.relays.SettingsCategory
|
||||||
|
|||||||
+1
-1
@@ -38,11 +38,11 @@ import com.vitorpamplona.amethyst.commons.model.User
|
|||||||
import com.vitorpamplona.amethyst.commons.model.cache.LocalCache
|
import com.vitorpamplona.amethyst.commons.model.cache.LocalCache
|
||||||
import com.vitorpamplona.amethyst.commons.resources.Res
|
import com.vitorpamplona.amethyst.commons.resources.Res
|
||||||
import com.vitorpamplona.amethyst.commons.resources.follow_set_man_dialog_title2
|
import com.vitorpamplona.amethyst.commons.resources.follow_set_man_dialog_title2
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.TopBarWithBackButton
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.TopBarWithBackButton
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.user.observeUserName
|
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.user.observeUserName
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
import com.vitorpamplona.quartz.nip01Core.core.HexKey
|
import com.vitorpamplona.quartz.nip01Core.core.HexKey
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -69,6 +69,7 @@ import com.vitorpamplona.amethyst.commons.resources.music_playlist_create_action
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.music_playlist_new_title_placeholder
|
import com.vitorpamplona.amethyst.commons.resources.music_playlist_new_title_placeholder
|
||||||
import com.vitorpamplona.amethyst.commons.resources.music_playlist_track_count_short
|
import com.vitorpamplona.amethyst.commons.resources.music_playlist_track_count_short
|
||||||
import com.vitorpamplona.amethyst.commons.resources.music_playlist_untitled
|
import com.vitorpamplona.amethyst.commons.resources.music_playlist_untitled
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.EmptyNav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.EmptyNav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.TopBarWithBackButton
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.TopBarWithBackButton
|
||||||
@@ -76,7 +77,6 @@ import com.vitorpamplona.amethyst.commons.ui.pluralStringRes
|
|||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.ThemeComparisonColumn
|
import com.vitorpamplona.amethyst.commons.ui.theme.ThemeComparisonColumn
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.grayText
|
import com.vitorpamplona.amethyst.commons.ui.theme.grayText
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.mockAccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.mockAccountViewModel
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -92,6 +92,7 @@ import com.vitorpamplona.amethyst.commons.resources.music_playlist_track_count
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.music_playlist_unknown_track
|
import com.vitorpamplona.amethyst.commons.resources.music_playlist_unknown_track
|
||||||
import com.vitorpamplona.amethyst.commons.resources.music_playlist_uploading_banner
|
import com.vitorpamplona.amethyst.commons.resources.music_playlist_uploading_banner
|
||||||
import com.vitorpamplona.amethyst.commons.resources.new_music_playlist
|
import com.vitorpamplona.amethyst.commons.resources.new_music_playlist
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.EmptyNav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.EmptyNav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.SendingTopBar
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.SendingTopBar
|
||||||
@@ -102,7 +103,6 @@ import com.vitorpamplona.amethyst.service.relayClient.reqCommand.event.observeNo
|
|||||||
import com.vitorpamplona.amethyst.ui.actions.StrippingFailureDialog
|
import com.vitorpamplona.amethyst.ui.actions.StrippingFailureDialog
|
||||||
import com.vitorpamplona.amethyst.ui.actions.uploads.GallerySelectSingle
|
import com.vitorpamplona.amethyst.ui.actions.uploads.GallerySelectSingle
|
||||||
import com.vitorpamplona.amethyst.ui.components.MyAsyncImage
|
import com.vitorpamplona.amethyst.ui.components.MyAsyncImage
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.note.LoadAddressableNote
|
import com.vitorpamplona.amethyst.ui.note.LoadAddressableNote
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.mockAccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.mockAccountViewModel
|
||||||
|
|||||||
+1
-1
@@ -83,6 +83,7 @@ import com.vitorpamplona.amethyst.commons.resources.music_track_title_label
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.music_track_title_placeholder
|
import com.vitorpamplona.amethyst.commons.resources.music_track_title_placeholder
|
||||||
import com.vitorpamplona.amethyst.commons.resources.music_track_uploading_banner
|
import com.vitorpamplona.amethyst.commons.resources.music_track_uploading_banner
|
||||||
import com.vitorpamplona.amethyst.commons.resources.new_music_track
|
import com.vitorpamplona.amethyst.commons.resources.new_music_track
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.EmptyNav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.EmptyNav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.SendingTopBar
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.SendingTopBar
|
||||||
@@ -91,7 +92,6 @@ import com.vitorpamplona.amethyst.commons.ui.theme.ThemeComparisonColumn
|
|||||||
import com.vitorpamplona.amethyst.ui.actions.StrippingFailureDialog
|
import com.vitorpamplona.amethyst.ui.actions.StrippingFailureDialog
|
||||||
import com.vitorpamplona.amethyst.ui.actions.uploads.GallerySelectSingle
|
import com.vitorpamplona.amethyst.ui.actions.uploads.GallerySelectSingle
|
||||||
import com.vitorpamplona.amethyst.ui.actions.uploads.SelectedMedia
|
import com.vitorpamplona.amethyst.ui.actions.uploads.SelectedMedia
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.mockAccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.mockAccountViewModel
|
||||||
import kotlinx.collections.immutable.persistentListOf
|
import kotlinx.collections.immutable.persistentListOf
|
||||||
|
|||||||
+1
-1
@@ -65,8 +65,8 @@ import com.vitorpamplona.amethyst.commons.resources.nest_create_field_service
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.nest_create_field_summary
|
import com.vitorpamplona.amethyst.commons.resources.nest_create_field_summary
|
||||||
import com.vitorpamplona.amethyst.commons.resources.nest_edit_save
|
import com.vitorpamplona.amethyst.commons.resources.nest_edit_save
|
||||||
import com.vitorpamplona.amethyst.commons.resources.nest_edit_title
|
import com.vitorpamplona.amethyst.commons.resources.nest_edit_title
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
import com.vitorpamplona.quartz.nip53LiveActivities.meetingSpaces.MeetingSpaceEvent
|
import com.vitorpamplona.quartz.nip53LiveActivities.meetingSpaces.MeetingSpaceEvent
|
||||||
import kotlinx.coroutines.launch
|
import kotlinx.coroutines.launch
|
||||||
|
|||||||
+1
-1
@@ -70,12 +70,12 @@ import com.vitorpamplona.amethyst.commons.resources.nest_lobby_host_label
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.nest_lobby_listeners_count
|
import com.vitorpamplona.amethyst.commons.resources.nest_lobby_listeners_count
|
||||||
import com.vitorpamplona.amethyst.commons.resources.nest_lobby_no_listeners
|
import com.vitorpamplona.amethyst.commons.resources.nest_lobby_no_listeners
|
||||||
import com.vitorpamplona.amethyst.commons.resources.nest_lobby_open_action
|
import com.vitorpamplona.amethyst.commons.resources.nest_lobby_open_action
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.ShorterTopAppBar
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.ShorterTopAppBar
|
||||||
import com.vitorpamplona.amethyst.commons.ui.note.ArrowBackIcon
|
import com.vitorpamplona.amethyst.commons.ui.note.ArrowBackIcon
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.StdHorzSpacer
|
import com.vitorpamplona.amethyst.commons.ui.theme.StdHorzSpacer
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.navigation.routes.routeFor
|
import com.vitorpamplona.amethyst.ui.navigation.routes.routeFor
|
||||||
import com.vitorpamplona.amethyst.ui.note.ClickableUserPicture
|
import com.vitorpamplona.amethyst.ui.note.ClickableUserPicture
|
||||||
import com.vitorpamplona.amethyst.ui.note.LoadAddressableNote
|
import com.vitorpamplona.amethyst.ui.note.LoadAddressableNote
|
||||||
|
|||||||
+1
-1
@@ -74,12 +74,12 @@ import com.vitorpamplona.amethyst.commons.resources.nest_tab_audience
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.nest_tab_chat
|
import com.vitorpamplona.amethyst.commons.resources.nest_tab_chat
|
||||||
import com.vitorpamplona.amethyst.commons.resources.nest_tab_hands
|
import com.vitorpamplona.amethyst.commons.resources.nest_tab_hands
|
||||||
import com.vitorpamplona.amethyst.commons.resources.nests
|
import com.vitorpamplona.amethyst.commons.resources.nests
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.ShorterTopAppBar
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.ShorterTopAppBar
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.commons.viewmodels.NestUiState
|
import com.vitorpamplona.amethyst.commons.viewmodels.NestUiState
|
||||||
import com.vitorpamplona.amethyst.commons.viewmodels.NestViewModel
|
import com.vitorpamplona.amethyst.commons.viewmodels.NestViewModel
|
||||||
import com.vitorpamplona.amethyst.commons.viewmodels.ParticipantGrid
|
import com.vitorpamplona.amethyst.commons.viewmodels.ParticipantGrid
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.navigation.navs.BouncingIntentNav
|
import com.vitorpamplona.amethyst.ui.navigation.navs.BouncingIntentNav
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.nests.room.chat.NestChatPanel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.nests.room.chat.NestChatPanel
|
||||||
|
|||||||
+1
-1
@@ -45,8 +45,8 @@ import androidx.compose.ui.graphics.graphicsLayer
|
|||||||
import androidx.compose.ui.text.SpanStyle
|
import androidx.compose.ui.text.SpanStyle
|
||||||
import androidx.compose.ui.unit.dp
|
import androidx.compose.ui.unit.dp
|
||||||
import androidx.compose.ui.unit.sp
|
import androidx.compose.ui.unit.sp
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.richtext.InLineIconRenderer
|
||||||
import com.vitorpamplona.amethyst.commons.viewmodels.RoomReaction
|
import com.vitorpamplona.amethyst.commons.viewmodels.RoomReaction
|
||||||
import com.vitorpamplona.amethyst.ui.components.InLineIconRenderer
|
|
||||||
import com.vitorpamplona.quartz.nip30CustomEmoji.CustomEmoji
|
import com.vitorpamplona.quartz.nip30CustomEmoji.CustomEmoji
|
||||||
import kotlinx.collections.immutable.persistentListOf
|
import kotlinx.collections.immutable.persistentListOf
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -59,6 +59,7 @@ import com.vitorpamplona.amethyst.commons.resources.messages_new_message_to
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.messages_new_message_to_caption
|
import com.vitorpamplona.amethyst.commons.resources.messages_new_message_to_caption
|
||||||
import com.vitorpamplona.amethyst.commons.resources.public_message
|
import com.vitorpamplona.amethyst.commons.resources.public_message
|
||||||
import com.vitorpamplona.amethyst.commons.resources.zapraiser
|
import com.vitorpamplona.amethyst.commons.resources.zapraiser
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.PostingTopBar
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.PostingTopBar
|
||||||
import com.vitorpamplona.amethyst.commons.ui.note.creators.contentWarning.ContentSensitivityExplainer
|
import com.vitorpamplona.amethyst.commons.ui.note.creators.contentWarning.ContentSensitivityExplainer
|
||||||
@@ -89,7 +90,6 @@ import com.vitorpamplona.amethyst.ui.actions.uploads.SelectedMedia
|
|||||||
import com.vitorpamplona.amethyst.ui.actions.uploads.TakePictureButton
|
import com.vitorpamplona.amethyst.ui.actions.uploads.TakePictureButton
|
||||||
import com.vitorpamplona.amethyst.ui.actions.uploads.TakeVideoButton
|
import com.vitorpamplona.amethyst.ui.actions.uploads.TakeVideoButton
|
||||||
import com.vitorpamplona.amethyst.ui.components.ThinPaddingTextField
|
import com.vitorpamplona.amethyst.ui.components.ThinPaddingTextField
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.navigation.navs.Nav
|
import com.vitorpamplona.amethyst.ui.navigation.navs.Nav
|
||||||
import com.vitorpamplona.amethyst.ui.note.NoteCompose
|
import com.vitorpamplona.amethyst.ui.note.NoteCompose
|
||||||
import com.vitorpamplona.amethyst.ui.note.creators.emojiSuggestions.WatchAndLoadMyEmojiList
|
import com.vitorpamplona.amethyst.ui.note.creators.emojiSuggestions.WatchAndLoadMyEmojiList
|
||||||
|
|||||||
+1
-1
@@ -73,11 +73,11 @@ import com.vitorpamplona.amethyst.commons.resources.podcast_show_type_episodic
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.podcast_show_type_label
|
import com.vitorpamplona.amethyst.commons.resources.podcast_show_type_label
|
||||||
import com.vitorpamplona.amethyst.commons.resources.podcast_show_type_serial
|
import com.vitorpamplona.amethyst.commons.resources.podcast_show_type_serial
|
||||||
import com.vitorpamplona.amethyst.commons.resources.podcast_show_website_label
|
import com.vitorpamplona.amethyst.commons.resources.podcast_show_website_label
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.SendingTopBar
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.SendingTopBar
|
||||||
import com.vitorpamplona.amethyst.ui.actions.StrippingFailureDialog
|
import com.vitorpamplona.amethyst.ui.actions.StrippingFailureDialog
|
||||||
import com.vitorpamplona.amethyst.ui.actions.uploads.GallerySelectSingle
|
import com.vitorpamplona.amethyst.ui.actions.uploads.GallerySelectSingle
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.music.CoverImagePicker
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.music.CoverImagePicker
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.music.UploadInProgressBanner
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.music.UploadInProgressBanner
|
||||||
|
|||||||
+1
-1
@@ -89,13 +89,13 @@ import com.vitorpamplona.amethyst.commons.resources.podcast_episode_transcript_l
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.podcast_episode_video_label
|
import com.vitorpamplona.amethyst.commons.resources.podcast_episode_video_label
|
||||||
import com.vitorpamplona.amethyst.commons.resources.podcast_new_episode
|
import com.vitorpamplona.amethyst.commons.resources.podcast_new_episode
|
||||||
import com.vitorpamplona.amethyst.commons.resources.podcast_publishing_banner
|
import com.vitorpamplona.amethyst.commons.resources.podcast_publishing_banner
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.SendingTopBar
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.SendingTopBar
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.ui.actions.StrippingFailureDialog
|
import com.vitorpamplona.amethyst.ui.actions.StrippingFailureDialog
|
||||||
import com.vitorpamplona.amethyst.ui.actions.uploads.GallerySelectSingle
|
import com.vitorpamplona.amethyst.ui.actions.uploads.GallerySelectSingle
|
||||||
import com.vitorpamplona.amethyst.ui.actions.uploads.SelectedMedia
|
import com.vitorpamplona.amethyst.ui.actions.uploads.SelectedMedia
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.music.CoverImagePicker
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.music.CoverImagePicker
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.music.UploadInProgressBanner
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.music.UploadInProgressBanner
|
||||||
|
|||||||
+1
-1
@@ -70,12 +70,12 @@ import com.vitorpamplona.amethyst.commons.resources.podcast_trailer_title_placeh
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.podcast_trailer_upload_cta
|
import com.vitorpamplona.amethyst.commons.resources.podcast_trailer_upload_cta
|
||||||
import com.vitorpamplona.amethyst.commons.resources.podcast_trailer_upload_hint
|
import com.vitorpamplona.amethyst.commons.resources.podcast_trailer_upload_hint
|
||||||
import com.vitorpamplona.amethyst.commons.resources.podcast_trailer_url_label
|
import com.vitorpamplona.amethyst.commons.resources.podcast_trailer_url_label
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.SendingTopBar
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.SendingTopBar
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.ui.actions.StrippingFailureDialog
|
import com.vitorpamplona.amethyst.ui.actions.StrippingFailureDialog
|
||||||
import com.vitorpamplona.amethyst.ui.actions.uploads.SelectedMedia
|
import com.vitorpamplona.amethyst.ui.actions.uploads.SelectedMedia
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.music.UploadInProgressBanner
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.music.UploadInProgressBanner
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.music.UploadPlaceholder
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.music.UploadPlaceholder
|
||||||
|
|||||||
+1
-1
@@ -65,6 +65,7 @@ import com.vitorpamplona.amethyst.commons.resources.telegram
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.twitter
|
import com.vitorpamplona.amethyst.commons.resources.twitter
|
||||||
import com.vitorpamplona.amethyst.commons.resources.website
|
import com.vitorpamplona.amethyst.commons.resources.website
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.richtext.CreateTextWithEmoji
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.Size15Modifier
|
import com.vitorpamplona.amethyst.commons.ui.theme.Size15Modifier
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.SpacedBy3dp
|
import com.vitorpamplona.amethyst.commons.ui.theme.SpacedBy3dp
|
||||||
@@ -73,7 +74,6 @@ import com.vitorpamplona.amethyst.commons.ui.theme.StdHorzSpacer
|
|||||||
import com.vitorpamplona.amethyst.commons.ui.theme.placeholderText
|
import com.vitorpamplona.amethyst.commons.ui.theme.placeholderText
|
||||||
import com.vitorpamplona.amethyst.commons.util.toShortDisplay
|
import com.vitorpamplona.amethyst.commons.util.toShortDisplay
|
||||||
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.user.observeUserInfo
|
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.user.observeUserInfo
|
||||||
import com.vitorpamplona.amethyst.ui.components.CreateTextWithEmoji
|
|
||||||
import com.vitorpamplona.amethyst.ui.components.TranslatableRichTextViewer
|
import com.vitorpamplona.amethyst.ui.components.TranslatableRichTextViewer
|
||||||
import com.vitorpamplona.amethyst.ui.components.util.LongPressCopyText
|
import com.vitorpamplona.amethyst.ui.components.util.LongPressCopyText
|
||||||
import com.vitorpamplona.amethyst.ui.note.DrawPlayName
|
import com.vitorpamplona.amethyst.ui.note.DrawPlayName
|
||||||
|
|||||||
+1
-1
@@ -44,11 +44,11 @@ import com.vitorpamplona.amethyst.commons.model.User
|
|||||||
import com.vitorpamplona.amethyst.commons.nip85TrustedAssertions.ui.EditNicknameDialog
|
import com.vitorpamplona.amethyst.commons.nip85TrustedAssertions.ui.EditNicknameDialog
|
||||||
import com.vitorpamplona.amethyst.commons.resources.Res
|
import com.vitorpamplona.amethyst.commons.resources.Res
|
||||||
import com.vitorpamplona.amethyst.commons.resources.nickname_private
|
import com.vitorpamplona.amethyst.commons.resources.nickname_private
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.richtext.CreateTextWithEmoji
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.DividerThickness
|
import com.vitorpamplona.amethyst.commons.ui.theme.DividerThickness
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.placeholderText
|
import com.vitorpamplona.amethyst.commons.ui.theme.placeholderText
|
||||||
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.user.observeUserNickname
|
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.user.observeUserNickname
|
||||||
import com.vitorpamplona.amethyst.ui.components.CreateTextWithEmoji
|
|
||||||
import com.vitorpamplona.amethyst.ui.note.creators.emojiSuggestions.WatchAndLoadMyEmojiList
|
import com.vitorpamplona.amethyst.ui.note.creators.emojiSuggestions.WatchAndLoadMyEmojiList
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -91,13 +91,13 @@ import com.vitorpamplona.amethyst.commons.resources.send_payment_method_onchain
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.send_payment_no_methods
|
import com.vitorpamplona.amethyst.commons.resources.send_payment_no_methods
|
||||||
import com.vitorpamplona.amethyst.commons.resources.send_payment_receipt_section
|
import com.vitorpamplona.amethyst.commons.resources.send_payment_receipt_section
|
||||||
import com.vitorpamplona.amethyst.commons.resources.send_payment_try_again
|
import com.vitorpamplona.amethyst.commons.resources.send_payment_try_again
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.BitcoinOrange
|
import com.vitorpamplona.amethyst.commons.ui.theme.BitcoinOrange
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.ButtonBorder
|
import com.vitorpamplona.amethyst.commons.ui.theme.ButtonBorder
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.ThemeComparisonColumn
|
import com.vitorpamplona.amethyst.commons.ui.theme.ThemeComparisonColumn
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.placeholderText
|
import com.vitorpamplona.amethyst.commons.ui.theme.placeholderText
|
||||||
import com.vitorpamplona.amethyst.ui.components.util.setText
|
import com.vitorpamplona.amethyst.ui.components.util.setText
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.note.showAmount
|
import com.vitorpamplona.amethyst.ui.note.showAmount
|
||||||
import com.vitorpamplona.quartz.nip57Zaps.LnZapEvent
|
import com.vitorpamplona.quartz.nip57Zaps.LnZapEvent
|
||||||
import kotlinx.collections.immutable.ImmutableList
|
import kotlinx.collections.immutable.ImmutableList
|
||||||
|
|||||||
+1
-1
@@ -23,7 +23,7 @@ package com.vitorpamplona.amethyst.ui.screen.loggedIn.qrcode
|
|||||||
import androidx.compose.runtime.Composable
|
import androidx.compose.runtime.Composable
|
||||||
import androidx.compose.runtime.DisposableEffect
|
import androidx.compose.runtime.DisposableEffect
|
||||||
import androidx.compose.ui.platform.LocalView
|
import androidx.compose.ui.platform.LocalView
|
||||||
import com.vitorpamplona.amethyst.ui.components.getActivityWindow
|
import com.vitorpamplona.amethyst.commons.ui.components.getActivityWindow
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Pins the screen to full brightness, and awake, while a QR code is on it.
|
* Pins the screen to full brightness, and awake, while a QR code is on it.
|
||||||
|
|||||||
+2
-2
@@ -54,18 +54,18 @@ import com.vitorpamplona.amethyst.commons.resources.Res
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.profile_image
|
import com.vitorpamplona.amethyst.commons.resources.profile_image
|
||||||
import com.vitorpamplona.amethyst.commons.resources.scan_qr
|
import com.vitorpamplona.amethyst.commons.resources.scan_qr
|
||||||
import com.vitorpamplona.amethyst.commons.ui.components.RobohashFallbackAsyncImage
|
import com.vitorpamplona.amethyst.commons.ui.components.RobohashFallbackAsyncImage
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.EmptyNav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.EmptyNav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.TopBarWithBackButton
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.TopBarWithBackButton
|
||||||
import com.vitorpamplona.amethyst.commons.ui.note.ArrowBackIcon
|
import com.vitorpamplona.amethyst.commons.ui.note.ArrowBackIcon
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.richtext.CreateTextWithEmoji
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.Font14SP
|
import com.vitorpamplona.amethyst.commons.ui.theme.Font14SP
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.Size10dp
|
import com.vitorpamplona.amethyst.commons.ui.theme.Size10dp
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.Size35dp
|
import com.vitorpamplona.amethyst.commons.ui.theme.Size35dp
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.largeProfilePictureModifier
|
import com.vitorpamplona.amethyst.commons.ui.theme.largeProfilePictureModifier
|
||||||
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.user.observeUserInfo
|
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.user.observeUserInfo
|
||||||
import com.vitorpamplona.amethyst.ui.components.CreateTextWithEmoji
|
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.note.ObserveAndDisplayNIP05
|
import com.vitorpamplona.amethyst.ui.note.ObserveAndDisplayNIP05
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.chats.rooms.LoadUser
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.chats.rooms.LoadUser
|
||||||
|
|||||||
+1
-1
@@ -87,6 +87,7 @@ import com.vitorpamplona.amethyst.commons.resources.trusted_section_explainer
|
|||||||
import com.vitorpamplona.amethyst.commons.ui.components.M3ActionDialog
|
import com.vitorpamplona.amethyst.commons.ui.components.M3ActionDialog
|
||||||
import com.vitorpamplona.amethyst.commons.ui.components.M3ActionRow
|
import com.vitorpamplona.amethyst.commons.ui.components.M3ActionRow
|
||||||
import com.vitorpamplona.amethyst.commons.ui.components.M3ActionSection
|
import com.vitorpamplona.amethyst.commons.ui.components.M3ActionSection
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.SavingTopBar
|
import com.vitorpamplona.amethyst.commons.ui.navigation.topbars.SavingTopBar
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
@@ -95,7 +96,6 @@ import com.vitorpamplona.amethyst.commons.ui.theme.RowColSpacing
|
|||||||
import com.vitorpamplona.amethyst.commons.ui.theme.SettingsCategoryFirstWithHorzBorderModifier
|
import com.vitorpamplona.amethyst.commons.ui.theme.SettingsCategoryFirstWithHorzBorderModifier
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.SettingsCategorySpacingWithHorzBorderModifier
|
import com.vitorpamplona.amethyst.commons.ui.theme.SettingsCategorySpacingWithHorzBorderModifier
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.grayText
|
import com.vitorpamplona.amethyst.commons.ui.theme.grayText
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.relays.blocked.BlockedRelayListViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.relays.blocked.BlockedRelayListViewModel
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.relays.blocked.renderBlockedItems
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.relays.blocked.renderBlockedItems
|
||||||
|
|||||||
+1
-1
@@ -70,6 +70,7 @@ import com.vitorpamplona.amethyst.commons.resources.security_hidden_words_empty
|
|||||||
import com.vitorpamplona.amethyst.commons.ui.components.AddButton
|
import com.vitorpamplona.amethyst.commons.ui.components.AddButton
|
||||||
import com.vitorpamplona.amethyst.commons.ui.feeds.FeedError
|
import com.vitorpamplona.amethyst.commons.ui.feeds.FeedError
|
||||||
import com.vitorpamplona.amethyst.commons.ui.feeds.LoadingFeed
|
import com.vitorpamplona.amethyst.commons.ui.feeds.LoadingFeed
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.rememberSafeImeInsets
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.note.ShowUserButton
|
import com.vitorpamplona.amethyst.commons.ui.note.ShowUserButton
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
@@ -77,7 +78,6 @@ import com.vitorpamplona.amethyst.commons.ui.theme.DividerThickness
|
|||||||
import com.vitorpamplona.amethyst.commons.ui.theme.HorzPadding
|
import com.vitorpamplona.amethyst.commons.ui.theme.HorzPadding
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.StdPadding
|
import com.vitorpamplona.amethyst.commons.ui.theme.StdPadding
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.placeholderText
|
import com.vitorpamplona.amethyst.commons.ui.theme.placeholderText
|
||||||
import com.vitorpamplona.amethyst.ui.insets.rememberSafeImeInsets
|
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.settings.dal.HiddenWordsFeedViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.settings.dal.HiddenWordsFeedViewModel
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -63,11 +63,11 @@ import com.vitorpamplona.amethyst.commons.resources.wallet_name
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.wallet_name_hint
|
import com.vitorpamplona.amethyst.commons.resources.wallet_name_hint
|
||||||
import com.vitorpamplona.amethyst.commons.resources.wallet_paste_ndebit
|
import com.vitorpamplona.amethyst.commons.resources.wallet_paste_ndebit
|
||||||
import com.vitorpamplona.amethyst.commons.resources.wallet_save
|
import com.vitorpamplona.amethyst.commons.resources.wallet_save
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.Size24Modifier
|
import com.vitorpamplona.amethyst.commons.ui.theme.Size24Modifier
|
||||||
import com.vitorpamplona.amethyst.ui.components.util.getText
|
import com.vitorpamplona.amethyst.ui.components.util.getText
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.painterRes
|
import com.vitorpamplona.amethyst.ui.painterRes
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.qrcode.SimpleQrCodeScanner
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.qrcode.SimpleQrCodeScanner
|
||||||
|
|||||||
+1
-1
@@ -67,13 +67,13 @@ import com.vitorpamplona.amethyst.commons.resources.wallet_name
|
|||||||
import com.vitorpamplona.amethyst.commons.resources.wallet_name_hint
|
import com.vitorpamplona.amethyst.commons.resources.wallet_name_hint
|
||||||
import com.vitorpamplona.amethyst.commons.resources.wallet_paste_uri
|
import com.vitorpamplona.amethyst.commons.resources.wallet_paste_uri
|
||||||
import com.vitorpamplona.amethyst.commons.resources.wallet_save
|
import com.vitorpamplona.amethyst.commons.resources.wallet_save
|
||||||
|
import com.vitorpamplona.amethyst.commons.ui.insets.imePaddingSafe
|
||||||
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
import com.vitorpamplona.amethyst.commons.ui.navigation.navs.INav
|
||||||
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
import com.vitorpamplona.amethyst.commons.ui.stringRes
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.ButtonBorder
|
import com.vitorpamplona.amethyst.commons.ui.theme.ButtonBorder
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.DoubleHorzSpacer
|
import com.vitorpamplona.amethyst.commons.ui.theme.DoubleHorzSpacer
|
||||||
import com.vitorpamplona.amethyst.commons.ui.theme.Size24Modifier
|
import com.vitorpamplona.amethyst.commons.ui.theme.Size24Modifier
|
||||||
import com.vitorpamplona.amethyst.ui.components.util.getText
|
import com.vitorpamplona.amethyst.ui.components.util.getText
|
||||||
import com.vitorpamplona.amethyst.ui.insets.imePaddingSafe
|
|
||||||
import com.vitorpamplona.amethyst.ui.painterRes
|
import com.vitorpamplona.amethyst.ui.painterRes
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.AccountViewModel
|
||||||
import com.vitorpamplona.amethyst.ui.screen.loggedIn.qrcode.SimpleQrCodeScanner
|
import com.vitorpamplona.amethyst.ui.screen.loggedIn.qrcode.SimpleQrCodeScanner
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user