Commit graph

2387 commits

Author SHA1 Message Date
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
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
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
David Baker
5b312ffb03 Show displayname / avatar in group member info 2017-09-25 14:38:43 +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
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
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
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
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
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
cf23ac5931 Merge branch 'develop' into luke/groups-add-feature-rooms 2017-09-21 17:20:12 +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
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
9cd4cdf6df Filter group users results based on query 2017-09-21 10:52:28 +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
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
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
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
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
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
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
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
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
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
David Baker
9efa604706 Merge remote-tracking branch 'origin/develop' into dbkr/group_userlist 2017-08-30 17:39:47 +01:00
David Baker
cf747fcb57 Lint 2017-08-30 17:34:44 +01:00
Luke Barnard
ebc1993530 Implement Flair
Add 14x14 group avatars next to sender profiles.
2017-08-30 11:10:49 +01:00