From ddfc3b8a6a398f005ccb186654572b37f5e232a5 Mon Sep 17 00:00:00 2001 From: taichan <40626578+tai-cha@users.noreply.github.com> Date: Mon, 5 Feb 2024 15:01:31 +0900 Subject: Fix(frontend): クロップ後の解像度が異様に低くなる問題の修正&クロップに失敗する問題&コメントにnullという文字列が入る問題の修正 (#13162) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Fix(frontend): Fix resolution of cropped image (misskey-dev#11489) * CHANGELOG * Fix(frontend): クロップの際、folderIdがnullだと文字列のnullが送られ検索できない問題 * Fix: キャプションが存在しないときにクロップすると'null'がキャプションに入ってしまう問題 (misskey-dev#11813) * Update CHANGELOG --- packages/frontend/src/components/MkCropperDialog.vue | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) (limited to 'packages/frontend/src/components') diff --git a/packages/frontend/src/components/MkCropperDialog.vue b/packages/frontend/src/components/MkCropperDialog.vue index 0a1ddd3171..745453646c 100644 --- a/packages/frontend/src/components/MkCropperDialog.vue +++ b/packages/frontend/src/components/MkCropperDialog.vue @@ -63,18 +63,25 @@ const loading = ref(true); const ok = async () => { const promise = new Promise(async (res) => { - const croppedCanvas = await cropper?.getCropperSelection()?.$toCanvas(); + const croppedImage = await cropper?.getCropperImage(); + const croppedSection = await cropper?.getCropperSelection(); + + // 拡大率を計算し、(ほぼ)元の大きさに戻す + const zoomedRate = croppedImage.getBoundingClientRect().width / croppedImage.clientWidth; + const widthToRender = croppedSection.getBoundingClientRect().width / zoomedRate; + + const croppedCanvas = await croppedSection?.$toCanvas({ width: widthToRender }); croppedCanvas?.toBlob(blob => { if (!blob) return; const formData = new FormData(); formData.append('file', blob); formData.append('name', `cropped_${props.file.name}`); formData.append('isSensitive', props.file.isSensitive ? 'true' : 'false'); - formData.append('comment', props.file.comment ?? 'null'); + if (props.file.comment) { formData.append('comment', props.file.comment);} formData.append('i', $i!.token); - if (props.uploadFolder || props.uploadFolder === null) { - formData.append('folderId', props.uploadFolder ?? 'null'); - } else if (defaultStore.state.uploadFolder) { + if (props.uploadFolder) { + formData.append('folderId', props.uploadFolder); + } else if (props.uploadFolder !== null && defaultStore.state.uploadFolder) { formData.append('folderId', defaultStore.state.uploadFolder); } -- cgit v1.2.3-freya From 16eccad49271b81282cdbd482d29e7a8bb048f4c Mon Sep 17 00:00:00 2001 From: かっこかり <67428053+kakkokari-gtyih@users.noreply.github.com> Date: Tue, 6 Feb 2024 15:03:07 +0900 Subject: enhance(frontend): シンタックスハイライトにテーマを適用できるように (#13175) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * enhance(frontend): シンタックスハイライトにテーマを適用できるように * Update Changelog * こっちも * テーマの値がディープマージされるように * 常にテーマ設定に準じるように * テーマ更新時に新しいshikiテーマを読み込むように --- CHANGELOG.md | 1 + packages/frontend/src/components/MkCode.core.vue | 56 +++++++++++++++++-- packages/frontend/src/components/MkCode.vue | 8 +-- packages/frontend/src/components/MkCodeEditor.vue | 5 +- packages/frontend/src/components/MkCodeInline.vue | 3 +- packages/frontend/src/components/MkSelect.vue | 7 ++- packages/frontend/src/pages/settings/theme.vue | 15 ++++- packages/frontend/src/pizzax.ts | 23 +------- packages/frontend/src/router/main.ts | 4 ++ packages/frontend/src/scripts/clone.ts | 4 +- packages/frontend/src/scripts/code-highlighter.ts | 68 ++++++++++++++++++++++- packages/frontend/src/scripts/merge.ts | 31 +++++++++++ packages/frontend/src/scripts/theme.ts | 10 +++- packages/frontend/src/store.ts | 1 + packages/frontend/src/themes/_dark.json5 | 4 ++ packages/frontend/src/themes/_light.json5 | 4 ++ 16 files changed, 202 insertions(+), 42 deletions(-) create mode 100644 packages/frontend/src/scripts/merge.ts (limited to 'packages/frontend/src/components') diff --git a/CHANGELOG.md b/CHANGELOG.md index c089aae279..c39a447c59 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -49,6 +49,7 @@ - Enhance: MFMの属性でオートコンプリートが使用できるように #12735 - Enhance: 絵文字編集ダイアログをモーダルではなくウィンドウで表示するように - Enhance: リモートのユーザーはメニューから直接リモートで表示できるように +- Enhance: コードのシンタックスハイライトにテーマを適用できるように - Fix: ネイティブモードの絵文字がモノクロにならないように - Fix: v2023.12.0で追加された「モデレーターがユーザーのアイコンもしくはバナー画像を未設定状態にできる機能」が管理画面上で正しく表示されていない問題を修正 - Fix: AiScriptの`readline`関数が不正な値を返すことがある問題のv2023.12.0時点での修正がPlay以外に適用されていないのを修正 diff --git a/packages/frontend/src/components/MkCode.core.vue b/packages/frontend/src/components/MkCode.core.vue index c655ff416e..68c50c4c69 100644 --- a/packages/frontend/src/components/MkCode.core.vue +++ b/packages/frontend/src/components/MkCode.core.vue @@ -5,14 +5,15 @@ SPDX-License-Identifier: AGPL-3.0-only