-
+ { this.props.showReplyPreview && (
+
+ ) }
{ controls }
diff --git a/src/i18n/strings/en_EN.json b/src/i18n/strings/en_EN.json
index ede8694545..2cb0a546aa 100644
--- a/src/i18n/strings/en_EN.json
+++ b/src/i18n/strings/en_EN.json
@@ -806,6 +806,7 @@
"Render LaTeX maths in messages": "Render LaTeX maths in messages",
"Communities v2 prototypes. Requires compatible homeserver. Highly experimental - use with caution.": "Communities v2 prototypes. Requires compatible homeserver. Highly experimental - use with caution.",
"Message Pinning": "Message Pinning",
+ "Threaded messaging": "Threaded messaging",
"Custom user status messages": "Custom user status messages",
"Group & filter rooms by custom tags (refresh to apply changes)": "Group & filter rooms by custom tags (refresh to apply changes)",
"Render simple counters in room header": "Render simple counters in room header",
@@ -1803,6 +1804,7 @@
"%(count)s people|other": "%(count)s people",
"%(count)s people|one": "%(count)s person",
"Show files": "Show files",
+ "Show threads": "Show threads",
"Share room": "Share room",
"Room settings": "Room settings",
"Trusted": "Trusted",
@@ -1922,6 +1924,7 @@
"React": "React",
"Edit": "Edit",
"Reply": "Reply",
+ "Thread": "Thread",
"Message Actions": "Message Actions",
"Download %(text)s": "Download %(text)s",
"Error decrypting attachment": "Error decrypting attachment",
diff --git a/src/settings/Settings.tsx b/src/settings/Settings.tsx
index 28c5b1353f..a0261e9994 100644
--- a/src/settings/Settings.tsx
+++ b/src/settings/Settings.tsx
@@ -211,6 +211,15 @@ export const SETTINGS: {[setting: string]: ISetting} = {
supportedLevels: LEVELS_FEATURE,
default: false,
},
+ "feature_thread": {
+ isFeature: true,
+ // Requires a reload as we change an option flag on the `js-sdk`
+ // And the entire sync history needs to be parsed again
+ controller: new ReloadOnChangeController(),
+ displayName: _td("Threaded messaging"),
+ supportedLevels: LEVELS_FEATURE,
+ default: false,
+ },
"feature_custom_status": {
isFeature: true,
displayName: _td("Custom user status messages"),
diff --git a/src/stores/RightPanelStorePhases.ts b/src/stores/RightPanelStorePhases.ts
index d62f6c6110..96a585b676 100644
--- a/src/stores/RightPanelStorePhases.ts
+++ b/src/stores/RightPanelStorePhases.ts
@@ -37,6 +37,10 @@ export enum RightPanelPhases {
SpaceMemberList = "SpaceMemberList",
SpaceMemberInfo = "SpaceMemberInfo",
Space3pidMemberInfo = "Space3pidMemberInfo",
+
+ // Thread stuff
+ ThreadView = "ThreadView",
+ ThreadPanel = "ThreadPanel",
}
// These are the phases that are safe to persist (the ones that don't require additional