Commit graph

65 commits

Author SHA1 Message Date
Matthew Hodgson
1aed9ccbf4 linkify vector.im URLs directly into the app, both from HTML and non-HTML messages 2016-03-20 03:05:07 +00:00
Richard van der Hoff
4158a007db Give <a> elements in search results a key
... to make react shut up about them
2016-02-22 17:44:34 +00:00
Richard van der Hoff
e3feae32e1 Fix search clickthrough for HTML events
Switch to using a normal <a href="..."> link for search result
clickthrough. Apart from generally giving a better experience, this means that
it also works on html messages. The problem there was that we were attaching
onClick handlers to <span>s which we were then flattening into HTML with
ReactDOMServer (which meant the onClick handlers were never attached to React's
list of listeners).

To make this work without jumping through React hoops, the highlighter now
returns either a list of strings or a list of nodes, depending on whether we
are dealing with an HTML event or a text one. We therefore have a separate
HtmlHighlighter and TextHighlighter.
2016-02-17 21:06:27 +00:00
Matthew Hodgson
1c30640a92 remove unused 'body' var; use a finally to clean up the temporary textfilter 2016-02-11 14:03:54 +00:00
Matthew Hodgson
92435c0865 ooops, don't forget to actually sanitize the highlights after all that 2016-02-10 23:45:07 +00:00
Matthew Hodgson
d055dbe522 use sanitize-html's textFilter callback to only apply highlights to textNodes when highlighting HTML. fixes https://github.com/vector-im/vector-web/issues/294 2016-02-10 20:25:49 +00:00
Matthew Hodgson
baa6826409 better commenting 2016-02-09 15:08:04 +00:00
Matthew Hodgson
0772f50fab update copyright for 2016 2016-01-07 04:06:52 +00:00
Matthew Hodgson
441a9540ca sync CSS classnames with current react component names 2016-01-03 00:11:11 +00:00
Matthew Hodgson
15f19be408 highlight case insensitively 2015-12-28 03:14:50 +00:00
Richard van der Hoff
b4436df5e4 Refactor bodyToHtml, and allow onHighlightClicked
Factor out a Highlighter class to avoid passing round the static state
everywhere.

Add an optional 'opts' argument which can take an 'onHighlightClick' member.
2015-12-23 23:50:35 +00:00
Matthew Hodgson
bed7d50ab8 reactor the highlighting code to avoid duplication and make it more coherent 2015-11-29 13:00:58 +00:00
Matthew Hodgson
0b483c4707 rename searchTerms to highlights, and support highlighting multiple search terms 2015-11-29 03:22:01 +00:00
Matthew Hodgson
832da3aa8e support del tags for markdown 2015-11-28 12:44:10 +00:00
Kegan Dougal
1825b0317e Add components which were previously in vector 2015-11-27 15:02:32 +00:00