From e121440d05088ed7267dd40bff5ac6083974e69b Mon Sep 17 00:00:00 2001 From: Luke Barnard Date: Wed, 9 Aug 2017 18:39:06 +0100 Subject: [PATCH 1/2] Track whether the user has richtext mode enabled --- src/Analytics.js | 6 ++++++ src/components/views/rooms/MessageComposerInput.js | 3 +++ 2 files changed, 9 insertions(+) diff --git a/src/Analytics.js b/src/Analytics.js index 92691da1ea..0a31625ebc 100644 --- a/src/Analytics.js +++ b/src/Analytics.js @@ -31,6 +31,7 @@ const customVariables = { 'User Type': 3, 'Chosen Language': 4, 'Instance': 5, + 'RTE: Uses Richtext Mode': 6, }; @@ -145,6 +146,11 @@ class Analytics { if (this.disabled) return; this._setVisitVariable('User Type', guest ? 'Guest' : 'Logged In'); } + + setRichtextMode(state) { + if (this.disabled) return; + this._setVisitVariable('RTE: Uses Richtext Mode', state ? 'on' : 'off'); + } } if (!global.mxAnalytics) { diff --git a/src/components/views/rooms/MessageComposerInput.js b/src/components/views/rooms/MessageComposerInput.js index b2c1436365..aa4acd7655 100644 --- a/src/components/views/rooms/MessageComposerInput.js +++ b/src/components/views/rooms/MessageComposerInput.js @@ -31,6 +31,7 @@ import KeyCode from '../../../KeyCode'; import Modal from '../../../Modal'; import sdk from '../../../index'; import { _t } from '../../../languageHandler'; +import Analytics from '../../../Analytics'; import dis from '../../../dispatcher'; import UserSettingsStore from '../../../UserSettingsStore'; @@ -513,6 +514,8 @@ export default class MessageComposerInput extends React.Component { contentState = ContentState.createFromText(markdown); } + Analytics.setRichtextMode(enabled); + this.setState({ editorState: this.createEditorState(enabled, contentState), isRichtextEnabled: enabled, From fc6977e68d5be61a135a47d434cec36f2d61173c Mon Sep 17 00:00:00 2001 From: Luke Barnard Date: Wed, 9 Aug 2017 19:00:38 +0100 Subject: [PATCH 2/2] Track RT mode once we've retrieved the setting from account data --- src/components/views/rooms/MessageComposerInput.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/components/views/rooms/MessageComposerInput.js b/src/components/views/rooms/MessageComposerInput.js index aa4acd7655..856c7aaa88 100644 --- a/src/components/views/rooms/MessageComposerInput.js +++ b/src/components/views/rooms/MessageComposerInput.js @@ -161,6 +161,8 @@ export default class MessageComposerInput extends React.Component { const isRichtextEnabled = UserSettingsStore.getSyncedSetting('MessageComposerInput.isRichTextEnabled', false); + Analytics.setRichtextMode(isRichtextEnabled); + this.state = { // whether we're in rich text or markdown mode isRichtextEnabled,