Commit graph

6376 commits

Author SHA1 Message Date
David Baker
05a986334d Separate function to add code copy button
For neatness and also so it can show up separately in the profiler.
2017-09-10 15:58:17 +01:00
David Baker
876257f4e2 Consolidate the code copy button
Adding the code code button was done by manipulating the HTML of
the event body to add a span tag, then adding the onclick handler
after the thing was mounted. Apart from splitting the code between
two places, adding the span tag was, according to Chrome's
profiler, taking up quite a lot of CPU cycles (apparently as soon
as you set the innerHTML on a div). Instead, just build the whole
lot together after the component mounts.
2017-09-10 14:23:33 +01:00
Matthew Hodgson
e1aefd2119 Merge pull request #1373 from matrix-org/dbkr/code_copy_only_html
Only add the code copy button for HTML messages
2017-09-09 05:31:05 +01:00
David Baker
fe79010e4e Only add the code copy button for HTML messages
Trivial fast-path optimisation: plain text messages cannot possibly contain pre
blocks so there's no point in trying to parse them in order to add code copy
buttons.
2017-09-08 23:36:22 +01:00
David Baker
1f84c68180 Merge pull request #1371 from matrix-org/dbkr/fix_extra_matrixchat_render
Don't re-render matrixchat unnecessarily
2017-09-08 19:27:09 +01:00
Matthew Hodgson
0e8bd856bc remove obsolete this._roomViewStoreToken.remove(); 2017-09-08 20:14:27 +02:00
David Baker
663dc3e513 Don't re-render matrixchat unnecessarily
...on room switch. We were setting most of the state in viewRoom,
but getting the current room ID from the RoomViewStore, but this
meant we did one setState from the RoomViewStore updating,
re-rendered and then setState again in viewRoom causing another
render. This just sets the room ID in viewRoom.
2017-09-08 18:56:57 +01:00
David Baker
d507dc7975 Merge pull request #1370 from matrix-org/dbkr/onhaveroom_no_wait_for_setstate
Don't wait for setState to run onHaveRoom
2017-09-08 18:24:57 +01:00
David Baker
aee2f3cdef Rename onHaveRoom
And move some code out of it which didn't really have any reason
to be hanging out there rather than just be where we set the room
a few lines above.
2017-09-08 18:11:13 +01:00
David Baker
bf982004f6 Give onHaveRoom the info it needs explicitly
Rather than giving it a state object which is not actually the
whole state but happens to be everything it actually wants
(currently)
2017-09-08 17:56:53 +01:00
David Baker
81871c50be Add more doc
on why module level variables do not work as singletons
2017-09-08 17:43:41 +01:00
David Baker
cce772c087 Merge remote-tracking branch 'origin/develop' into dbkr/onhaveroom_no_wait_for_setstate 2017-09-08 17:41:18 +01:00
David Baker
03dcded72f Blank line to make comment clearer 2017-09-08 17:39:10 +01:00
Richard van der Hoff
a012dbafce Merge pull request #1367 from matrix-org/dbkr/scroll_state_store
Introduce a RoomScrollStateStore
2017-09-08 17:37:32 +01:00
David Baker
1be35a77ec Don't wait for setState to run onHaveRoom
onHaveRoom sets some more state (among other things) so putting it
in the setState callback so it could observe the new state caused
us to have to re-render again unnecessarily. Just give it the new
state as a parameter.
2017-09-08 17:06:46 +01:00
David Baker
984d639a37 Merge remote-tracking branch 'origin/develop' into dbkr/scroll_state_store 2017-09-08 15:58:38 +01:00
David Baker
13b094a3f6 Merge pull request #1369 from matrix-org/dbkr/dont_always_paginate
Don't always paginate when mounting a ScrollPanel
2017-09-08 15:51:55 +01:00
David Baker
78a2e49705 Don't always paginate when mounting a ScrollPanel
Calling just checkFill on DidMount did not initially set the
scrollTop which meant that one back pagination request is always
performed regardless. This meant we would end up rending the
first batch of events, then paginating and re-rendering again
after the pagination got another batch, causing unnecessary render
churn.
2017-09-08 15:41:19 +01:00
David Baker
59c54d3756 Remove redundant code 2017-09-08 13:39:22 +01:00
David Baker
d714291aa1 Re-add doc on scroll state map structure 2017-09-08 13:27:14 +01:00
David Baker
82d1afcc47 Correct comment 2017-09-07 17:16:32 +01:00
David Baker
7f44ac7403 Remove now unused stuff from RoomViewStore 2017-09-07 17:15:19 +01:00
David Baker
408b8c18ea Introduce a RoomScrollStateStore
to keep the place we're scrolled to in rooms. This mainly eleimates
the extra, superfluous onRoomViewStoreUpdate callback that
happened when the previous room saved back its scroll state.
Moving the scroll state to a separate store means we can have this
not emit events because nothing needs to know when the scroll state
changes.
2017-09-07 17:08:36 +01:00
Richard van der Hoff
239b2db537 Merge pull request #1366 from matrix-org/dbkr/remove_unused_scrollstatemap
Remove unused scrollStateMap from LoggedinView
2017-09-07 10:37:03 +01:00
David Baker
d71f15adf4 Remove unused scrollStateMap from LoggedinView 2017-09-06 22:51:10 +01:00
David Baker
7dbd54ad25 Merge pull request #1365 from matrix-org/revert-1353-luke/feature-sticky-date-separators
Revert "Implement sticky date separators"
2017-09-06 18:07:01 +01:00
David Baker
609d61d53c Revert "Implement sticky date separators" 2017-09-06 17:40:58 +01:00
David Baker
5dfd35f730 Merge branch 'master' into develop 2017-09-06 13:26:34 +01:00
David Baker
f5cf2aece2 v0.10.3 2017-09-06 13:25:58 +01:00
David Baker
9dd98d1085 Prepare changelog for v0.10.3 2017-09-06 13:25:57 +01:00
David Baker
738c81b506 Add missing translations 2017-09-05 17:36:41 +01:00
David Baker
158e6fd9ff Merge pull request #1361 from MTRNord/patch-9
Remove unused string "changing room on a RoomView is not supported"
2017-09-05 17:20:26 +01:00
David Baker
f7c31bed28 Merge pull request #1360 from MTRNord/patch-7
[WIP] Remove unused translation code translations
2017-09-05 17:13:51 +01:00
MTRNord
da3336172f
Remove more unused translation strings 2017-09-05 18:12:00 +02:00
Marcel
a573a396ad Remove unused string "changing room on a RoomView is not supported" 2017-09-05 18:07:22 +02:00
MTRNord
5449224dec
readd translations that got removed by accident 2 2017-09-05 18:01:57 +02:00
MTRNord
7ba8aa95c5
readd translations that got removed by accident 2017-09-05 18:00:57 +02:00
MTRNord
4a362c141a
Cleanup unused language code translations 2017-09-05 17:54:49 +02:00
Marcel
5684b6a23c Remove unused translation code translations 2017-09-05 17:35:03 +02:00
David Baker
262d66f579 Merge pull request #1353 from matrix-org/luke/feature-sticky-date-separators
Implement sticky date separators
2017-09-05 14:15:47 +01:00
David Baker
c75bc42585 v0.10.3-rc.2 2017-09-05 13:13:02 +01:00
David Baker
c67a6e9d2e Prepare changelog for v0.10.3-rc.2 2017-09-05 13:13:02 +01:00
David Baker
640010e2e7 Merge remote-tracking branch 'origin/develop' into release-v0.10.3 2017-09-05 13:10:44 +01:00
David Baker
d9138e5582 Merge pull request #1358 from matrix-org/dbkr/fix_weblate_plurals
Fix plurals in translations
2017-09-05 11:13:52 +01:00
David Baker
de2940f469 Fix plurals in translations
Weblate doesn't understand counterpart's multi-level format for
plurals and helpfully mangles them to be dot-separated keys when it
saves the translation file. Store the source files with pipe
separators and convert to counterpart format at build time.
2017-09-04 17:09:36 +01:00
David Baker
05ac085ddd Merge pull request #1357 from matrix-org/dbkr/exisitng
Fix typo
2017-09-04 15:54:41 +01:00
David Baker
79ee41351c Fix typo 2017-09-04 15:45:28 +01:00
David Baker
0ac8bb8812 Merge pull request #1356 from RiotTranslateBot/weblate-riot-web-matrix-react-sdk
Update from Weblate.
2017-09-04 15:18:14 +01:00
Eric Newport
c902652f6c Translated using Weblate (English)
Currently translated at 100.0% (972 of 972 strings)

Translation: Riot Web/matrix-react-sdk
Translate-URL: https://translate.riot.im/projects/riot-web/matrix-react-sdk/en_EN/
2017-09-04 11:02:16 +00:00
Osoitz
b66b6b6d94 Translated using Weblate (Basque)
Currently translated at 100.0% (972 of 972 strings)

Translation: Riot Web/matrix-react-sdk
Translate-URL: https://translate.riot.im/projects/riot-web/matrix-react-sdk/eu/
2017-09-04 11:00:23 +00:00