Adds the ability to upload any file form any new post screen
This commit is contained in:
@@ -78,6 +78,7 @@ import com.vitorpamplona.amethyst.commons.richtext.RichTextParser
|
|||||||
import com.vitorpamplona.amethyst.model.Note
|
import com.vitorpamplona.amethyst.model.Note
|
||||||
import com.vitorpamplona.amethyst.service.playback.composable.VideoView
|
import com.vitorpamplona.amethyst.service.playback.composable.VideoView
|
||||||
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.user.observeUserInfo
|
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.user.observeUserInfo
|
||||||
|
import com.vitorpamplona.amethyst.ui.actions.uploads.SelectFromFiles
|
||||||
import com.vitorpamplona.amethyst.ui.actions.uploads.SelectFromGallery
|
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
|
||||||
@@ -377,6 +378,14 @@ private fun BottomRowActions(postViewModel: EditPostViewModel) {
|
|||||||
postViewModel.selectImage(it)
|
postViewModel.selectImage(it)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
SelectFromFiles(
|
||||||
|
isUploading = postViewModel.isUploadingImage,
|
||||||
|
tint = MaterialTheme.colorScheme.onBackground,
|
||||||
|
modifier = Modifier,
|
||||||
|
) {
|
||||||
|
postViewModel.selectImage(it)
|
||||||
|
}
|
||||||
|
|
||||||
if (postViewModel.canAddInvoice) {
|
if (postViewModel.canAddInvoice) {
|
||||||
AddLnInvoiceButton(postViewModel.wantsInvoice) {
|
AddLnInvoiceButton(postViewModel.wantsInvoice) {
|
||||||
postViewModel.wantsInvoice = !postViewModel.wantsInvoice
|
postViewModel.wantsInvoice = !postViewModel.wantsInvoice
|
||||||
|
|||||||
+9
@@ -48,6 +48,7 @@ import androidx.compose.ui.unit.dp
|
|||||||
import androidx.lifecycle.viewmodel.compose.viewModel
|
import androidx.lifecycle.viewmodel.compose.viewModel
|
||||||
import com.vitorpamplona.amethyst.R
|
import com.vitorpamplona.amethyst.R
|
||||||
import com.vitorpamplona.amethyst.model.Note
|
import com.vitorpamplona.amethyst.model.Note
|
||||||
|
import com.vitorpamplona.amethyst.ui.actions.uploads.SelectFromFiles
|
||||||
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.actions.uploads.TakePictureButton
|
import com.vitorpamplona.amethyst.ui.actions.uploads.TakePictureButton
|
||||||
@@ -382,6 +383,14 @@ private fun BottomRowActions(postViewModel: CommentPostViewModel) {
|
|||||||
postViewModel.selectImage(it)
|
postViewModel.selectImage(it)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
SelectFromFiles(
|
||||||
|
isUploading = postViewModel.isUploadingImage,
|
||||||
|
tint = MaterialTheme.colorScheme.onBackground,
|
||||||
|
modifier = Modifier,
|
||||||
|
) {
|
||||||
|
postViewModel.selectImage(it)
|
||||||
|
}
|
||||||
|
|
||||||
TakePictureButton(
|
TakePictureButton(
|
||||||
onPictureTaken = {
|
onPictureTaken = {
|
||||||
postViewModel.selectImage(it)
|
postViewModel.selectImage(it)
|
||||||
|
|||||||
+9
@@ -81,6 +81,7 @@ 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.ui.actions.UrlUserTagTransformation
|
import com.vitorpamplona.amethyst.ui.actions.UrlUserTagTransformation
|
||||||
|
import com.vitorpamplona.amethyst.ui.actions.uploads.SelectFromFiles
|
||||||
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.actions.uploads.TakePictureButton
|
import com.vitorpamplona.amethyst.ui.actions.uploads.TakePictureButton
|
||||||
@@ -381,6 +382,14 @@ private fun BottomRowActions(
|
|||||||
) {
|
) {
|
||||||
postViewModel.pickedMedia(it)
|
postViewModel.pickedMedia(it)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
SelectFromFiles(
|
||||||
|
isUploading = postViewModel.isUploadingImage,
|
||||||
|
tint = MaterialTheme.colorScheme.onBackground,
|
||||||
|
modifier = Modifier,
|
||||||
|
) {
|
||||||
|
postViewModel.pickedMedia(it)
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
IconButton(
|
IconButton(
|
||||||
onClick = { accountViewModel.toastManager.toast(R.string.messages_cant_upload_title, R.string.messages_cant_upload_explainer) },
|
onClick = { accountViewModel.toastManager.toast(R.string.messages_cant_upload_title, R.string.messages_cant_upload_explainer) },
|
||||||
|
|||||||
+9
@@ -40,6 +40,7 @@ import androidx.compose.ui.unit.dp
|
|||||||
import androidx.lifecycle.viewmodel.compose.viewModel
|
import androidx.lifecycle.viewmodel.compose.viewModel
|
||||||
import com.vitorpamplona.amethyst.R
|
import com.vitorpamplona.amethyst.R
|
||||||
import com.vitorpamplona.amethyst.ui.actions.UrlUserTagTransformation
|
import com.vitorpamplona.amethyst.ui.actions.UrlUserTagTransformation
|
||||||
|
import com.vitorpamplona.amethyst.ui.actions.uploads.SelectFromFiles
|
||||||
import com.vitorpamplona.amethyst.ui.actions.uploads.SelectFromGallery
|
import com.vitorpamplona.amethyst.ui.actions.uploads.SelectFromGallery
|
||||||
import com.vitorpamplona.amethyst.ui.components.ThinPaddingTextField
|
import com.vitorpamplona.amethyst.ui.components.ThinPaddingTextField
|
||||||
import com.vitorpamplona.amethyst.ui.navigation.navs.EmptyNav
|
import com.vitorpamplona.amethyst.ui.navigation.navs.EmptyNav
|
||||||
@@ -206,6 +207,14 @@ fun KeyboardLeadingIcon(
|
|||||||
onImageChosen = channelScreenModel::pickedMedia,
|
onImageChosen = channelScreenModel::pickedMedia,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
SelectFromFiles(
|
||||||
|
isUploading = channelScreenModel.isUploadingImage,
|
||||||
|
tint = MaterialTheme.colorScheme.onBackground,
|
||||||
|
modifier = Modifier,
|
||||||
|
) {
|
||||||
|
channelScreenModel.pickedMedia(it)
|
||||||
|
}
|
||||||
|
|
||||||
ToggleNip17Button(channelScreenModel, accountViewModel)
|
ToggleNip17Button(channelScreenModel, accountViewModel)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+9
@@ -47,6 +47,7 @@ import androidx.compose.ui.unit.dp
|
|||||||
import androidx.lifecycle.viewmodel.compose.viewModel
|
import androidx.lifecycle.viewmodel.compose.viewModel
|
||||||
import com.vitorpamplona.amethyst.R
|
import com.vitorpamplona.amethyst.R
|
||||||
import com.vitorpamplona.amethyst.model.Note
|
import com.vitorpamplona.amethyst.model.Note
|
||||||
|
import com.vitorpamplona.amethyst.ui.actions.uploads.SelectFromFiles
|
||||||
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.actions.uploads.TakePictureButton
|
import com.vitorpamplona.amethyst.ui.actions.uploads.TakePictureButton
|
||||||
@@ -350,6 +351,14 @@ private fun BottomRowActions(postViewModel: NewProductViewModel) {
|
|||||||
postViewModel.selectImage(it)
|
postViewModel.selectImage(it)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
SelectFromFiles(
|
||||||
|
isUploading = postViewModel.isUploadingImage,
|
||||||
|
tint = MaterialTheme.colorScheme.onBackground,
|
||||||
|
modifier = Modifier,
|
||||||
|
) {
|
||||||
|
postViewModel.selectImage(it)
|
||||||
|
}
|
||||||
|
|
||||||
TakePictureButton(
|
TakePictureButton(
|
||||||
onPictureTaken = {
|
onPictureTaken = {
|
||||||
postViewModel.selectImage(it)
|
postViewModel.selectImage(it)
|
||||||
|
|||||||
+9
@@ -57,6 +57,7 @@ import androidx.lifecycle.viewmodel.compose.viewModel
|
|||||||
import com.vitorpamplona.amethyst.R
|
import com.vitorpamplona.amethyst.R
|
||||||
import com.vitorpamplona.amethyst.model.Note
|
import com.vitorpamplona.amethyst.model.Note
|
||||||
import com.vitorpamplona.amethyst.ui.actions.UrlUserTagTransformation
|
import com.vitorpamplona.amethyst.ui.actions.UrlUserTagTransformation
|
||||||
|
import com.vitorpamplona.amethyst.ui.actions.uploads.SelectFromFiles
|
||||||
import com.vitorpamplona.amethyst.ui.actions.uploads.SelectFromGallery
|
import com.vitorpamplona.amethyst.ui.actions.uploads.SelectFromGallery
|
||||||
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
|
||||||
@@ -312,6 +313,14 @@ private fun BottomRowActions(
|
|||||||
postViewModel.selectImage(it)
|
postViewModel.selectImage(it)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
SelectFromFiles(
|
||||||
|
isUploading = postViewModel.isUploadingImage,
|
||||||
|
tint = MaterialTheme.colorScheme.onBackground,
|
||||||
|
modifier = Modifier,
|
||||||
|
) {
|
||||||
|
postViewModel.selectImage(it)
|
||||||
|
}
|
||||||
|
|
||||||
TakePictureButton(
|
TakePictureButton(
|
||||||
onPictureTaken = {
|
onPictureTaken = {
|
||||||
postViewModel.selectImage(it)
|
postViewModel.selectImage(it)
|
||||||
|
|||||||
Reference in New Issue
Block a user