feat: add privacy toggle to ImageVideoDescription

Add stripMetadata state and SettingSwitchItem toggle. Extend onAdd
callback signature with 6th Boolean parameter for stripMetadata.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
davotoula
2026-03-18 10:36:56 +01:00
parent f7a9389a66
commit 0d514a46d7
@@ -79,7 +79,7 @@ fun ImageVideoDescription(
uris: MultiOrchestrator,
defaultServer: ServerName,
isUploading: Boolean,
onAdd: (String, ServerName, Boolean, Int, Boolean) -> Unit,
onAdd: (String, ServerName, Boolean, Int, Boolean, Boolean) -> Unit,
onDelete: (SelectedMediaProcessing) -> Unit,
onCancel: () -> Unit,
accountViewModel: AccountViewModel,
@@ -108,6 +108,8 @@ fun ImageVideoDescription(
// Codec selection: false = H264, true = H265
var useH265Codec by remember { mutableStateOf(false) }
var stripMetadata by remember { mutableStateOf(true) }
Column(
modifier =
Modifier
@@ -248,6 +250,17 @@ fun ImageVideoDescription(
)
}
SettingSwitchItem(
title = R.string.strip_metadata_label,
description = R.string.strip_metadata_description,
modifier =
Modifier
.fillMaxWidth()
.padding(top = 8.dp),
checked = stripMetadata,
onCheckedChange = { stripMetadata = it },
)
Row(
verticalAlignment = Alignment.CenterVertically,
modifier =
@@ -321,7 +334,7 @@ fun ImageVideoDescription(
.fillMaxWidth()
.padding(vertical = 10.dp),
enabled = !isUploading,
onClick = { onAdd(message, selectedServer, sensitiveContent, mediaQualitySlider, useH265Codec) },
onClick = { onAdd(message, selectedServer, sensitiveContent, mediaQualitySlider, useH265Codec, stripMetadata) },
shape = QuoteBorder,
colors =
ButtonDefaults.buttonColors(