android, desktop: saving and sharing files menu item (#3580)
This commit is contained in:
parent
c4855313b6
commit
8b0d2dede7
@ -195,7 +195,13 @@ fun ChatItemView(
|
|||||||
}
|
}
|
||||||
val clipboard = LocalClipboardManager.current
|
val clipboard = LocalClipboardManager.current
|
||||||
val cachedRemoteReqs = remember { CIFile.cachedRemoteFileRequests }
|
val cachedRemoteReqs = remember { CIFile.cachedRemoteFileRequests }
|
||||||
val copyAndShareAllowed = cItem.file == null || !chatModel.connectedToRemote() || getLoadedFilePath(cItem.file) != null || cachedRemoteReqs[cItem.file.fileSource] != false
|
val copyAndShareAllowed = when {
|
||||||
|
cItem.content.text.isNotEmpty() -> true
|
||||||
|
cItem.file != null && chatModel.connectedToRemote() && cachedRemoteReqs[cItem.file.fileSource] != false && cItem.file.loaded -> true
|
||||||
|
getLoadedFilePath(cItem.file) != null -> true
|
||||||
|
else -> false
|
||||||
|
}
|
||||||
|
|
||||||
if (copyAndShareAllowed) {
|
if (copyAndShareAllowed) {
|
||||||
ItemAction(stringResource(MR.strings.share_verb), painterResource(MR.images.ic_share), onClick = {
|
ItemAction(stringResource(MR.strings.share_verb), painterResource(MR.images.ic_share), onClick = {
|
||||||
var fileSource = getLoadedFileSource(cItem.file)
|
var fileSource = getLoadedFileSource(cItem.file)
|
||||||
@ -221,7 +227,7 @@ fun ChatItemView(
|
|||||||
showMenu.value = false
|
showMenu.value = false
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
if ((cItem.content.msgContent is MsgContent.MCImage || cItem.content.msgContent is MsgContent.MCVideo || cItem.content.msgContent is MsgContent.MCFile || cItem.content.msgContent is MsgContent.MCVoice) && (getLoadedFilePath(cItem.file) != null || (chatModel.connectedToRemote() && cachedRemoteReqs[cItem.file?.fileSource] != false))) {
|
if ((cItem.content.msgContent is MsgContent.MCImage || cItem.content.msgContent is MsgContent.MCVideo || cItem.content.msgContent is MsgContent.MCFile || cItem.content.msgContent is MsgContent.MCVoice) && (getLoadedFilePath(cItem.file) != null || (chatModel.connectedToRemote() && cachedRemoteReqs[cItem.file?.fileSource] != false && cItem.file?.loaded == true))) {
|
||||||
SaveContentItemAction(cItem, saveFileLauncher, showMenu)
|
SaveContentItemAction(cItem, saveFileLauncher, showMenu)
|
||||||
}
|
}
|
||||||
if (cItem.meta.editable && cItem.content.msgContent !is MsgContent.MCVoice && !live) {
|
if (cItem.meta.editable && cItem.content.msgContent !is MsgContent.MCVoice && !live) {
|
||||||
|
Loading…
Reference in New Issue
Block a user