@@ -16,17 +16,18 @@ limitations under the License.
16
16
17
17
'use strict' ;
18
18
19
- var React = require ( 'react' ) ;
20
- var ReactDOM = require ( 'react-dom' ) ;
21
- var highlight = require ( 'highlight.js' ) ;
22
- var HtmlUtils = require ( '../../../HtmlUtils' ) ;
23
- var linkify = require ( 'linkifyjs' ) ;
24
- var linkifyElement = require ( 'linkifyjs/element' ) ;
25
- var linkifyMatrix = require ( '../../../linkify-matrix' ) ;
26
- var sdk = require ( '../../../index' ) ;
27
- var ScalarAuthClient = require ( "../../../ScalarAuthClient" ) ;
28
- var Modal = require ( "../../../Modal" ) ;
29
- var SdkConfig = require ( '../../../SdkConfig' ) ;
19
+ import React from 'react' ;
20
+ import ReactDOM from 'react-dom' ;
21
+ import highlight from 'highlight.js' ;
22
+ import * as HtmlUtils from '../../../HtmlUtils' ;
23
+ import * as linkify from 'linkifyjs' ;
24
+ import linkifyElement from 'linkifyjs/element' ;
25
+ import linkifyMatrix from '../../../linkify-matrix' ;
26
+ import sdk from '../../../index' ;
27
+ import ScalarAuthClient from '../../../ScalarAuthClient' ;
28
+ import Modal from '../../../Modal' ;
29
+ import SdkConfig from '../../../SdkConfig' ;
30
+ import dis from '../../../dispatcher' ;
30
31
31
32
linkifyMatrix ( linkify ) ;
32
33
@@ -187,6 +188,15 @@ module.exports = React.createClass({
187
188
this . forceUpdate ( ) ;
188
189
} ,
189
190
191
+ onEmoteSenderClick : function ( event ) {
192
+ const mxEvent = this . props . mxEvent ;
193
+ const name = mxEvent . sender ? mxEvent . sender . name : mxEvent . getSender ( ) ;
194
+ dis . dispatch ( {
195
+ action : 'insert_displayname' ,
196
+ displayname : name . replace ( ' (IRC)' , '' ) ,
197
+ } ) ;
198
+ } ,
199
+
190
200
getEventTileOps : function ( ) {
191
201
var self = this ;
192
202
return {
@@ -273,7 +283,15 @@ module.exports = React.createClass({
273
283
const name = mxEvent . sender ? mxEvent . sender . name : mxEvent . getSender ( ) ;
274
284
return (
275
285
< span ref = "content" className = "mx_MEmoteBody mx_EventTile_content" >
276
- * < EmojiText > { name } </ EmojiText > { body }
286
+ *
287
+ < EmojiText
288
+ className = "mx_MEmoteBody_sender"
289
+ onClick = { this . onEmoteSenderClick }
290
+ >
291
+ { name }
292
+ </ EmojiText >
293
+
294
+ { body }
277
295
{ widgets }
278
296
</ span >
279
297
) ;
0 commit comments