From 2272eceffa42f3b3ed0602d0f30bfafc03a9a49e Mon Sep 17 00:00:00 2001
From: syuilo <4439005+syuilo@users.noreply.github.com>
Date: Tue, 25 Mar 2025 13:19:54 +0900
Subject: [PATCH] =?UTF-8?q?enhance(frontend):=20Enter=E3=81=A7=E3=83=81?=
=?UTF-8?q?=E3=83=A3=E3=83=83=E3=83=88=E3=81=AE=E3=83=A1=E3=83=83=E3=82=BB?=
=?UTF-8?q?=E3=83=BC=E3=82=B8=E3=82=92=E9=80=81=E4=BF=A1=E3=81=A7=E3=81=8D?=
=?UTF-8?q?=E3=82=8B=E3=82=88=E3=81=86=E3=81=AB?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
locales/index.d.ts | 20 ++++++++++++++
locales/ja-JP.yml | 5 ++++
.../frontend/src/pages/chat/room.form.vue | 12 +++++++--
.../src/pages/settings/preferences.vue | 26 ++++++++++++++++++-
packages/frontend/src/preferences/def.ts | 3 +++
.../utility/autogen/settings-search-index.ts | 25 +++++++++++-------
6 files changed, 78 insertions(+), 13 deletions(-)
diff --git a/locales/index.d.ts b/locales/index.d.ts
index 0fcfcee7e5..b0da7915dc 100644
--- a/locales/index.d.ts
+++ b/locales/index.d.ts
@@ -5448,6 +5448,14 @@ export interface Locale extends ILocale {
* ホーム
*/
"home": string;
+ /**
+ * 送信
+ */
+ "send": string;
+ /**
+ * 改行
+ */
+ "newline": string;
/**
* このルームをミュート
*/
@@ -5614,11 +5622,23 @@ export interface Locale extends ILocale {
* ナビゲーションバーに副ボタンを表示
*/
"showNavbarSubButtons": string;
+ /**
+ * オンのとき
+ */
+ "ifOn": string;
+ /**
+ * オフのとき
+ */
+ "ifOff": string;
"_chat": {
/**
* 送信者の名前を表示
*/
"showSenderName": string;
+ /**
+ * Enterで送信
+ */
+ "sendOnEnter": string;
};
};
"_preferencesProfile": {
diff --git a/locales/ja-JP.yml b/locales/ja-JP.yml
index e770d04768..b95adb1871 100644
--- a/locales/ja-JP.yml
+++ b/locales/ja-JP.yml
@@ -1359,6 +1359,8 @@ _chat:
members: "メンバー"
searchMessages: "メッセージを検索"
home: "ホーム"
+ send: "送信"
+ newline: "改行"
muteThisRoom: "このルームをミュート"
deleteRoom: "ルームを削除"
cannotChatWithTheUser: "このユーザーとのチャットを開始できません"
@@ -1404,9 +1406,12 @@ _settings:
makeEveryTextElementsSelectable: "全てのテキスト要素を選択可能にする"
makeEveryTextElementsSelectable_description: "有効にすると、一部のシチュエーションでのユーザビリティが低下する場合があります。"
showNavbarSubButtons: "ナビゲーションバーに副ボタンを表示"
+ ifOn: "オンのとき"
+ ifOff: "オフのとき"
_chat:
showSenderName: "送信者の名前を表示"
+ sendOnEnter: "Enterで送信"
_preferencesProfile:
profileName: "プロファイル名"
diff --git a/packages/frontend/src/pages/chat/room.form.vue b/packages/frontend/src/pages/chat/room.form.vue
index aba9d6061f..27ddbeb565 100644
--- a/packages/frontend/src/pages/chat/room.form.vue
+++ b/packages/frontend/src/pages/chat/room.form.vue
@@ -151,8 +151,16 @@ function onDrop(ev: DragEvent): void {
}
function onKeydown(ev: KeyboardEvent) {
- if ((ev.key === 'Enter') && (ev.ctrlKey || ev.metaKey)) {
- send();
+ if (ev.key === 'Enter') {
+ if (prefer.s['chat.sendOnEnter']) {
+ if (!(ev.ctrlKey || ev.metaKey || ev.shiftKey)) {
+ send();
+ }
+ } else {
+ if ((ev.ctrlKey || ev.metaKey)) {
+ send();
+ }
+ }
}
}
diff --git a/packages/frontend/src/pages/settings/preferences.vue b/packages/frontend/src/pages/settings/preferences.vue
index 3a7d2cd490..816f8d7435 100644
--- a/packages/frontend/src/pages/settings/preferences.vue
+++ b/packages/frontend/src/pages/settings/preferences.vue
@@ -434,7 +434,7 @@ SPDX-License-Identifier: AGPL-3.0-only