diff --git a/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/chats/privateDM/send/ChatNewMessageViewModel.kt b/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/chats/privateDM/send/ChatNewMessageViewModel.kt index 40d9f3d70..18181978e 100644 --- a/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/chats/privateDM/send/ChatNewMessageViewModel.kt +++ b/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/chats/privateDM/send/ChatNewMessageViewModel.kt @@ -422,10 +422,9 @@ class ChatNewMessageViewModel : } suspend fun sendDraftSync() { - if (!accountViewModel.settings.automaticallyCreateDrafts()) return if (message.text.toString().isBlank()) { account.deleteDraftIgnoreErrors(draftTag.current) - } else { + } else if (accountViewModel.settings.automaticallyCreateDrafts()) { innerSendPost(draftTag.current) } } diff --git a/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/chats/publicChannels/send/ChannelNewMessageViewModel.kt b/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/chats/publicChannels/send/ChannelNewMessageViewModel.kt index c4d1ecf9d..1380c965b 100644 --- a/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/chats/publicChannels/send/ChannelNewMessageViewModel.kt +++ b/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/chats/publicChannels/send/ChannelNewMessageViewModel.kt @@ -304,10 +304,9 @@ open class ChannelNewMessageViewModel : } suspend fun sendDraftSync() { - if (!accountViewModel.settings.automaticallyCreateDrafts()) return if (message.text.toString().isBlank()) { account.deleteDraftIgnoreErrors(draftTag.current) - } else { + } else if (accountViewModel.settings.automaticallyCreateDrafts()) { val attachments = mutableSetOf() nip95attachments.forEach { attachments.add(it.first) diff --git a/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/discover/nip23LongForm/LongFormPostViewModel.kt b/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/discover/nip23LongForm/LongFormPostViewModel.kt index 1cc9d7336..cc508bf0d 100644 --- a/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/discover/nip23LongForm/LongFormPostViewModel.kt +++ b/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/discover/nip23LongForm/LongFormPostViewModel.kt @@ -346,10 +346,9 @@ class LongFormPostViewModel : } suspend fun sendDraftSync() { - if (!accountViewModel.settings.automaticallyCreateDrafts()) return if (message.text.toString().isBlank() && title.text.isBlank()) { accountViewModel.account.deleteDraftIgnoreErrors(draftTag.current) - } else { + } else if (accountViewModel.settings.automaticallyCreateDrafts()) { val template = createTemplate() ?: return accountViewModel.account.createAndSendDraftIgnoreErrors(draftTag.current, template, emptySet()) } diff --git a/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/discover/nip99Classifieds/NewProductViewModel.kt b/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/discover/nip99Classifieds/NewProductViewModel.kt index 99fc4a437..14d7a1334 100644 --- a/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/discover/nip99Classifieds/NewProductViewModel.kt +++ b/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/discover/nip99Classifieds/NewProductViewModel.kt @@ -325,10 +325,9 @@ open class NewProductViewModel : } suspend fun sendDraftSync() { - if (!accountViewModel.settings.automaticallyCreateDrafts()) return if (message.text.toString().isBlank()) { accountViewModel.account.deleteDraftIgnoreErrors(draftTag.current) - } else { + } else if (accountViewModel.settings.automaticallyCreateDrafts()) { val template = createTemplate() ?: return accountViewModel.account.createAndSendDraftIgnoreErrors(draftTag.current, template) } diff --git a/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/home/ShortNotePostViewModel.kt b/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/home/ShortNotePostViewModel.kt index 3320726e9..150447369 100644 --- a/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/home/ShortNotePostViewModel.kt +++ b/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/home/ShortNotePostViewModel.kt @@ -895,10 +895,9 @@ open class ShortNotePostViewModel : } suspend fun sendDraftSync() { - if (!accountViewModel.settings.automaticallyCreateDrafts()) return if (message.text.toString().isBlank()) { accountViewModel.account.deleteDraftIgnoreErrors(draftTag.current) - } else { + } else if (accountViewModel.settings.automaticallyCreateDrafts()) { val attachments = mutableSetOf() nip95attachments.forEach { attachments.add(it.first) diff --git a/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/nests/room/chat/NestNewMessageViewModel.kt b/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/nests/room/chat/NestNewMessageViewModel.kt index 7ba63692e..648a36900 100644 --- a/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/nests/room/chat/NestNewMessageViewModel.kt +++ b/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/nests/room/chat/NestNewMessageViewModel.kt @@ -308,10 +308,9 @@ open class NestNewMessageViewModel : } suspend fun sendDraftSync() { - if (!accountViewModel.settings.automaticallyCreateDrafts()) return if (message.text.toString().isBlank()) { account.deleteDraftIgnoreErrors(draftTag.current) - } else { + } else if (accountViewModel.settings.automaticallyCreateDrafts()) { val attachments = mutableSetOf() nip95attachments.forEach { attachments.add(it.first) diff --git a/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/notifications/publicMessages/NewPublicMessageViewModel.kt b/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/notifications/publicMessages/NewPublicMessageViewModel.kt index cd9f0029a..43d8ac6ca 100644 --- a/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/notifications/publicMessages/NewPublicMessageViewModel.kt +++ b/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/notifications/publicMessages/NewPublicMessageViewModel.kt @@ -350,10 +350,9 @@ class NewPublicMessageViewModel : } suspend fun sendDraftSync() { - if (!accountViewModel.settings.automaticallyCreateDrafts()) return if (message.text.toString().isBlank()) { accountViewModel.account.deleteDraftIgnoreErrors(draftTag.current) - } else { + } else if (accountViewModel.settings.automaticallyCreateDrafts()) { val broadcast = mutableSetOf() nip95attachments.forEach { broadcast.add(it.first) diff --git a/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/settings/AppSettingsScreen.kt b/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/settings/AppSettingsScreen.kt index 512c5676b..9be0e54f6 100644 --- a/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/settings/AppSettingsScreen.kt +++ b/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/settings/AppSettingsScreen.kt @@ -55,7 +55,6 @@ import androidx.core.os.LocaleListCompat import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.vitorpamplona.amethyst.BuildConfig import com.vitorpamplona.amethyst.R -import com.vitorpamplona.amethyst.model.BooleanType import com.vitorpamplona.amethyst.model.ConnectivityType import com.vitorpamplona.amethyst.model.FeatureSetType import com.vitorpamplona.amethyst.model.ProfileGalleryType @@ -403,46 +402,6 @@ fun GalleryChoice(sharedPrefs: UiSettingsFlow) { } } -@Composable -fun AiWritingHelpChoice(sharedPrefs: UiSettingsFlow) { - val aiIndex by sharedPrefs.automaticallyProposeAiImprovements.collectAsState() - - val booleanItems = - persistentListOf( - TitleExplainer(stringRes(ConnectivityType.ALWAYS.resourceId)), - TitleExplainer(stringRes(ConnectivityType.NEVER.resourceId)), - ) - - SettingsRow( - R.string.ai_writing_setting_title, - R.string.ai_writing_setting_description, - booleanItems, - aiIndex.screenCode, - ) { - sharedPrefs.automaticallyProposeAiImprovements.tryEmit(parseBooleanType(it)) - } -} - -@Composable -fun TrackedBroadcastsChoice(sharedPrefs: UiSettingsFlow) { - val useTrackedBroadcastsIndex by sharedPrefs.useTrackedBroadcasts.collectAsState() - - val booleanItems = - persistentListOf( - TitleExplainer(stringRes(BooleanType.ALWAYS.reourceId)), - TitleExplainer(stringRes(BooleanType.NEVER.reourceId)), - ) - - SettingsRow( - R.string.tracked_broadcasts_setting_title, - R.string.tracked_broadcasts_setting_description, - booleanItems, - useTrackedBroadcastsIndex.screenCode, - ) { - sharedPrefs.useTrackedBroadcasts.tryEmit(parseBooleanType(it)) - } -} - @Composable fun SettingsRow( name: Int, diff --git a/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/settings/ComposeSettingsScreen.kt b/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/settings/ComposeSettingsScreen.kt index 074ef0798..1184c52ca 100644 --- a/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/settings/ComposeSettingsScreen.kt +++ b/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/settings/ComposeSettingsScreen.kt @@ -34,6 +34,7 @@ import androidx.compose.ui.Modifier import androidx.compose.ui.tooling.preview.Preview import com.vitorpamplona.amethyst.R import com.vitorpamplona.amethyst.model.BooleanType +import com.vitorpamplona.amethyst.model.ConnectivityType import com.vitorpamplona.amethyst.model.UiSettingsFlow import com.vitorpamplona.amethyst.model.parseBooleanType import com.vitorpamplona.amethyst.ui.components.TitleExplainer @@ -106,3 +107,43 @@ fun AutoCreateDraftsChoice(sharedPrefs: UiSettingsFlow) { sharedPrefs.automaticallyCreateDrafts.tryEmit(parseBooleanType(it)) } } + +@Composable +fun AiWritingHelpChoice(sharedPrefs: UiSettingsFlow) { + val aiIndex by sharedPrefs.automaticallyProposeAiImprovements.collectAsState() + + val booleanItems = + persistentListOf( + TitleExplainer(stringRes(ConnectivityType.ALWAYS.resourceId)), + TitleExplainer(stringRes(ConnectivityType.NEVER.resourceId)), + ) + + SettingsRow( + R.string.ai_writing_setting_title, + R.string.ai_writing_setting_description, + booleanItems, + aiIndex.screenCode, + ) { + sharedPrefs.automaticallyProposeAiImprovements.tryEmit(parseBooleanType(it)) + } +} + +@Composable +fun TrackedBroadcastsChoice(sharedPrefs: UiSettingsFlow) { + val useTrackedBroadcastsIndex by sharedPrefs.useTrackedBroadcasts.collectAsState() + + val booleanItems = + persistentListOf( + TitleExplainer(stringRes(BooleanType.ALWAYS.reourceId)), + TitleExplainer(stringRes(BooleanType.NEVER.reourceId)), + ) + + SettingsRow( + R.string.tracked_broadcasts_setting_title, + R.string.tracked_broadcasts_setting_description, + booleanItems, + useTrackedBroadcastsIndex.screenCode, + ) { + sharedPrefs.useTrackedBroadcasts.tryEmit(parseBooleanType(it)) + } +}