diff options
Diffstat (limited to 'packages/frontend/src/components/MkWatermarkEditorDialog.Layer.vue')
| -rw-r--r-- | packages/frontend/src/components/MkWatermarkEditorDialog.Layer.vue | 24 |
1 files changed, 23 insertions, 1 deletions
diff --git a/packages/frontend/src/components/MkWatermarkEditorDialog.Layer.vue b/packages/frontend/src/components/MkWatermarkEditorDialog.Layer.vue index 288293db3f..b34181e5cc 100644 --- a/packages/frontend/src/components/MkWatermarkEditorDialog.Layer.vue +++ b/packages/frontend/src/components/MkWatermarkEditorDialog.Layer.vue @@ -65,6 +65,10 @@ SPDX-License-Identifier: AGPL-3.0-only <MkSwitch v-model="layer.repeat"> <template #label>{{ i18n.ts._watermarkEditor.repeat }}</template> </MkSwitch> + + <MkSwitch v-model="layerPreserveBoundingRect"> + <template #label>{{ i18n.ts._watermarkEditor.preserveBoundingRect }}</template> + </MkSwitch> </template> <template v-else-if="layer.type === 'image'"> @@ -129,6 +133,10 @@ SPDX-License-Identifier: AGPL-3.0-only <MkSwitch v-model="layer.cover"> <template #label>{{ i18n.ts._watermarkEditor.cover }}</template> </MkSwitch> + + <MkSwitch v-model="layerPreserveBoundingRect"> + <template #label>{{ i18n.ts._watermarkEditor.preserveBoundingRect }}</template> + </MkSwitch> </template> <template v-else-if="layer.type === 'qr'"> @@ -335,7 +343,7 @@ SPDX-License-Identifier: AGPL-3.0-only </template> <script setup lang="ts"> -import { ref, onMounted } from 'vue'; +import { ref, onMounted, computed } from 'vue'; import * as Misskey from 'misskey-js'; import type { WatermarkPreset } from '@/utility/watermark.js'; import { i18n } from '@/i18n.js'; @@ -351,6 +359,20 @@ import { misskeyApi } from '@/utility/misskey-api.js'; const layer = defineModel<WatermarkPreset['layers'][number]>('layer', { required: true }); +const layerPreserveBoundingRect = computed({ + get: () => { + if (layer.value.type === 'text' || layer.value.type === 'image') { + return !layer.value.noBoundingBoxExpansion; + } + return false; + }, + set: (v: boolean) => { + if (layer.value.type === 'text' || layer.value.type === 'image') { + layer.value.noBoundingBoxExpansion = !v; + } + }, +}); + const driveFile = ref<Misskey.entities.DriveFile | null>(null); const driveFileError = ref(false); onMounted(async () => { |