diff --git a/src/RichText.js b/src/RichText.js index abbe860863..c24a510e05 100644 --- a/src/RichText.js +++ b/src/RichText.js @@ -33,13 +33,12 @@ const STYLES = { const MARKDOWN_REGEX = { LINK: /(?:\[([^\]]+)\]\(([^\)]+)\))|\<(\w+:\/\/[^\>]+)\>/g, ITALIC: /([\*_])([\w\s]+?)\1/g, - BOLD: /([\*_])\1([\w\s]+?)\1\1/g + BOLD: /([\*_])\1([\w\s]+?)\1\1/g, }; const USERNAME_REGEX = /@\S+:\S+/g; const ROOM_REGEX = /#\S+:\S+/g; -let EMOJI_REGEX = null; -window.EMOJI_REGEX = EMOJI_REGEX = new RegExp(emojione.unicodeRegexp, 'g'); +const EMOJI_REGEX = new RegExp(emojione.unicodeRegexp, 'g'); export function contentStateToHTML(contentState: ContentState): string { return contentState.getBlockMap().map((block) => { diff --git a/src/autocomplete/AutocompleteProvider.js b/src/autocomplete/AutocompleteProvider.js index 05bbeacfab..41d5d035d1 100644 --- a/src/autocomplete/AutocompleteProvider.js +++ b/src/autocomplete/AutocompleteProvider.js @@ -18,6 +18,8 @@ export default class AutocompleteProvider { return null; } + this.commandRegex.lastIndex = 0; + let match; while ((match = this.commandRegex.exec(query)) != null) { let matchStart = match.index, @@ -33,7 +35,6 @@ export default class AutocompleteProvider { }; } } - this.commandRegex.lastIndex = 0; return { command: null, range: { diff --git a/src/autocomplete/Components.js b/src/autocomplete/Components.js index d9d1c7b3ff..4a24c79966 100644 --- a/src/autocomplete/Components.js +++ b/src/autocomplete/Components.js @@ -10,10 +10,10 @@ export function TextualCompletion({ description: ?string }) { return ( -
+
{title} {subtitle} - {description} + {description}
); } diff --git a/src/components/structures/RoomView.js b/src/components/structures/RoomView.js index bee038a9e2..dc4b21a300 100644 --- a/src/components/structures/RoomView.js +++ b/src/components/structures/RoomView.js @@ -520,9 +520,6 @@ module.exports = React.createClass({ _updateTabCompleteList: function() { var cli = MatrixClientPeg.get(); - console.log('_updateTabCompleteList'); - console.log(this.state.room); - console.trace(); if (!this.state.room) { return; diff --git a/src/components/views/rooms/Autocomplete.js b/src/components/views/rooms/Autocomplete.js index dfeda96845..5ee638c479 100644 --- a/src/components/views/rooms/Autocomplete.js +++ b/src/components/views/rooms/Autocomplete.js @@ -80,8 +80,9 @@ export default class Autocomplete extends React.Component { * @returns {boolean} whether confirmation was handled */ onConfirm(): boolean { - if (this.countCompletions() === 0) + if (this.countCompletions() === 0) { return false; + } let selectedCompletion = this.state.completionList[this.state.selectionOffset]; this.props.onConfirm(selectedCompletion.range, selectedCompletion.completion); @@ -103,11 +104,11 @@ export default class Autocomplete extends React.Component { let componentPosition = position; position++; - let onMouseOver = () => this.setSelection(componentPosition), - onClick = () => { - this.setSelection(componentPosition); - this.onConfirm(); - }; + let onMouseOver = () => this.setSelection(componentPosition); + let onClick = () => { + this.setSelection(componentPosition); + this.onConfirm(); + }; return (