rerender -> emit -> update up the tree -> rerender -> ...
// at least until vue3?
const result = (
-
+
{this.collapse
? pass2.map((x) => {
if (!Array.isArray(x)) return x.replace(/\n/g, ' ')
diff --git a/src/components/rich_content/rich_content.scss b/src/components/rich_content/rich_content.scss
index d2ec77dcb..33effc623 100644
--- a/src/components/rich_content/rich_content.scss
+++ b/src/components/rich_content/rich_content.scss
@@ -77,6 +77,14 @@
height: var(--emoji-size, 32px);
}
+ &.-allow-non-square-emoji {
+ .emoji {
+ width: auto;
+ max-width: calc(var(--emoji-size, 32px) * 3);
+ min-width: var(--emoji-size, 32px);
+ }
+ }
+
.img,
video {
max-width: 100%;
diff --git a/src/components/settings_modal/tabs/posts_tab.vue b/src/components/settings_modal/tabs/posts_tab.vue
index 1e684246d..fc33d5476 100644
--- a/src/components/settings_modal/tabs/posts_tab.vue
+++ b/src/components/settings_modal/tabs/posts_tab.vue
@@ -169,6 +169,11 @@
{{ $t('settings.stop_gifs') }}
+
+
+ {{ $t('settings.non_square_emoji') }}
+
+
@@ -153,6 +154,7 @@
diff --git a/src/components/status_body/status_body.js b/src/components/status_body/status_body.js
index 5250acb9f..1b7d26403 100644
--- a/src/components/status_body/status_body.js
+++ b/src/components/status_body/status_body.js
@@ -43,6 +43,9 @@ const StatusBody = {
localCollapseSubjectDefault() {
return this.mergedConfig.collapseMessageWithSubject
},
+ allowNonSquareEmoji() {
+ return this.mergedConfig.nonSquareEmoji
+ },
// This is a bit hacky, but we want to approximate post height before rendering
// so we count newlines (masto uses
for paragraphs, GS uses between them)
// as well as approximate line count by counting characters and approximating ~80
diff --git a/src/components/status_body/status_body.vue b/src/components/status_body/status_body.vue
index 677781d97..f724f2413 100644
--- a/src/components/status_body/status_body.vue
+++ b/src/components/status_body/status_body.vue
@@ -15,6 +15,7 @@
:html="status.summary_raw_html"
:emoji="status.emojis"
:is-local="status.isLocal"
+ :allow-non-square-emoji="allowNonSquareEmoji"
/>
@@ -423,6 +425,7 @@
diff --git a/src/components/user_list_popover/user_list_popover.js b/src/components/user_list_popover/user_list_popover.js
index bdc8cacdf..f3250de35 100644
--- a/src/components/user_list_popover/user_list_popover.js
+++ b/src/components/user_list_popover/user_list_popover.js
@@ -23,6 +23,9 @@ const UserListPopover = {
usersCapped() {
return this.users.slice(0, 16)
},
+ allowNonSquareEmoji() {
+ return useMergedConfigStore().mergedConfig.nonSquareEmoji
+ },
},
}
diff --git a/src/components/user_list_popover/user_list_popover.vue b/src/components/user_list_popover/user_list_popover.vue
index fdd2f3ce0..dffce7de8 100644
--- a/src/components/user_list_popover/user_list_popover.vue
+++ b/src/components/user_list_popover/user_list_popover.vue
@@ -27,6 +27,7 @@
:title="'@'+user.screen_name_ui"
:html="user.name_html"
:emoji="user.emoji"
+ :allow-non-square-emoji="allowNonSquareEmoji"
/>
{{ user.screen_name_ui }}
diff --git a/src/i18n/en.json b/src/i18n/en.json
index 6aad492c2..9b5a7439d 100644
--- a/src/i18n/en.json
+++ b/src/i18n/en.json
@@ -794,6 +794,7 @@
"default_post_status_content_type": "Default post status content type",
"sensitive_by_default": "Mark posts as sensitive by default",
"stop_gifs": "Pause animated images until you hover on them",
+ "non_square_emoji": "Allow non-square emoji",
"streaming": "Automatically show new posts when scrolled to the top",
"auto_update": "Show new posts automatically",
"user_mutes": "Users",
diff --git a/src/modules/default_config_state.js b/src/modules/default_config_state.js
index 318c96d03..208dc548b 100644
--- a/src/modules/default_config_state.js
+++ b/src/modules/default_config_state.js
@@ -229,6 +229,10 @@ export const INSTANCE_DEFAULT_CONFIG_DEFINITIONS = {
description: 'Play animated gifs on hover only',
default: true,
},
+ nonSquareEmoji: {
+ description: 'Allow emoji to be non-square (max 3:1 aspect)',
+ default: true,
+ },
replyVisibility: {
description: 'Type of replies to show',
default: 'all',
diff --git a/src/services/notification_utils/notification_utils.js b/src/services/notification_utils/notification_utils.js
index 6df02d9b3..1fbaf2a2c 100644
--- a/src/services/notification_utils/notification_utils.js
+++ b/src/services/notification_utils/notification_utils.js
@@ -113,7 +113,6 @@ export const unseenNotificationsFromStore = (
) => {
return filteredNotificationsFromStore(store, notificationVisibility).filter(
({ seen, type }) => {
- console.log(ignoreInactionableSeen)
if (!ignoreInactionableSeen) return !seen
if (seen) return false
return ACTIONABLE_NOTIFICATION_TYPES.has(type)