From c2940fd77cba7b0cf912db9fda92e66dbce9110f Mon Sep 17 00:00:00 2001 From: syuilo <4439005+syuilo@users.noreply.github.com> Date: Sun, 16 Mar 2025 10:58:06 +0900 Subject: [PATCH] enhance(frontend): improve usability on touch device --- locales/index.d.ts | 8 ++++++++ locales/ja-JP.yml | 2 ++ packages/frontend/src/boot/common.ts | 4 ++++ packages/frontend/src/components/MkDialog.vue | 4 ++-- packages/frontend/src/components/MkInfo.vue | 2 +- packages/frontend/src/components/MkInput.vue | 8 ++++---- .../frontend/src/components/MkInviteCode.vue | 2 +- packages/frontend/src/components/MkKeyValue.vue | 2 +- packages/frontend/src/components/MkNote.vue | 3 ++- .../frontend/src/components/MkNoteDetailed.vue | 3 ++- packages/frontend/src/components/MkTextarea.vue | 4 ++-- .../src/pages/settings/accessibility.vue | 11 +++++++++++ packages/frontend/src/preferences/def.ts | 3 +++ packages/frontend/src/style.scss | 17 +++++++++++++++++ .../utility/autogen/settings-search-index.ts | 13 +++++++++---- 15 files changed, 69 insertions(+), 17 deletions(-) diff --git a/locales/index.d.ts b/locales/index.d.ts index 00d275ee43..7e4892eb39 100644 --- a/locales/index.d.ts +++ b/locales/index.d.ts @@ -5433,6 +5433,14 @@ export interface Locale extends ILocale { * タイムラインとノート */ "timelineAndNote": string; + /** + * 全てのテキスト要素を選択可能にする + */ + "makeEveryTextElementsSelectable": string; + /** + * 有効にすると、一部のシチュエーションでのユーザビリティが低下する場合があります。 + */ + "makeEveryTextElementsSelectable_description": string; }; "_preferencesProfile": { /** diff --git a/locales/ja-JP.yml b/locales/ja-JP.yml index 8e787fa02f..f17c5a1278 100644 --- a/locales/ja-JP.yml +++ b/locales/ja-JP.yml @@ -1357,6 +1357,8 @@ _settings: appearanceBanner: "好みに応じた、クライアントの見た目・表示方法に関する設定が行えます。" soundsBanner: "クライアントで再生するサウンドの設定が行えます。" timelineAndNote: "タイムラインとノート" + makeEveryTextElementsSelectable: "全てのテキスト要素を選択可能にする" + makeEveryTextElementsSelectable_description: "有効にすると、一部のシチュエーションでのユーザビリティが低下する場合があります。" _preferencesProfile: profileName: "プロファイル名" diff --git a/packages/frontend/src/boot/common.ts b/packages/frontend/src/boot/common.ts index 73c4256c4b..10bcddbde7 100644 --- a/packages/frontend/src/boot/common.ts +++ b/packages/frontend/src/boot/common.ts @@ -234,6 +234,10 @@ export async function common(createVue: () => App) { }); } + if (prefer.s.makeEveryTextElementsSelectable) { + document.documentElement.classList.add('forceSelectableAll'); + } + //#region Fetch user if ($i && $i.token) { if (_DEV_) { diff --git a/packages/frontend/src/components/MkDialog.vue b/packages/frontend/src/components/MkDialog.vue index 6c9fa3167a..312c7ab58f 100644 --- a/packages/frontend/src/components/MkDialog.vue +++ b/packages/frontend/src/components/MkDialog.vue @@ -25,8 +25,8 @@ SPDX-License-Identifier: AGPL-3.0-only -
-
+
+