Commit Graph

3942 Commits

Author SHA1 Message Date
Michael Telatynski
38de4ae152
delint
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-10-05 08:00:22 +01:00
Michael Telatynski
7492f2dffa
Merge branch 'develop' of github.com:matrix-org/matrix-react-sdk into set_default_federate_by_settings 2017-10-04 22:35:29 +01:00
Luke Barnard
4017fa7f1d Factor-out GroupStore and create GroupStoreCache
In order to provide feedback when adding a room to a group, the group summarry store needs to be extended to store the list of rooms in a group. This commit is the first step required.

The next step is to get the GroupRoomList listening to updates from GroupStore and expose the list of rooms from GroupStore.

(We're running out of words to describe the hierachy of things that store things)
2017-10-04 16:56:35 +01:00
Luke Barnard
ed74ac394b Put related groups UI behind groups labs flag 2017-10-04 14:35:13 +01:00
Luke Barnard
a400c03768 Merge pull request #1447 from matrix-org/luke/feature-flair-related-only
Restrict Flair in the timeline to related groups of the room
2017-10-04 14:24:59 +01:00
Luke Barnard
0c6b5776ec Remove commented imports 2017-10-04 14:09:51 +01:00
Luke Barnard
02e7287123 Remove constraint on groups being local, remove logging 2017-10-04 14:08:31 +01:00
Luke Barnard
8d46b19916 Restrict Flair in the timeline to related groups of the room 2017-10-04 14:06:49 +01:00
Luke Barnard
7be5e685f7 Implement UI for editing related groups of a room
(using the new EditableItemList)
2017-10-04 13:19:57 +01:00
Luke Barnard
9e3954865a Fix a couple of bugs with EditableItemList
- fix entering the same thing twice (which had the bug of not emptying the "new" field)
 - fix editing items in the list (which would stack overflow because of typo)
2017-10-04 13:15:38 +01:00
Luke Barnard
28b8582bd6 Merge branch 'develop' into luke/refactor-editable-list-from-alias-settings 2017-10-04 10:37:45 +01:00
Luke Barnard
4e9694be6d Maintain "blur to add" function to match previous UX 2017-10-04 10:28:26 +01:00
Luke Barnard
407a632a8d Fix typo 2017-10-04 10:26:43 +01:00
Luke Barnard
d25ebfb844 Remove cruft from EIL 2017-10-04 10:15:44 +01:00
Luke Barnard
011aadcb94 Merge pull request #1421 from pafcu/develop
Add dummy translation function to mark translatable strings
2017-10-04 10:09:09 +01:00
Luke Barnard
8243c39d83 Factor out EditableItemList from AliasSettings
Such that we can reuse the same UI elsewhere, namely when editing related groups of a room (which is an upcoming feature).
2017-10-04 10:00:01 +01:00
Luke Barnard
03581adf85 Merge pull request #1438 from matrix-org/luke/groups-remove-room
Implement button to remove a room from a group
2017-10-03 11:45:03 +01:00
Luke Barnard
6b834bc72e Add confirmation dialog for removing room from group 2017-10-03 11:16:22 +01:00
Luke Barnard
0116c4b486 Log the error when failing to removie room from group 2017-10-03 10:14:08 +01:00
Luke Barnard
3e34a460a4 Add error dialog for when removing room fails 2017-10-03 10:12:11 +01:00
Stefan Parviainen
a96169e80e Fix merge conflict 2017-10-02 17:57:22 +02:00
David Baker
b202601d65 Fix showing 3pid invites in member list 2017-10-02 15:10:32 +01:00
Travis Ralston
0e2a1c90d5 Don't suggest grey as a color scheme for a room
Fixes https://github.com/vector-im/riot-web/issues/5045

Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-09-29 16:08:50 -06:00
Travis Ralston
20798dd2fa Expose power level setting for widgets
Fixes https://github.com/vector-im/riot-web/issues/4866

Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-09-29 15:37:32 -06:00
Travis Ralston
8ee9d39ffa Expose option for m.room.topic power level
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-09-29 15:12:05 -06:00
Travis Ralston
8ab3d94c1c Always show common events in the PL section of room settings
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-09-29 15:11:48 -06:00
Travis Ralston
614cf950b6 Supply user-friendly labels for common events
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-09-29 14:45:00 -06:00
Travis Ralston
2e1b2178a1 Remove assumptions on how languages work in the power levels section
This does mean that the strings will need to be re-translated, but now they may be more accurate because the comma is not assumed in the code.

Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-09-29 14:35:49 -06:00
Travis Ralston
415693bd83 Support editing power levels of events.
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-09-29 14:32:40 -06:00
Travis Ralston
a01387f7a6 Use an AccessibleButton for unpinning from the pane.
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-09-29 13:32:25 -06:00
Travis Ralston
0f2fd9f698 Move the PinnedEventsPanel to the react-sdk
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-09-29 13:25:29 -06:00
Luke Barnard
955ca6cd2b Implement button to remove a room from a group
NB: This doesn't provide any feedback to the user. We should use a GroupSummaryStore-style component to refresh the view after a successful hit to the API. This could affect the summary view as well, because when rooms are removed from a group, they are also removed from the summary (if necessary).
2017-09-29 17:59:24 +01:00
Travis Ralston
f71e07670d Send toggle handler for the cancel button in the pinned events pane
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-09-29 08:56:21 -06:00
Travis Ralston
874d383a8f Add dock for pinned messages at the top of the room
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-09-29 08:56:21 -06:00
Travis Ralston
3a58e1c066 Show pinned message changes in the timeline
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-09-29 08:56:21 -06:00
Luke Barnard
c8b2158156 Lint 2017-09-29 10:42:23 +01:00
Luke Barnard
18e0d8da86 Rename Flair feature to Groups 2017-09-29 10:27:40 +01:00
Luke Barnard
739ddb8410 Merge branch 'develop' into luke/groups-button 2017-09-28 12:11:26 +01:00
Luke Barnard
6b9a2909df Add rule to enforce spacing in curly brackets in JSX children
This required an updated in version of eslint-plugin-react to 7.4.0.
2017-09-28 11:21:06 +01:00
Luke Barnard
38fdd155f0 Construct address picker message using provided validAddressTypes 2017-09-28 10:06:51 +01:00
Luke Barnard
929c8627d3 Add button to get to MyGroups (view_my_groups or path #/groups) 2017-09-27 17:45:49 +01:00
Luke Barnard
f3b6b2cc06 Fix GroupView summary rooms displaying without avatars
- GroupView can now render with rooms in the summary that do not have an avatar
 - RoomAvatar no longer has a redundant fallback avatar (this is handled by BaseAvatar)
 - RoomAvatar was delinted
2017-09-27 16:18:15 +01:00
Luke Barnard
d52355f80e Implement adding rooms to a group (or group summary) by room ID 2017-09-27 15:30:58 +01:00
David Baker
2d8bc783b0 Merge pull request #1431 from matrix-org/luke/feature-flair-tooltip
Give flair avatars a tooltip = the group ID
2017-09-27 14:44:25 +01:00
Luke Barnard
f528e147e3 Give flair avatars a tooltip = the group ID 2017-09-27 14:36:22 +01:00
Luke Barnard
e3405cfd95 shouldOmitSelf -> includeSelf 2017-09-27 11:52:05 +01:00
Luke Barnard
6bc9b32ab7 Fix ability to feature self in a group summary
By default the AddressPicker would omit the currently logged-in user. This adds a property to override that to allow "self" to be picked.
2017-09-27 11:04:41 +01:00
Luke Barnard
1ca9102442 Fix spinner appearing above RP header
By wrapping the spinner in the mx_MemberList class. Also, use mx_RoomHeader_cancelButton for group settings cancel
2017-09-27 10:36:44 +01:00
Stefan Parviainen
35cb52febc Fix merge conflict 2017-09-27 08:41:37 +02:00
Luke Barnard
1b12602ea5 Merge branch 'develop' into luke/groups-add-rooms 2017-09-26 17:12:52 +01:00
Luke Barnard
20d65535c0 Use all known rooms instead of public rooms 2017-09-26 17:11:54 +01:00
Luke Barnard
ddab8d7b5c Implement "Add room to group" feature 2017-09-26 14:49:13 +01:00
David Baker
8d0983ab02 Fix group membership publicity
* Read the new flag in the summary API (the one we were reading
   was actually whether the group server listed you as a member to
   non-members).
 * Remove call to now-dead _loadGroupFromServer andf use the store
   instead
2017-09-26 14:46:57 +01:00
Robert Swain
24de01e21d AppTile: Test if widgetUrl startsWith instead of has a substring
The event origin should be at the beginning of the URL.
2017-09-25 17:14:25 +02:00
Robert Swain
6e49926228 AppTile: Do not test for electron platform
The method platform method is instead stubbed on all other platforms.
2017-09-25 17:13:18 +02:00
Robert Swain
b047f1caaa Merge branch 'develop' into rob/electron-screensharing 2017-09-25 17:02:30 +02:00
David Baker
2ab860f487 Merge pull request #1427 from matrix-org/luke/feature-flair-cache-bust
Bust the flair caches after 30mins
2017-09-25 15:39:06 +01:00
Luke Barnard
20c731f627 Bust the flair caches after 30mins
Group profile data and the groups a user has publicised will be removed from the cache 30mins after retrieval.

There may be some benefits to caching the group profiles for longer than the group memberships but for now they're naively busted after the same 30mins.
2017-09-25 15:21:56 +01:00
David Baker
d9c2f6e610 Merge pull request #1426 from matrix-org/dbkr/profile_in_group_member_info
Show displayname / avatar in group member info
2017-09-25 15:14:30 +01:00
David Baker
0b96871be4 Lint 2017-09-25 15:07:02 +01:00
David Baker
af2df77b8e Merge pull request #1418 from matrix-org/luke/groups-summary-store
Create GroupSummaryStore for storing group summary stuff
2017-09-25 14:59:32 +01:00
Luke Barnard
e42e7bd3ad Merge pull request #1419 from matrix-org/dbkr/publicity_toggle
Add status & toggle for publicity
2017-09-25 14:52:57 +01:00
David Baker
58ec732fb3 Add width/height/resizeMethod params 2017-09-25 14:51:21 +01:00
Luke Barnard
1bd200f1b1 Merge pull request #1417 from matrix-org/dbkr/member_list_show_more
MemberList: show 100 more on overflow tile click
2017-09-25 14:50:33 +01:00
Luke Barnard
83e6218930 Remove listeners from group summary store on unmount 2017-09-25 14:49:12 +01:00
Luke Barnard
8e7d58797d _loadGroupFromServer -> _initGroupSummaryStore 2017-09-25 14:48:49 +01:00
David Baker
5b312ffb03 Show displayname / avatar in group member info 2017-09-25 14:38:43 +01:00
David Baker
1a82f121c0 lint 2017-09-25 13:17:07 +01:00
Richard van der Hoff
e2f8bb2ec0 Fix NPE in MemberList
_getChildCountInvited would throw an NPE if invoked before the js-sdk had found
the room. Make sure we initialise the state correctly.
2017-09-25 10:25:21 +01:00
Luke Barnard
b8dca58f4f Pass matrixClient as an argument to GSS constructor 2017-09-25 10:02:13 +01:00
Stefan Parviainen
2b5b708057 Translate unknown presence label
Signed-off-by: Stefan Parviainen <pafcu@iki.fi>
2017-09-24 10:14:04 +02:00
Stefan Parviainen
dbae5a66e3 Use translation in img alt text
Signed-off-by: Stefan Parviainen <pafcu@iki.fi>
2017-09-24 09:43:52 +02:00
Stefan Parviainen
14bce1119c Make theme names translatable
Signed-off-by: Stefan Parviainen <pafcu@iki.fi>
2017-09-23 21:36:10 +02:00
Stefan Parviainen
f2f5302a7b Merge branch 'develop' of github.com:matrix-org/matrix-react-sdk into develop 2017-09-23 09:47:51 +02:00
Stefan Parviainen
cc441f42f9 Some more translatable strings
Signed-off-by: Stefan Parviainen <pafcu@iki.fi>
2017-09-23 09:02:51 +02:00
Stefan Parviainen
d4929b558e Add dummy translation function to mark translatable strings
Signed-off-by: Stefan Parviainen <pafcu@iki.fi>
2017-09-22 21:43:27 +02:00
Michael Telatynski
6d530eeb6e
apply i18n _t to string which has already been translated
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-09-22 20:04:04 +01:00
David Baker
af73f1c3bb Add status & toggle for publicity
This doesn't work at the moment because it looks like it's broken
in synapse as per https://github.com/matrix-org/sytest/pull/391

But if it did work, the client side code might look something
like this.
2017-09-22 19:27:02 +01:00
Luke Barnard
791bc5e7ac Create GroupSummaryStore for storing group summary stuff
- Acts as a layer between GroupView and the group APIs that modify the summary individually. This allows for abstraction of getting the new summary once a successful API hit has been done.
 - The plan is to also control the avatar, topic, body of the summary via the same class
2017-09-22 18:52:06 +01:00
David Baker
5004d90a3a Merge remote-tracking branch 'origin/develop' into dbkr/member_list_show_more 2017-09-22 18:03:16 +01:00
David Baker
de43972881 Merge pull request #1416 from matrix-org/dbkr/truncatedlist_invite
Make the invite section a truncatedlist too
2017-09-22 18:02:44 +01:00
David Baker
25da0f6a7a MemberList: show 100 more on overflow tile click
Not the full list because on HQ that causes your browser to implode.

This should really be a decent paginated list at this point, but this is better
for now.
2017-09-22 17:01:14 +01:00
David Baker
9cbfc22352 Make the invite section a truncatedlist too
For uniformity and to speed up rooms like HQ with have a lot of
lingering invites.
2017-09-22 16:50:54 +01:00
Luke Barnard
4c1a85cb71 Merge pull request #1415 from matrix-org/luke/groups-remove-featured-rooms-and-users
Implement removal function of features users/rooms
2017-09-22 16:32:40 +01:00
David Baker
a868fa4be9 Merge pull request #1412 from matrix-org/dbkr/truncatedlist_experiment
Allow TruncatedList to get children via a callback
2017-09-22 16:25:45 +01:00
Luke Barnard
3f9d20de97 Implement removal function of features users/rooms
With the appeareance of a "X" in the top right of each featured item when editing.

NB: No reloading of summary is done after adding/removing a user/room. The plan is to better than threading a callback all the way down.
2017-09-22 15:56:35 +01:00
David Baker
621a108b5e Use flow style function definition for doc 2017-09-22 15:15:10 +01:00
David Baker
dba48e2f8f use start, end rather than min, max 2017-09-22 15:07:45 +01:00
David Baker
0f9f1c85a8 Remove done todo 2017-09-22 14:58:49 +01:00
David Baker
4a36e32c8d Show displayname & avatar url in group member list 2017-09-22 14:52:52 +01:00
David Baker
f1a2b6d327 lint 2017-09-22 13:35:49 +01:00
David Baker
16398fbfc2 Allow TruncatedList to get children via a callback
And update MemberList to use it as such. This means that the parent
only needs to make react elements for the elements that will
actually be rendered, rather than all of them.

In practive this doesn't make a huge difference as making React
elements is fairly fast, but experimentally (with all profiling
turned on), MemberList went from 25ms in the constructor and
81ms in render to 38ms in constructor but sub 1ms render for
Matrix HQ.
2017-09-22 13:15:02 +01:00
David Baker
29d8df2c9e De-lint TruncatedList 2017-09-22 10:00:46 +01:00
Luke Barnard
c19ee66565 Merge pull request #1408 from matrix-org/luke/groups-membership-section-redesign
Redesign membership section in GroupView
2017-09-21 17:49:47 +01:00
Luke Barnard
3351770b54 Fix dodgy merge 2017-09-21 17:26:16 +01:00
Luke Barnard
d75efb83f1 Merge branch 'develop' into luke/groups-membership-section-redesign 2017-09-21 17:25:12 +01:00
Luke Barnard
cf23ac5931 Merge branch 'develop' into luke/groups-add-feature-rooms 2017-09-21 17:20:12 +01:00
David Baker
3c2e6fdf9e Honour the is_privileged flag in GroupView 2017-09-21 16:55:56 +01:00
Luke Barnard
5f840a3031 Implement adding rooms to the group summary
This includes making UserPickerDialog more generic such that it can also pick rooms from groups.
2017-09-21 16:53:10 +01:00
David Baker
add91f9a7d Update when a group arrives 2017-09-21 16:28:49 +01:00
David Baker
5940b11fd2 Merge pull request #1404 from matrix-org/luke/feature-flair-click-for-group
Implement `view_group` dispatch when clicking flair
2017-09-21 15:18:28 +01:00
Luke Barnard
16f5a667c6 Redesign membership section in GroupView 2017-09-21 15:03:30 +01:00
Luke Barnard
41a9ff22fb Rename profile object properties to camelCase
Also, add correct PropTypes for FlairAvatar
2017-09-21 14:22:43 +01:00
David Baker
60d444b841 Merge pull request #1402 from matrix-org/luke/groups-add-featured-rooms-and-users
GroupView: Add a User
2017-09-21 14:19:58 +01:00
Luke Barnard
e64cc3b666 Implement view_group dispatch when clicking flair 2017-09-21 13:25:36 +01:00
Luke Barnard
3f0e596e97 Only show "Add" button when editing the group 2017-09-21 12:44:17 +01:00
Luke Barnard
4d9c43b3c8 Display dialog when errors occur whilst featuring users 2017-09-21 12:34:16 +01:00
Luke Barnard
9cd4cdf6df Filter group users results based on query 2017-09-21 10:52:28 +01:00
Luke Barnard
03ddb63507 Remove redundant slice 2017-09-21 10:34:11 +01:00
Luke Barnard
515222c25f Track action button click event 2017-09-20 17:16:49 +01:00
Luke Barnard
7ef55946da Fix console error log statement 2017-09-20 17:04:05 +01:00
Luke Barnard
5471431ee5 Disable "Add a Room" button for when we have a room picker 2017-09-20 17:02:20 +01:00
Luke Barnard
adf0a79585 Implement avatar, displayname for featured users
Profile data has been added to the API response for users in the group summary
2017-09-20 16:54:12 +01:00
Luke Barnard
1c1bf82c2a Add users to group summary using new API 2017-09-20 16:32:02 +01:00
Luke Barnard
44c38652ab Implement UserPickerDialog for adding users
Also, use AccessibleButtons.
2017-09-20 15:44:42 +01:00
Luke Barnard
1c6cecbd43 Add "Add a User/Room" buttons and always display default lists 2017-09-20 14:41:29 +01:00
David Baker
6ad4ba767b Merge pull request #1401 from matrix-org/luke/fix-separate-sender-profile
Separate sender profile into elements with classes
2017-09-19 17:21:52 +01:00
Luke Barnard
979b580e1f Merge branch 'develop' into luke/fix-ugly-integ-button 2017-09-19 17:04:06 +01:00
Luke Barnard
e2ae6e6235 Separate sender profile into elements with classes
For separate CSS manipulation so that we can vary opacity independently for flair/name/aux
2017-09-19 16:56:14 +01:00
Luke Barnard
668e096194 Merge branch 'develop' of github.com:matrix-org/matrix-react-sdk into develop 2017-09-19 16:36:51 +01:00
Luke Barnard
7414d4d1f9 Fix issue with "props.aux" being inserted instead of e.g. "sent an image" 2017-09-19 16:36:30 +01:00
David Baker
80e0205b78 Fix promise error in flair
Import bluebird other wise it gets a native promise on my dev box
which does not have a finally method
2017-09-19 15:53:54 +01:00
Luke Barnard
5295d7f058 Merge branch 'develop' into luke/feature-flair 2017-09-19 14:55:54 +01:00
Luke Barnard
e9fb5712bd Merge branch 'develop' into dbkr/group_userlist 2017-09-19 13:26:55 +01:00
Luke Barnard
61a0f1ef67 Fix ugly integration button, use hover to show error
This simplifies the implementation of the button but also adjusts the appeareance such that a warning triangle appears in the top-right of button if an error has occured. The error popup will now appear when hovering over the button (with related CSS).
2017-09-19 11:57:23 +01:00
David Baker
658285ebbf Merge pull request #1396 from matrix-org/dbkr/3pid_invite_update_when_joined
Fix RoomView stuck in 'accept invite' state
2017-09-19 10:34:39 +01:00
Luke Barnard
241d442284 Fail gracefully for non-supporting servers 2017-09-18 15:12:38 +01:00
Luke Barnard
6add06db44 Fix big with rejecting promises upon error 2017-09-18 15:11:49 +01:00
Luke Barnard
26941e994f Merge branch 'develop' into luke/feature-flair 2017-09-18 14:46:50 +01:00
Luke Barnard
3476cfca79 getPublicGroups->getPublicisedGroups
To match dbkrs js-sdk wrappers for flair: matrix-org/matrix-js-sdk/pull#542
2017-09-18 14:44:35 +01:00
Luke Barnard
548e5f516c Put flair into labs 2017-09-18 14:38:41 +01:00
Luke Barnard
caaf5cca14 Only show the integ management button if user is joined 2017-09-18 13:34:33 +01:00
Matthew Hodgson
09e6ea00c5 Merge pull request #1273 from matrix-org/t3chguy/hide_chevron_memberlist_3pid_notarget
suppressOnHover for member entity tiles which have no onClick
2017-09-17 23:19:35 +01:00
Matthew Hodgson
141ae916ce Merge pull request #1387 from turt2live/travis/tooltip_redacter
Show who redacted an event on hover
2017-09-17 22:36:18 +01:00
Matthew Hodgson
b06d540f4c Merge pull request #1388 from matrix-org/t3chguy/start_mels_expanded
start MELS expanded if it contains a highlighted/permalinked event.
2017-09-17 22:09:44 +01:00
Matthew Hodgson
6a53b7b149 Merge pull request #1389 from turt2live/travis/ignored_users
Add ignore user API support
2017-09-17 22:05:02 +01:00
Travis Ralston
2605004edb Update ignored users when js-sdk on UserSettings on change
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-09-17 15:04:03 -06:00
Matthew Hodgson
bc565ba925 Merge pull request #1392 from turt2live/travis/no_emoji
Add option to disable Emoji suggestions
2017-09-17 21:40:43 +01:00
David Baker
c265ec9571 Fix RoomView stuck in 'accept invite' state
After accepting a 3pid invite.

Rather than clear the joining flag when the join request completes,
leave it so the RoomView can see that we're expecting the user to
be joined in the various stages that might go through (waiting for
join request, waiting for room object, waiting for 'joined' member
event). The problem in this case was that we had to wait a bit for
the last one, and there was no bit of state to represent it.

This hopefully also makes the logic somewhat simpler.

Fixes https://github.com/vector-im/riot-web/issues/5041
2017-09-15 15:07:09 +01:00
turt2live
b2de016b35 Add option to disable Emoji suggestions
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-09-14 21:28:12 -06:00
turt2live
0363f73e28 Fix the MessagePanel test
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-09-14 20:57:28 -06:00
turt2live
6e00f70320 Hide read receipts and typing notifs for ignored users
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-09-14 20:25:51 -06:00
turt2live
2e72d6cd7c Hide events that were sent by ignored users
This code only kicks in if the user was ignored after an event was sent. The homeserver should prevent other events from coming in.

Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-09-14 20:16:56 -06:00
Travis Ralston
3889df6b08 Add (un)ignore button to MemberInfo
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-09-14 19:42:09 -06:00
David Baker
f3a4856593 Merge remote-tracking branch 'origin/develop' into dbkr/fix_slash_join 2017-09-14 23:09:26 +01:00
Travis Ralston
2bc866b997 Clean up UserSettings for linting
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-09-14 16:08:20 -06:00
David Baker
1f837d2ae1 Make /join join again
The auto_join parameter to view_room got broken at some point so
/join took you to the room and then sat there like a lemon.

Fixes https://github.com/vector-im/riot-web/issues/5029
2017-09-14 23:06:00 +01:00
Travis Ralston
4579d20fd0 Unignore people from the settings
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-09-14 15:33:36 -06:00
Travis Ralston
4df16e8245 Display which users are ignored in the user settings
Adds https://github.com/vector-im/riot-web/issues/1767

Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-09-14 12:51:53 -06:00
Michael Telatynski
f612b1933b
start MELS expanded if it contains a highlighted/permalinked event.
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-09-14 17:53:47 +01:00
turt2live
8dc2604d63 Show who redacted an event on hover
This should fix #3931 although it's not obvious who actually performed the redaction.

Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-09-14 09:03:05 -06:00
Matthew Hodgson
bb8538cd1a Merge pull request #1381 from matrix-org/dbkr/remove_spurious_cancel_button
Remove spurious cancel button
2017-09-14 10:38:26 +01:00
David Baker
5087da9247 Merge remote-tracking branch 'origin/develop' into luke/feature-flair 2017-09-13 16:52:12 +01:00
David Baker
3c3328c5f1 Merge remote-tracking branch 'origin/develop' into dbkr/group_userlist 2017-09-13 16:34:39 +01:00
David Baker
081a900524 Merge pull request #1363 from matrix-org/t3chguy/on_copy_tooltip
respond on copy code block
2017-09-13 14:27:35 +01:00
Michael Telatynski
fea7af11b4
Merge remote-tracking branch 'origin/t3chguy/on_copy_tooltip' into t3chguy/on_copy_tooltip 2017-09-13 14:18:56 +01:00
Michael Telatynski
d3bfdf495c
initialize value with false to prevent undefined.
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-09-13 14:18:31 +01:00
David Baker
8abd35f581 Remove spurious cancel button
That appeared if you clicked on a room from the room directory
(it didn't do anything). It's only supposed to be shown when
editing room settings.
2017-09-12 15:48:13 +01:00
David Baker
757bc9fe32 Update roomlist when an event is decrypted
Events are now decrypted asynchronously, so are not decrypted
at the time of the Room.timeline which is when our RoomList
got the chance to update. It needs to update once the event has
been decrypted.

Ideally we would not update the whole room list order, but this is
how all the room list re-ordering happens right now, so staying
consistent with this.

Fixes https://github.com/vector-im/riot-web/issues/5020
2017-09-12 14:47:26 +01:00
David Baker
d90aa6ec20 Merge pull request #1368 from matrix-org/t3chguy/fix_theme
fix radio for theme selection
2017-09-12 11:54:49 +01:00
Robert Swain
aa82be1fb1 Merge branch 'develop' into rob/electron-screensharing 2017-09-12 10:54:20 +02:00
David Baker
3c70b86668 Merge pull request #1375 from matrix-org/dbkr/active_room_observer
Avoid re-rendering RoomList on room switch
2017-09-11 18:52:09 +01:00
David Baker
7e1886c2ab Merge pull request #1376 from matrix-org/dbkr/fix_failed_to_load_timeline_pos
Fix 'Failed to load timeline position' regression
2017-09-11 18:51:41 +01:00
David Baker
6cb98d7196 Hopefully make comment clearer 2017-09-11 18:39:30 +01:00
David Baker
531fc3ac54 Fix 'Failed to load timeline position' regression
Ignore the update that comes in from the RoomViewStore when the
current room changes or we save our scoll state against the new
room rather than the old one.

Fixes https://github.com/vector-im/riot-web/issues/5010
2017-09-11 17:57:52 +01:00
David Baker
be8f0991a6 Avoid re-rendering RoomList on room switch
Introduce a class that consumes updates from the RoomViewStore and
announces to listeners if the active room ID is now or is no longer
the room ID they specified. Naming suggestions welcome: it's
currently called ActiveRoomObserver.

Avoids passing the selectedRoomId down from MatrixChat all the way
through the LeftPanel / RoomList / RoomSubList to the RoomTiles.

Also introduce a CallPreview class that listens directly for
RoomViewStore changes as the call preview in the left panel needs
to know when the room changes, so this allows this component to
update without having to update the entire left panel.
2017-09-11 16:59:09 +01:00
Michael Telatynski
0580d536ad Merge branch 'develop' into t3chguy/on_copy_tooltip 2017-09-10 18:54:52 +01:00
David Baker
7617788345 Merge pull request #1372 from matrix-org/dbkr/emoji_fast_path
Fast path for emojifying strings
2017-09-10 17:44:02 +01:00
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
David Baker
ea5726aa4e Copyright 2017-09-08 23:14:06 +01:00
David Baker
ec3ff529e7 Fast path for emojifying strings
Emojione's regex for detecting emoji is *enourmous* and we were
running it on every display name, room name, message etc every time
those components mounted. Add a much simpler regex to rule out the
majority of strings that contain no emoji and fast-path them.

Makes room switching about 10% faster (in my tests with all the
profiling turned on).
2017-09-08 23:05:27 +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
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
03dcded72f Blank line to make comment clearer 2017-09-08 17:39:10 +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
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
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
Michael Telatynski
b10b0e573d
i18n and change message depending on success of copy
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-09-06 11:29:55 +01:00
Michael Telatynski
269f1f33e3
show response on copy so you don't mash it
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-09-06 11:27:25 +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
Robert Swain
53574541c3 AppTile: Add Jitsi electron screensharing support 2017-09-04 09:31:25 +02:00
Luke Barnard
0ded4acba0 Mark TODO for https://github.com/vector-im/riot-web/issues/4951 2017-08-31 17:52:53 +01:00
Luke Barnard
d84190f58d Explain Flair debounce 2017-08-31 17:49:19 +01:00
Luke Barnard
e89d52ccbf Do not get avatars when no groups were/could be retrieved 2017-08-31 16:46:39 +01:00
Luke Barnard
86e8a4c7e2 Make componentWillMount not async
This was left over from a previous refactor
2017-08-31 16:44:14 +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
David Baker
a2f2070966 Put setSate in the promise constructor
Avoids local variables. Also typo in comment.
2017-08-30 21:44:10 +01:00