diff --git a/src/components/status.css b/src/components/status.css
index edb11143..2c2bdc50 100644
--- a/src/components/status.css
+++ b/src/components/status.css
@@ -485,6 +485,16 @@
padding-inline-start: 12px;
}
+.status > .container .status-quote-meta {
+ font-size: small;
+ color: var(--link-color);
+ margin-block: -4px 2px;
+
+ .status-card-link:visited & {
+ color: var(--link-visited-color);
+ }
+}
+
.status > .container > .meta {
display: flex;
gap: 4px;
diff --git a/src/components/status.jsx b/src/components/status.jsx
index 8d467a4a..b4cdf37b 100644
--- a/src/components/status.jsx
+++ b/src/components/status.jsx
@@ -295,6 +295,7 @@ function Status({
allowFilters,
onMediaClick,
quoted,
+ quoteDomain,
onStatusLinkClick = () => {},
showFollowedTags,
allowContextMenu,
@@ -1838,6 +1839,11 @@ function Status({
)}
+ {!!quoteDomain && (
+
+ {quoteDomain}
+
+ )}
{!!(status.account || createdAt) && (
@@ -2711,6 +2717,7 @@ const QuoteStatuses = memo(({ id, instance, level = 0 }) => {
instance={q.instance}
size="s"
quoted={level + 1}
+ quoteDomain={q.originalDomain}
enableCommentHint
/>
diff --git a/src/locales/en.po b/src/locales/en.po
index 2d039fda..e41b14df 100644
--- a/src/locales/en.po
+++ b/src/locales/en.po
@@ -34,7 +34,7 @@ msgstr ""
#: src/components/account-block.jsx:190
#: src/components/account-info.jsx:675
-#: src/components/status.jsx:528
+#: src/components/status.jsx:529
msgid "Group"
msgstr ""
@@ -115,11 +115,11 @@ msgstr ""
#: src/components/media-attachment.jsx:380
#: src/components/media-modal.jsx:363
#: src/components/related-actions.jsx:238
-#: src/components/status.jsx:1780
-#: src/components/status.jsx:1797
-#: src/components/status.jsx:1928
-#: src/components/status.jsx:2552
-#: src/components/status.jsx:2555
+#: src/components/status.jsx:1781
+#: src/components/status.jsx:1798
+#: src/components/status.jsx:1934
+#: src/components/status.jsx:2558
+#: src/components/status.jsx:2561
#: src/pages/account-statuses.jsx:539
#: src/pages/accounts.jsx:118
#: src/pages/hashtag.jsx:203
@@ -224,7 +224,7 @@ msgid "Original"
msgstr ""
#: src/components/account-info.jsx:943
-#: src/components/status.jsx:2337
+#: src/components/status.jsx:2343
#: src/pages/catchup.jsx:70
#: src/pages/catchup.jsx:1446
#: src/pages/catchup.jsx:2059
@@ -272,8 +272,8 @@ msgstr "View post stats"
#: src/components/shortcuts-settings.jsx:230
#: src/components/shortcuts-settings.jsx:583
#: src/components/shortcuts-settings.jsx:783
-#: src/components/status.jsx:2751
-#: src/components/status.jsx:2963
+#: src/components/status.jsx:2758
+#: src/components/status.jsx:2970
#: src/components/translated-bio-sheet.jsx:21
#: src/pages/accounts.jsx:45
#: src/pages/catchup.jsx:1582
@@ -492,7 +492,7 @@ msgid "Attachment #{i} failed"
msgstr "Attachment #{i} failed"
#: src/components/compose.jsx:1262
-#: src/components/status.jsx:2112
+#: src/components/status.jsx:2118
#: src/components/timeline.jsx:1016
msgid "Content warning"
msgstr ""
@@ -549,7 +549,7 @@ msgid "Quiet public"
msgstr "Quiet public"
#: src/components/compose.jsx:1717
-#: src/components/status.jsx:1992
+#: src/components/status.jsx:1998
#: src/utils/visibility-text.jsx:8
msgid "Private mention"
msgstr ""
@@ -560,10 +560,10 @@ msgstr "Schedule"
#: src/components/compose.jsx:1725
#: src/components/keyboard-shortcuts-help.jsx:155
-#: src/components/status.jsx:974
-#: src/components/status.jsx:1760
+#: src/components/status.jsx:975
#: src/components/status.jsx:1761
-#: src/components/status.jsx:2456
+#: src/components/status.jsx:1762
+#: src/components/status.jsx:2462
msgid "Reply"
msgstr ""
@@ -636,7 +636,7 @@ msgstr ""
#: src/components/drafts.jsx:126
#: src/components/list-add-edit.jsx:188
-#: src/components/status.jsx:1377
+#: src/components/status.jsx:1378
#: src/pages/filters.jsx:603
#: src/pages/scheduled-posts.jsx:368
msgid "Delete…"
@@ -938,10 +938,10 @@ msgid "<0>l0> or <1>f1>"
msgstr ""
#: src/components/keyboard-shortcuts-help.jsx:176
-#: src/components/status.jsx:982
-#: src/components/status.jsx:2483
-#: src/components/status.jsx:2506
-#: src/components/status.jsx:2507
+#: src/components/status.jsx:983
+#: src/components/status.jsx:2489
+#: src/components/status.jsx:2512
+#: src/components/status.jsx:2513
msgid "Boost"
msgstr ""
@@ -950,9 +950,9 @@ msgid "<0>Shift0> + <1>b1>"
msgstr ""
#: src/components/keyboard-shortcuts-help.jsx:184
-#: src/components/status.jsx:1045
-#: src/components/status.jsx:2531
-#: src/components/status.jsx:2532
+#: src/components/status.jsx:1046
+#: src/components/status.jsx:2537
+#: src/components/status.jsx:2538
msgid "Bookmark"
msgstr ""
@@ -1035,14 +1035,14 @@ msgid "Media description"
msgstr ""
#: src/components/media-alt-modal.jsx:67
-#: src/components/status.jsx:1088
-#: src/components/status.jsx:1097
+#: src/components/status.jsx:1089
+#: src/components/status.jsx:1098
#: src/components/translation-block.jsx:239
msgid "Translate"
msgstr ""
#: src/components/media-alt-modal.jsx:78
-#: src/components/status.jsx:1116
+#: src/components/status.jsx:1117
msgid "Speak"
msgstr ""
@@ -1169,8 +1169,8 @@ msgstr ""
#: src/components/media-post.jsx:133
#: src/components/status-compact.jsx:70
-#: src/components/status.jsx:2889
-#: src/components/status.jsx:2967
+#: src/components/status.jsx:2896
+#: src/components/status.jsx:2974
#: src/components/timeline.jsx:1005
#: src/pages/catchup.jsx:74
#: src/pages/catchup.jsx:1878
@@ -1491,8 +1491,8 @@ msgid "[Unknown notification type: {type}]"
msgstr ""
#: src/components/notification.jsx:451
-#: src/components/status.jsx:1059
-#: src/components/status.jsx:1069
+#: src/components/status.jsx:1060
+#: src/components/status.jsx:1070
msgid "Boosted/Liked by…"
msgstr ""
@@ -1524,13 +1524,13 @@ msgstr ""
#: src/components/open-link-sheet.jsx:30
#: src/components/related-actions.jsx:492
-#: src/components/status.jsx:1202
+#: src/components/status.jsx:1203
msgid "Link copied"
msgstr ""
#: src/components/open-link-sheet.jsx:33
#: src/components/related-actions.jsx:495
-#: src/components/status.jsx:1205
+#: src/components/status.jsx:1206
msgid "Unable to copy link"
msgstr ""
@@ -1542,13 +1542,13 @@ msgstr "Open link?"
#: src/components/post-embed-modal.jsx:232
#: src/components/related-actions.jsx:501
#: src/components/shortcuts-settings.jsx:1059
-#: src/components/status.jsx:1211
+#: src/components/status.jsx:1212
msgid "Copy"
msgstr ""
#: src/components/open-link-sheet.jsx:82
#: src/components/related-actions.jsx:522
-#: src/components/status.jsx:1233
+#: src/components/status.jsx:1234
msgid "Share…"
msgstr ""
@@ -1616,7 +1616,7 @@ msgid "Ending"
msgstr "Ending"
#: src/components/post-embed-modal.jsx:201
-#: src/components/status.jsx:1246
+#: src/components/status.jsx:1247
msgid "Embed post"
msgstr ""
@@ -1808,7 +1808,7 @@ msgstr "Show featured profiles"
#: src/components/related-actions.jsx:516
#: src/components/shortcuts-settings.jsx:1077
-#: src/components/status.jsx:1227
+#: src/components/status.jsx:1228
msgid "Sharing doesn't seem to work."
msgstr ""
@@ -2146,7 +2146,7 @@ msgid "Move down"
msgstr ""
#: src/components/shortcuts-settings.jsx:379
-#: src/components/status.jsx:1339
+#: src/components/status.jsx:1340
#: src/pages/list.jsx:195
msgid "Edit"
msgstr ""
@@ -2345,268 +2345,268 @@ msgstr ""
msgid "Import/export settings from/to instance server (Very experimental)"
msgstr ""
-#: src/components/status.jsx:552
+#: src/components/status.jsx:553
msgid "<0/> <1>boosted1>"
msgstr "<0/> <1>boosted1>"
-#: src/components/status.jsx:655
+#: src/components/status.jsx:656
msgid "Sorry, your current logged-in instance can't interact with this post from another instance."
msgstr ""
#. placeholder {0}: username || acct
-#: src/components/status.jsx:809
+#: src/components/status.jsx:810
msgid "Unliked @{0}'s post"
msgstr ""
#. placeholder {0}: username || acct
-#: src/components/status.jsx:810
+#: src/components/status.jsx:811
msgid "Liked @{0}'s post"
msgstr "Liked @{0}'s post"
#. placeholder {0}: username || acct
-#: src/components/status.jsx:849
+#: src/components/status.jsx:850
msgid "Unbookmarked @{0}'s post"
msgstr "Unbookmarked @{0}'s post"
#. placeholder {0}: username || acct
-#: src/components/status.jsx:850
+#: src/components/status.jsx:851
msgid "Bookmarked @{0}'s post"
msgstr "Bookmarked @{0}'s post"
-#: src/components/status.jsx:951
+#: src/components/status.jsx:952
msgid "Some media have no descriptions."
msgstr ""
#. placeholder {0}: rtf.format(-statusMonthsAgo, 'month')
-#: src/components/status.jsx:958
+#: src/components/status.jsx:959
msgid "Old post (<0>{0}0>)"
msgstr ""
-#: src/components/status.jsx:982
-#: src/components/status.jsx:1022
-#: src/components/status.jsx:2483
-#: src/components/status.jsx:2506
+#: src/components/status.jsx:983
+#: src/components/status.jsx:1023
+#: src/components/status.jsx:2489
+#: src/components/status.jsx:2512
msgid "Unboost"
msgstr ""
-#: src/components/status.jsx:998
-#: src/components/status.jsx:2498
+#: src/components/status.jsx:999
+#: src/components/status.jsx:2504
msgid "Quote"
msgstr ""
#. placeholder {0}: username || acct
-#: src/components/status.jsx:1010
-#: src/components/status.jsx:1476
+#: src/components/status.jsx:1011
+#: src/components/status.jsx:1477
msgid "Unboosted @{0}'s post"
msgstr "Unboosted @{0}'s post"
#. placeholder {0}: username || acct
-#: src/components/status.jsx:1011
-#: src/components/status.jsx:1477
+#: src/components/status.jsx:1012
+#: src/components/status.jsx:1478
msgid "Boosted @{0}'s post"
msgstr "Boosted @{0}'s post"
-#: src/components/status.jsx:1023
+#: src/components/status.jsx:1024
msgid "Boost…"
msgstr ""
-#: src/components/status.jsx:1035
-#: src/components/status.jsx:1770
-#: src/components/status.jsx:2519
+#: src/components/status.jsx:1036
+#: src/components/status.jsx:1771
+#: src/components/status.jsx:2525
msgid "Unlike"
msgstr ""
-#: src/components/status.jsx:1036
-#: src/components/status.jsx:1770
+#: src/components/status.jsx:1037
#: src/components/status.jsx:1771
-#: src/components/status.jsx:2519
-#: src/components/status.jsx:2520
+#: src/components/status.jsx:1772
+#: src/components/status.jsx:2525
+#: src/components/status.jsx:2526
msgid "Like"
msgstr ""
-#: src/components/status.jsx:1045
-#: src/components/status.jsx:2531
+#: src/components/status.jsx:1046
+#: src/components/status.jsx:2537
msgid "Unbookmark"
msgstr ""
-#: src/components/status.jsx:1128
+#: src/components/status.jsx:1129
msgid "Post text copied"
msgstr "Post text copied"
-#: src/components/status.jsx:1131
+#: src/components/status.jsx:1132
msgid "Unable to copy post text"
msgstr "Unable to copy post text"
-#: src/components/status.jsx:1137
+#: src/components/status.jsx:1138
msgid "Copy post text"
msgstr "Copy post text"
#. placeholder {0}: username || acct
-#: src/components/status.jsx:1155
+#: src/components/status.jsx:1156
msgid "View post by <0>@{0}0>"
msgstr ""
-#: src/components/status.jsx:1176
+#: src/components/status.jsx:1177
msgid "Show Edit History"
msgstr ""
-#: src/components/status.jsx:1179
+#: src/components/status.jsx:1180
msgid "Edited: {editedDateText}"
msgstr ""
-#: src/components/status.jsx:1260
+#: src/components/status.jsx:1261
msgid "Conversation unmuted"
msgstr ""
-#: src/components/status.jsx:1260
+#: src/components/status.jsx:1261
msgid "Conversation muted"
msgstr ""
-#: src/components/status.jsx:1266
+#: src/components/status.jsx:1267
msgid "Unable to unmute conversation"
msgstr ""
-#: src/components/status.jsx:1267
+#: src/components/status.jsx:1268
msgid "Unable to mute conversation"
msgstr ""
-#: src/components/status.jsx:1276
+#: src/components/status.jsx:1277
msgid "Unmute conversation"
msgstr ""
-#: src/components/status.jsx:1283
+#: src/components/status.jsx:1284
msgid "Mute conversation"
msgstr ""
-#: src/components/status.jsx:1299
+#: src/components/status.jsx:1300
msgid "Post unpinned from profile"
msgstr ""
-#: src/components/status.jsx:1300
+#: src/components/status.jsx:1301
msgid "Post pinned to profile"
msgstr ""
-#: src/components/status.jsx:1305
+#: src/components/status.jsx:1306
msgid "Unable to unpin post"
msgstr ""
-#: src/components/status.jsx:1305
+#: src/components/status.jsx:1306
msgid "Unable to pin post"
msgstr ""
-#: src/components/status.jsx:1314
+#: src/components/status.jsx:1315
msgid "Unpin from profile"
msgstr ""
-#: src/components/status.jsx:1321
+#: src/components/status.jsx:1322
msgid "Pin to profile"
msgstr ""
-#: src/components/status.jsx:1350
+#: src/components/status.jsx:1351
msgid "Delete this post?"
msgstr ""
-#: src/components/status.jsx:1366
+#: src/components/status.jsx:1367
msgid "Post deleted"
msgstr ""
-#: src/components/status.jsx:1369
+#: src/components/status.jsx:1370
msgid "Unable to delete post"
msgstr ""
-#: src/components/status.jsx:1397
+#: src/components/status.jsx:1398
msgid "Report post…"
msgstr ""
-#: src/components/status.jsx:1771
-#: src/components/status.jsx:1807
-#: src/components/status.jsx:2520
+#: src/components/status.jsx:1772
+#: src/components/status.jsx:1808
+#: src/components/status.jsx:2526
msgid "Liked"
msgstr ""
-#: src/components/status.jsx:1804
-#: src/components/status.jsx:2507
+#: src/components/status.jsx:1805
+#: src/components/status.jsx:2513
msgid "Boosted"
msgstr ""
-#: src/components/status.jsx:1814
-#: src/components/status.jsx:2532
+#: src/components/status.jsx:1815
+#: src/components/status.jsx:2538
msgid "Bookmarked"
msgstr ""
-#: src/components/status.jsx:1818
+#: src/components/status.jsx:1819
msgid "Pinned"
msgstr ""
-#: src/components/status.jsx:1870
-#: src/components/status.jsx:2345
+#: src/components/status.jsx:1876
+#: src/components/status.jsx:2351
msgid "Deleted"
msgstr ""
-#: src/components/status.jsx:1911
+#: src/components/status.jsx:1917
msgid "{repliesCount, plural, one {# reply} other {# replies}}"
msgstr ""
-#: src/components/status.jsx:2075
-#: src/components/status.jsx:2137
-#: src/components/status.jsx:2241
+#: src/components/status.jsx:2081
+#: src/components/status.jsx:2143
+#: src/components/status.jsx:2247
msgid "Show less"
msgstr ""
-#: src/components/status.jsx:2075
-#: src/components/status.jsx:2137
+#: src/components/status.jsx:2081
+#: src/components/status.jsx:2143
msgid "Show content"
msgstr ""
#. placeholder {0}: filterInfo.titlesStr
#. placeholder {0}: filterInfo?.titlesStr
-#: src/components/status.jsx:2237
+#: src/components/status.jsx:2243
#: src/pages/catchup.jsx:1877
msgid "Filtered: {0}"
msgstr "Filtered: {0}"
-#: src/components/status.jsx:2241
+#: src/components/status.jsx:2247
msgid "Show media"
msgstr ""
-#: src/components/status.jsx:2380
+#: src/components/status.jsx:2386
msgid "Edited"
msgstr ""
-#: src/components/status.jsx:2457
+#: src/components/status.jsx:2463
msgid "Comments"
msgstr ""
-#: src/components/status.jsx:2642
+#: src/components/status.jsx:2648
msgid "Post hidden by your filters"
msgstr "Post hidden by your filters"
-#: src/components/status.jsx:2643
+#: src/components/status.jsx:2649
msgid "Post pending"
msgstr "Post pending"
-#: src/components/status.jsx:2644
-#: src/components/status.jsx:2645
-#: src/components/status.jsx:2646
-#: src/components/status.jsx:2647
+#: src/components/status.jsx:2650
+#: src/components/status.jsx:2651
+#: src/components/status.jsx:2652
+#: src/components/status.jsx:2653
msgid "Post unavailable"
msgstr "Post unavailable"
-#: src/components/status.jsx:2756
+#: src/components/status.jsx:2763
msgid "Edit History"
msgstr ""
-#: src/components/status.jsx:2760
+#: src/components/status.jsx:2767
msgid "Failed to load history"
msgstr ""
-#: src/components/status.jsx:2765
+#: src/components/status.jsx:2772
#: src/pages/annual-report.jsx:45
msgid "Loading…"
msgstr ""
#. [Name] [Visibility icon] boosted
-#: src/components/status.jsx:2897
+#: src/components/status.jsx:2904
msgid "<0/> <1/> boosted"
msgstr "<0/> <1/> boosted"
diff --git a/src/utils/unfurl-link.js b/src/utils/unfurl-link.js
index c4063a02..2567f211 100644
--- a/src/utils/unfurl-link.js
+++ b/src/utils/unfurl-link.js
@@ -121,6 +121,8 @@ function _unfurlMastodonLink(instance, url) {
id,
instance,
url: selfURL,
+ originalURL: url,
+ originalDomain: domain,
};
states.unfurledLinks[url] = data;
saveStatus(status, instance, {