Commit graph

12850 commits

Author SHA1 Message Date
Travis Ralston
7b6a51cf9f
Merge pull request #2381 from matrix-org/travis/fix-memberlist-order
Flatten and simplify the memberlist sorting algorithm
2019-01-04 08:13:45 -07:00
Jason Robinson
e876edcbc3 Clarify readme instructions for developers
Setting up the SDK for development, I noticed that 3 tests failed on
develop branch. Linking the JS SDK made the tests pass. It looks like
the assumption is that developers link against the develop branch
of JS SDK to develop the React SDK.

Clarify this in the readme for completeness sake.

Signed-off-by: Jason Robinson <jasonr@matrix.org>
2019-01-04 11:01:35 +02:00
Travis Ralston
0ebde5266e Appease the linter again 2019-01-03 22:40:44 -07:00
Travis Ralston
f59625f7bd Fix last active test
Time is backwards from all the other tests: larger is older, so we want LessThanOrEqual. Also ensure all the power levels are the same to prevent the sort algorithm from running a PL ordering.
2019-01-03 22:24:24 -07:00
Travis Ralston
34d5870a03 Appease the linter 2019-01-03 22:07:09 -07:00
Travis Ralston
5a2113e1a9 Fix a comparison bug in ordering the MemberList 2019-01-03 21:56:19 -07:00
Travis Ralston
77dfba8a22 Add unit tests for MemberList
Particularly the ordering of the tiles.
2019-01-03 21:55:52 -07:00
Travis Ralston
cc8fa7911b Merge remote-tracking branch 'origin/experimental' into travis/fix-memberlist-order 2019-01-03 20:01:28 -07:00
Travis Ralston
e1d2065f73
Merge pull request #2403 from matrix-org/travis/fix-status-messages
Tiny fixes for custom status messages on experimental
2019-01-03 18:23:52 -07:00
Travis Ralston
93ea9d3617 Condense .mx_RoomTile_avatar properties
Looks like the develop->experimental merge duplicated the definition. We'll take the best of both and make it work.
2019-01-03 18:07:34 -07:00
Travis Ralston
852d6df580 Fix composer avatar being an oval when a custom status is set
Fixes this: https://t2l.io/_matrix/media/v1/download/t2l.io/0d5c7fa9a4b5bf226a020def8480a887
2019-01-03 18:06:37 -07:00
Travis Ralston
51dc1fe9bf Fix badges on room tiles not being right aligned
Thanks to Ryan for fixing this!

Problem: https://t2l.io/_matrix/media/v1/download/t2l.io/da6fccb60969da1c455630faae990881
2019-01-03 18:05:59 -07:00
J. Ryan Stinnett
920911c0a1 Room list fixes for custom status 2019-01-03 18:49:15 -06:00
Christopher Medlin
c89b6e1e27 Add slash command for changing room name
Signed-off-by: Christopher Medlin <christopherjmedlin@protonmail.com>
2019-01-03 15:42:17 -08:00
Travis Ralston
46aa543934
Merge pull request #2400 from matrix-org/travis/re-apply-exp-changes
Part 3 of 3: Apply today's changes to experimental again
2019-01-03 16:42:05 -07:00
Travis Ralston
ff2faf7996 Add missing CSS to dharma theme 2019-01-03 16:32:52 -07:00
Travis Ralston
502288d4cc Merge branch 'travis/room-list-hover' into travis/re-apply-exp-changes 2019-01-03 16:28:05 -07:00
Travis Ralston
1481dcf9d7 Don't re-sort the room list if the user is hovering over it
Fixes vector-im/riot-web#5624
2019-01-03 16:27:59 -07:00
Travis Ralston
42ddea10ba Merge branch 'travis/back-button' into travis/re-apply-exp-changes 2019-01-03 16:26:18 -07:00
Travis Ralston
643dd5ca47 Add a comment explaining the reason for setting the LOGGED_IN view 2019-01-03 16:26:09 -07:00
Travis Ralston
d8f6a7c684 Add missing stopPropagation 2019-01-03 16:26:01 -07:00
Travis Ralston
2e5b3ec0f1 Use the safer way to set the logged in view state 2019-01-03 16:25:55 -07:00
Travis Ralston
8f5e825cd5 Fix browser navigation not working between /home, /login, /register, etc
All of the anchors were pointed at `#` which, when clicked, would trigger a hash change in the browser. This change races the change made by the screen handling where the screen handling ends up losing. Because the hash is then tracked as empty rather than `#/login` (for example), the state machine considers future changes as no-ops and doesn't do anything with them.

By using `preventDefault` and `stopPropagation` on the anchor click events, we prevent the browser from automatically going to an empty hash, which then means the screen handling isn't racing the browser, and the hash change state machine doesn't no-op.

After applying that fix, going between pages worked great unless you were going from /login to /home. This is because the MatrixChat state machine was now out of sync (a `view` of `LOGIN` but a `page` of `HomePage` - an invalid state). All we have to do here is ensure the right view is used when navigating to the homepage. 

Fixes https://github.com/vector-im/riot-web/issues/4061

Note: the concerns in 4061 about logging out upon entering the view appear to have been solved. Navigating to the login page doesn't obliterate your session, at least in my testing.
2019-01-03 16:25:51 -07:00
Travis Ralston
5d3f585c1e
Merge pull request #2399 from matrix-org/travis/develop-for-real
Part 2 of 3: Merge develop->experimental minus #2336
2019-01-03 16:15:53 -07:00
Travis Ralston
01eacfa26a Regenerate en_EN.json 2019-01-03 16:02:36 -07:00
Travis Ralston
8017f0a4a1 Merge remote-tracking branch 'origin/experimental' into travis/develop-for-real 2019-01-03 16:00:23 -07:00
Travis Ralston
2fe2e76fa5
Merge pull request #2398 from matrix-org/travis/back-out-bad-merge
Part 1 of 3: Back out bad merge for develop->experimental
2019-01-03 15:48:42 -07:00
Travis Ralston
6447a60e1f Revert "Merge pull request #2336 from matrix-org/travis/notif-button"
This reverts commit 96300b45b7.
2019-01-03 15:44:07 -07:00
David Baker
f928be6f59 Revert "Merge pull request #2395 from matrix-org/dbkr/merge_develop_experimental"
This reverts commit ad47144355.
2019-01-03 15:37:03 -07:00
Travis Ralston
d111fe27bb Revert "Merge pull request #2396 from matrix-org/travis/room-list-hover"
This reverts commit 5098b28672.
2019-01-03 15:36:56 -07:00
Travis Ralston
0978687c65 Revert "Merge pull request #2383 from matrix-org/travis/back-button"
This reverts commit 78592286bd.
2019-01-03 15:36:51 -07:00
Travis Ralston
78592286bd
Merge pull request #2383 from matrix-org/travis/back-button
Fix browser navigation not working between /home, /login, /register, etc
2019-01-03 14:37:04 -07:00
Travis Ralston
5098b28672
Merge pull request #2396 from matrix-org/travis/room-list-hover
Don't re-sort the room list if the user is hovering over it
2019-01-03 14:34:18 -07:00
Travis Ralston
e5192811a1 Add a comment explaining the reason for setting the LOGGED_IN view 2019-01-03 14:23:27 -07:00
Travis Ralston
4c264b87fa Add missing stopPropagation 2019-01-03 14:23:26 -07:00
Travis Ralston
7904b91b58 Use the safer way to set the logged in view state 2019-01-03 14:23:26 -07:00
Travis Ralston
223a49d81f Don't re-sort the room list if the user is hovering over it
Fixes vector-im/riot-web#5624
2019-01-03 13:57:20 -07:00
Travis Ralston
95844ebf9d Comment out debugging statements
They are useful to have around, but not to have enabled all the time.
2019-01-03 12:15:27 -07:00
Travis Ralston
63a7b86eac Flatten and simplify the memberlist sorting algorithm
The previous algorithm had a bug where it was getting stuck on the power level comparison, leaving the memberlist incorrectly ordered. The new algorithm uses less branching to try and walk through the different cases instead. Additionally, the steps used to determine the order have changed slightly to better represent an active member list.

This commit also includes changes to try and re-sort the member list more often during presence changes. Events are not always emitted, however. This may be a js-sdk bug but appears to happen prior to these changes as well.

Fixes https://github.com/vector-im/riot-web/issues/6953
2019-01-03 12:15:19 -07:00
Travis Ralston
35c9dce241 Fix browser navigation not working between /home, /login, /register, etc
All of the anchors were pointed at `#` which, when clicked, would trigger a hash change in the browser. This change races the change made by the screen handling where the screen handling ends up losing. Because the hash is then tracked as empty rather than `#/login` (for example), the state machine considers future changes as no-ops and doesn't do anything with them.

By using `preventDefault` and `stopPropagation` on the anchor click events, we prevent the browser from automatically going to an empty hash, which then means the screen handling isn't racing the browser, and the hash change state machine doesn't no-op.

After applying that fix, going between pages worked great unless you were going from /login to /home. This is because the MatrixChat state machine was now out of sync (a `view` of `LOGIN` but a `page` of `HomePage` - an invalid state). All we have to do here is ensure the right view is used when navigating to the homepage. 

Fixes https://github.com/vector-im/riot-web/issues/4061

Note: the concerns in 4061 about logging out upon entering the view appear to have been solved. Navigating to the login page doesn't obliterate your session, at least in my testing.
2019-01-03 12:13:41 -07:00
David Baker
ad47144355
Merge pull request #2395 from matrix-org/dbkr/merge_develop_experimental
Merge develop into experimental
2019-01-03 18:55:56 +00:00
David Baker
982e037822 Fix merge 2019-01-03 18:05:38 +00:00
David Baker
7d161de35b Partial merge of develop to experimental
Does not include #2336 as the file has been moved out from underneath it:
will do this separately
2019-01-03 15:02:58 +00:00
David Baker
c11d0bdf0c
Merge pull request #2394 from jryans/key-backup-unverified-creator
Show in-room reminder when key backup creating device unverified
2019-01-03 10:27:35 +00:00
Stephen Solka
0bb35944f9 replace expect.createSpy() with jest.fn()
Signed-off-by: Stephen Solka <stephen0q@gmail.com>
2019-01-02 16:59:48 -06:00
Stephen Solka
c3185a4cdb breaking changes from expect upgrade
Signed-off-by: Stephen Solka <stephen0q@gmail.com>
2019-01-02 16:59:48 -06:00
Stephen Solka
22167f8538 upgrade expect to 23.6.0
Signed-off-by: Stephen Solka <stephen0q@gmail.com>
2019-01-02 16:59:48 -06:00
J. Ryan Stinnett
758e867208
Merge pull request #2389 from christopherjmedlin/consistent-flair-ordering
Consistent flair ordering.
2019-01-02 16:35:50 -06:00
J. Ryan Stinnett
402f58225f Show in-room reminder when key backup creating device unverified
If the current device hasn't verified the device that created the account's
current key backup version, then the current device is won't use the key backup.
This change adjusts an existing in-room reminder to do the right thing for this
case by allowing the user to verify the device that created the key backup.

Fixes vector-im/riot-web#7902.
2019-01-02 15:36:40 -06:00
J. Ryan Stinnett
00405e7f22 Use Nunito font from the server only
There are various versions of Nunito in circulation, and some have errors in
their metrics or smaller supported character sets. To ensure all users get the
expected experience, don't allow local copies of Nunito to be used.

Fixes vector-im/riot-web#7959.
2018-12-31 12:26:35 -06:00