Commit Graph

7144 Commits

Author SHA1 Message Date
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
Michael Telatynski
3df379cb49 fix radio for theme selection
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-09-07 18:54:41 +01:00
David Baker
82d1afcc47 Correct comment 2017-09-07 17:16:32 +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
David Baker
76be54b2be Make isInvite default to false
as things are assuming it's optional but it isn't which is causing
a ton of warnings.
2017-09-07 13:35:13 +01:00
David Baker
d71f15adf4 Remove unused scrollStateMap from LoggedinView 2017-09-06 22:51:10 +01:00
David Baker
609d61d53c Revert "Implement sticky date separators" 2017-09-06 17:40:58 +01:00
David Baker
289c3a5fbd Merge remote-tracking branch 'origin/develop' into dbkr/group_userlist 2017-09-05 14:20:02 +01: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
79ee41351c Fix typo 2017-09-04 15:45:28 +01:00
Luke Barnard
c9c0771355 Spelling 2017-08-31 16:29:45 +01:00
Luke Barnard
cdb28f956e Add comment for StickyContainer extension 2017-08-31 16:29:31 +01:00
Luke Barnard
da9dcc8f50 Merge pull request #4858 from Nostradamos/fix-4804
Fix overflowing login/register buttons on some languages issue #4804
2017-08-31 09:51:06 +01:00
David Baker
a2f2070966 Put setSate in the promise constructor
Avoids local variables. Also typo in comment.
2017-08-30 21:44:10 +01:00
David Baker
225fe67586 Fix room change sometimes being very slow
If the js-sdk had a lot of history in memory for a particular room,
riot would paginate all that history into the DOM and render it
when switching to that room (before then removing it all again).
This obviously made switching to that room very slow.

This was caused by the fact that we relied on the setState that
happens in TimelinePanel after the pagination taking effect such
that ScrollPanel sees that it no longer needs to paginate, but
in some situations (as far as I can see, in electron...?) this
setState would not take effect until the pagination stopped
fulfiling requests from memory and hit the network.

Fix: don't resolve the promise returned by the pagination request
until the setState has actually happened.
2017-08-30 19:14:26 +01:00
David Baker
9efa604706 Merge remote-tracking branch 'origin/develop' into dbkr/group_userlist 2017-08-30 17:39:47 +01:00
Luke Barnard
a29e7da06b Merge branch 'develop' into luke/feature-sticky-date-separators 2017-08-30 14:06:06 +01:00
David Baker
32b33c66b9 Merge pull request #1346 from matrix-org/t3chguy/shouldHideEvent_RoomStatusBar
apply shouldHideEvent fn to onRoomTimeline for RoomStatusBar
2017-08-30 13:58:40 +01:00
Luke Barnard
d516906b36 Implement sticky date separators
Use `react-sticky` to implement sticky date separators. This will pin a date separator to the top of the timeline panel when the separator scrolls out of the top of the view.

A known issue of this is that the spinner, which is in line with event tiles in the timeline, will appear to push the stuck date separator down. In reality the first date separator after the spinner is in line with event tiles and is not stuck because the spinner forces the timeline to be scrolled slightly further down than it would be otherwise. But also, date separators in the timeline (not "stuck") have a greater height.

Ideally the date separator would be suppressed whilst back paginating, but this will cause the stuck separator to flicker on and off. This is why the suppression has been removed.
2017-08-30 13:52:46 +01:00
David Baker
22bb635ff3 Merge pull request #1352 from matrix-org/fix_hide_rr_regression
separate concepts of showing and managing RRs to fix regression
2017-08-30 13:50:44 +01:00
Michael Telatynski
05c232c8c3 revert fancy indents
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-08-30 13:32:07 +01:00
Michael Telatynski
282618d5a1 separate concepts of showing and managing RRs to fix regression 2017-08-30 13:18:14 +01:00
David Baker
e5912b996d copyright 2017-08-30 09:23:20 +01:00
Luke Barnard
3f11f9148f Merge pull request #1348 from matrix-org/dbkr/fix_forgot_password_percent_encode
Percent encoding isn't a valid thing within _t
2017-08-29 15:02:26 +01:00
Michael Telatynski
f560dc4c11 add useful comment
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-08-29 14:58:30 +01:00
David Baker
6d5b1b7a55 Percent encoding isn't a valid thing within _t
Just use a plain apostrophe
2017-08-29 14:18:24 +01:00
David Baker
ec983b838a Unbreak password reset with a non-default HS
Broken by the change from onHsUrlChanged to onServerConfigChanged
in https://github.com/matrix-org/matrix-react-sdk/pull/811 where
ForgotPassword got missed.
2017-08-29 14:07:43 +01:00
David Baker
d86fe0df6e Merge remote-tracking branch 'origin/develop' into dbkr/group_userlist 2017-08-29 13:29:55 +01:00
Michael Telatynski
315f7a3ae7 apply shouldHideEvent fn to onRoomTimeline for RoomStatusBar
prevents N new message(s) when a hidden message comes in.
2017-08-28 13:46:09 +01:00
Michael Telatynski
1c387c1fd1 fix two room list regressions:
+ missing roomsublist badge for invites
+ missing room badge for invites if i18n!=English

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-08-27 23:37:13 +01:00
David Baker
a673cbcf1e s/member/groupMember/ 2017-08-25 13:00:43 +01:00
David Baker
299db845ff PR feedback 2017-08-25 12:10:13 +01:00
David Baker
814e08d843 Merge pull request #1334 from matrix-org/dbkr/update_on_event_decrypted
Force update on timelinepanel when event decrypted
2017-08-24 13:35:39 +01:00
Richard van der Hoff
b65e1769d7 Dispatch incoming_call synchronously
- this should fix a race where if the 'hangup' arrives hard on the tail of the
Call.incoming, we don't ignore it.

(We still have a problem in that we blip the hangup tone and UI, but that is
arguably a separate problem)
2017-08-24 13:05:17 +01:00
David Baker
a2943ac348 Check room ID matches 2017-08-24 11:55:39 +01:00
David Baker
67824e9acc Force update on timelinepanel when event decrypted
Partially fixes https://github.com/vector-im/riot-web/issues/4865
(the part about messages not appearing in the timeline until you
move the cursor over the window).

Requires https://github.com/matrix-org/matrix-js-sdk/pull/529
2017-08-24 11:35:01 +01:00
Nostradamos
1dfa8361c5 Fixed https://github.com/vector-im/riot-web/issues/4804 2017-08-23 22:12:02 +02:00
David Baker
5f816666e1 Merge remote-tracking branch 'origin/develop' into dbkr/group_userlist 2017-08-22 10:08:02 +01:00
David Baker
ac64e9b705 Lint 2017-08-21 19:34:07 +01:00
David Baker
e77ea352e4 Support full group membership cycle
Apart from knocking, ie. Invite / accept / reject / leave
2017-08-21 19:18:32 +01:00
Luke Barnard
caff761df7 Merge pull request #1308 from matrix-org/t3chguy/mels_fix
Change OOO so that MELS generation will continue over hidden events
2017-08-18 13:08:35 +01:00
Michael Telatynski
615d96a065 catch hidden event being RM
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-08-18 11:53:52 +01:00
David Baker
ee6e36cd90 Allow extra tiles to be put into room sub lists
So we can put in tiles for group invites & other stuff
2017-08-18 11:23:55 +01:00
Michael Telatynski
bdb2d6b475 Merge remote-tracking branch 'remotes/origin/develop' into set_default_federate_by_settings
# Conflicts:
#	src/components/structures/MatrixChat.js
2017-08-17 13:39:19 +01:00
Michael Telatynski
ca5e26744f Make dialog more specific and hide options behind advanced spoiler 2017-08-17 13:33:07 +01:00
David Baker
1a7a670c96 Show the group invite dialog
What to TODO said!
2017-08-16 14:59:00 +01:00
David Baker
ddf1017799 Make group invites work 2017-08-16 14:58:30 +01:00
David Baker
252ab208e4 Merge pull request #1300 from matrix-org/dbkr/userpicker
Refactor ChatInviteDialog to be UserPickerDialog
2017-08-16 14:29:07 +01:00
Michael Telatynski
14903274c0 Change OOO so that MELS generation will continue over hidden events
this fixes the scenario of N Member events, then an invisible event
e.g. (m.room.aliases) then more Member events. Pre hide-join-parts
this is how it worked.

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-08-16 13:20:32 +01:00