diff --git a/src/App.js b/src/App.js
index 934b96713..f3f3872bf 100644
--- a/src/App.js
+++ b/src/App.js
@@ -186,7 +186,7 @@ export default {
return useShoutStore().joined
},
isChats() {
- return this.$route.name === 'chat' || this.$route.name === 'chats'
+ return this.$route.name === 'chat' || this.$route.name === 'chats' || this.$route.name === 'conversation2'
},
isListEdit() {
return this.$route.name === 'lists-edit'
@@ -205,7 +205,7 @@ export default {
)
},
hideShoutbox() {
- return useMergedConfigStore().mergedConfig.hideShoutbox
+ return this.isChats || useMergedConfigStore().mergedConfig.hideShoutbox
},
reverseLayout() {
const { thirdColumnMode, sidebarRight: reverseSetting } =
diff --git a/src/components/chat_list_item/chat_list_item.js b/src/components/chat_list_item/chat_list_item.js
index 3bbb93d60..c95895def 100644
--- a/src/components/chat_list_item/chat_list_item.js
+++ b/src/components/chat_list_item/chat_list_item.js
@@ -60,7 +60,7 @@ const ChatListItem = {
name: 'chat',
params: {
username: this.currentUser.screen_name,
- recipient_id: this.chat.account.id,
+ chatUserId: this.chat.account.id,
},
})
}
diff --git a/src/components/chat_message/chat_message.scss b/src/components/chat_message/chat_message.scss
index becf1c0b0..e23ca3bd0 100644
--- a/src/components/chat_message/chat_message.scss
+++ b/src/components/chat_message/chat_message.scss
@@ -12,7 +12,7 @@
}
.attachments {
- min-width: 30em;
+ min-width: 10em;
}
.quoted-post {
diff --git a/src/components/chat_message/chat_message.vue b/src/components/chat_message/chat_message.vue
index c3deac0a5..62818d23e 100644
--- a/src/components/chat_message/chat_message.vue
+++ b/src/components/chat_message/chat_message.vue
@@ -108,6 +108,7 @@
fixed-pinned
use-default-buttons
hide-labels
+ in-chat-view
@toggle-replying="$emit('replyRequested', message)"
/>
+
+
+ {{ $t('settings.submit_on_enter_in_chats') }}
+
+
{{ $t('settings.attachments') }}
diff --git a/src/components/status_action_buttons/action_button.js b/src/components/status_action_buttons/action_button.js
index 842944965..edc969b5b 100644
--- a/src/components/status_action_buttons/action_button.js
+++ b/src/components/status_action_buttons/action_button.js
@@ -18,6 +18,7 @@ import {
faChevronDown,
faChevronRight,
faComments,
+ faList,
faExternalLinkAlt,
faEye,
faEyeSlash,
@@ -58,6 +59,7 @@ library.add(
faPencil,
faShareAlt,
faComments,
+ faList,
faExternalLinkAlt,
faHistory,
)
diff --git a/src/components/status_action_buttons/buttons_definitions.js b/src/components/status_action_buttons/buttons_definitions.js
index 8dde74364..b3762b8ec 100644
--- a/src/components/status_action_buttons/buttons_definitions.js
+++ b/src/components/status_action_buttons/buttons_definitions.js
@@ -222,13 +222,30 @@ export const BUTTONS = [
// =========
// OPEN IN CHAT VIEW
// =========
- name: 'edit',
+ name: 'chat_view',
icon: 'comments',
label: 'status.open_in_chat_view',
+ if({ chatView }) {
+ return !chatView
+ },
action({ router, status }) {
router.push({ name: 'conversation2', params: { statusId: status.id } })
},
},
+ {
+ // =========
+ // OPEN IN THREAD VIEW
+ // =========
+ name: 'thread_view',
+ icon: 'list',
+ label: 'status.open_in_thread_view',
+ if({ chatView }) {
+ return chatView
+ },
+ action({ router, status }) {
+ router.push({ name: 'conversation', params: { id: status.id } })
+ },
+ },
{
// =========
// DELETE
diff --git a/src/components/status_action_buttons/status_action_buttons.js b/src/components/status_action_buttons/status_action_buttons.js
index d9c7943b7..73ac6ff7e 100644
--- a/src/components/status_action_buttons/status_action_buttons.js
+++ b/src/components/status_action_buttons/status_action_buttons.js
@@ -39,6 +39,10 @@ const StatusActionButtons = {
type: Boolean,
default: false,
},
+ inChatView: {
+ type: Boolean,
+ default: false,
+ },
},
emits: ['toggleReplying', 'onSuccess', 'onError'],
data() {
@@ -98,6 +102,7 @@ const StatusActionButtons = {
router: this.$router,
currentUser: this.currentUser,
loggedIn: !!this.currentUser,
+ chatView: !!this.inChatView,
}
},
triggerAttrs() {
diff --git a/src/i18n/en.json b/src/i18n/en.json
index 120054ddf..60fcaf1dd 100644
--- a/src/i18n/en.json
+++ b/src/i18n/en.json
@@ -780,6 +780,7 @@
"subject_line_email": "Like email: \"re: subject\"",
"subject_line_mastodon": "Like mastodon: copy as is",
"subject_line_noop": "Do not copy",
+ "submit_on_enter_in_chats": "Send message on Enter in chats",
"force_theme_recompilation_debug": "Disable theme cahe, force recompile on each boot",
"conversation_display": "Conversation display style",
"conversation_display_tree": "Tree-style",
@@ -1648,6 +1649,7 @@
"edit": "Edit status",
"edited_at": "(last edited {time})",
"open_in_chat_view": "Open in chat view",
+ "open_in_thread_view": "Open in thread view",
"pin": "Pin on profile",
"unpin": "Unpin from profile",
"pinned": "Pinned",
diff --git a/src/modules/default_config_state.js b/src/modules/default_config_state.js
index d9a2ba247..9935e88ce 100644
--- a/src/modules/default_config_state.js
+++ b/src/modules/default_config_state.js
@@ -673,6 +673,11 @@ export const LOCAL_DEFAULT_CONFIG_DEFINITIONS = {
type: 'string',
default: null,
},
+ chatSubmitOnEnter: {
+ description: 'Post status on enter key in chats and chat view',
+ type: 'boolean',
+ default: false,
+ },
themeDebug: {
description:
'Debug mode that uses computed backgrounds instead of real ones to debug contrast functions',