Commit graph

450 commits

Author SHA1 Message Date
David Baker
5b505cd32d Remove (broken, as it turns out) permission logic from react sdk and use https://github.com/matrix-org/matrix-js-sdk/pull/94 instead. 2016-03-03 17:58:41 +00:00
Matthew Hodgson
05a3dab528 fix roomavatars on FF 2016-03-03 16:16:40 +00:00
Matthew Hodgson
27fea6bc95 make the newly invited warning prettier 2016-03-03 15:02:11 +00:00
Matthew Hodgson
cfd6546fe9 default missing state_default to 50, as per https://github.com/matrix-org/matrix-doc/pull/286/files 2016-03-03 12:11:22 +00:00
David Baker
45857fa12c Remove unused voice & video on-clicks from RoomHeader. 2016-03-02 14:54:38 +00:00
David Baker
0051c91126 Merge pull request #183 from matrix-org/dbkr/3pid_invite_metadata
Pass room metadata from 3pid invite emails all the way through to the…
2016-03-02 14:31:58 +00:00
David Baker
2dbed2aa02 Clarify when room / oobData can/can't be set 2016-03-02 11:59:17 +00:00
David Baker
d61f383748 Oops, actually assign variable 2016-03-02 11:57:05 +00:00
David Baker
10b1b6443d Fix rooms we don't have any info about 2016-03-02 10:59:54 +00:00
David Baker
9085a2a866 Pass room metadata from 3pid invite emails all the way through to the relevant components so we can display it. 2016-03-01 18:23:57 +00:00
Richard van der Hoff
30abf81ed4 Fix CallView in left panel
Make CallView cope with not being passed a room. Fixes
https://github.com/vector-im/vector-web/issues/1049, introduced in
7a20fda7, which made vector crash when you switched to another room with an
active call.
2016-02-29 13:43:22 +00:00
Richard van der Hoff
543f444174 Merge commit 'd9e58d9' into develop
Undo an over-zealous force-push :(
2016-02-26 16:31:02 +00:00
Richard van der Hoff
2bd6529ca0 Merge remote-tracking branch 'origin/develop' into develop 2016-02-25 18:38:14 +00:00
Will Hunt
081a975d2a Added ES6 function 'fromCodePoint' to retrive first initial for default avatars that begin with a large unicode character. 2016-02-25 16:23:38 +00:00
David Baker
e915d7e215 Change some refreshRoomList() calls to dalyed ones to avoid hammering on catchup.
Fixes https://github.com/vector-im/vector-web/issues/544
2016-02-25 11:06:47 +00:00
Richard van der Hoff
10b55036f9 Merge branch 'rav/roomview_works' into develop
Implementation of new read-marker semantics (PR #160).
2016-02-24 17:26:46 +00:00
Richard van der Hoff
7a20fda7e7 Factor out a separate auxpanel, and cleanup the maxHeight management
Basically two changes here:

1. Factor out auxpanel from RoomView
2. Rather than setting maxHeight attributes by poking directly into the DOM,
pass them down as properties.
2016-02-23 15:54:15 +00:00
Richard van der Hoff
99d2392b6f Update the scroll offset when images load
In order to deal with image-loading reshaping the DOM, wire up
ScrollPanel.checkScroll to the image load events.

Fixes https://github.com/vector-im/vector-web/issues/984
2016-02-22 17:43:33 +00:00
Matthew Hodgson
a44ef5bd48 fix incomingCallBox vertical offset if MatrixToolbar is present 2016-02-19 02:21:17 +00:00
Matthew Hodgson
957ef9cdc8 fix self-highlight 2016-02-19 01:56:03 +00:00
Matthew Hodgson
d2a731e255 only resize the video element if not fullscreen 2016-02-19 01:18:53 +00:00
Matthew Hodgson
7f310ce307 fix nasty overscroll bug on video element caused by inline v. block 2016-02-19 01:18:37 +00:00
Matthew Hodgson
dc94df4b06 accomodate 800px wide thumbs and support horizontal scaling 2016-02-18 19:09:58 +00:00
Richard van der Hoff
e9726865fc Merge pull request #162 from matrix-org/rav/keep_redactions
Handle redacted events
2016-02-17 21:42:39 +00:00
Richard van der Hoff
e3feae32e1 Fix search clickthrough for HTML events
Switch to using a normal <a href="..."> link for search result
clickthrough. Apart from generally giving a better experience, this means that
it also works on html messages. The problem there was that we were attaching
onClick handlers to <span>s which we were then flattening into HTML with
ReactDOMServer (which meant the onClick handlers were never attached to React's
list of listeners).

To make this work without jumping through React hoops, the highlighter now
returns either a list of strings or a list of nodes, depending on whether we
are dealing with an HTML event or a text one. We therefore have a separate
HtmlHighlighter and TextHighlighter.
2016-02-17 21:06:27 +00:00
Richard van der Hoff
eb91faf554 Handle redacted events
matrix-js-sdk now retains redacted events. Filter them out of the timeline.

Also put empty placeholders in the dom so that if we try to scroll to a
redacted event, we don't end up blowing up.
2016-02-16 16:08:52 +00:00
Matthew Hodgson
ca56b7ec2d match partial names in memberlist 2016-02-15 20:43:43 +00:00
Matthew Hodgson
61018f4f38 whitespace 2016-02-15 20:42:44 +00:00
Matthew Hodgson
576de32ce4 show vaguely accurate default avatar 2016-02-15 22:01:22 +02:00
Matthew Hodgson
dfbc88d421 fix keyboard shortcuts on logout prompt 2016-02-15 22:01:05 +02:00
Matthew Hodgson
e17d77778f sanitize setting displayname prompt 2016-02-15 19:37:03 +02:00
Matthew Hodgson
0c7573629a spell out that you can invite email addresses 2016-02-15 11:13:37 +02:00
Matthew Hodgson
0a37f1c478 improve the fix for https://github.com/vector-im/vector-web/issues/917 2016-02-15 09:52:57 +02:00
Matthew Hodgson
9d3b0f6075 fix https://github.com/vector-im/vector-web/issues/913 2016-02-15 00:37:59 +02:00
Matthew Hodgson
5e5fdb9b96 fix vector-im/vector-web#921 2016-02-14 13:38:12 +02:00
David Baker
038f613079 Don;t try to fetch push rules if we're a guest: it throws. 2016-02-10 11:16:36 +00:00
David Baker
bd73c4e0cc Merge pull request #151 from matrix-org/dbkr/spinner_while_joining
Joining a room can take a while. Show a spinner…
2016-02-09 17:45:09 +00:00
David Baker
af0597e0c8 Joining a room can take a while. Show a spinner otherwise we'll end up in multiple join city. 2016-02-09 16:55:03 +00:00
David Baker
b4a7124686 Add a null check here since room can be null and this was throwing 2016-02-09 16:48:12 +00:00
Kegan Dougal
2027ed9f49 Fix bug where clicking on the email tile didn't work 2016-02-08 15:21:23 +00:00
Kegan Dougal
70ed0be389 Merge branch 'develop' into kegan/invite-autocompleting-race 2016-02-08 15:06:13 +00:00
Kegan Dougal
3fa23798ea Split out invite memberlist logic into its own component 2016-02-08 15:05:35 +00:00
Kegan Dougal
7ccce1dc91 Reset truncation when the text box is cleared 2016-02-05 16:58:37 +00:00
Kegan Dougal
5dafe1f4a6 Fix canonical alias bug showing the first alias if one was not set.
<select> rests on the first value if the defaultValue is null. This first value
should've been 'not set'.
2016-02-05 16:22:24 +00:00
Kegsay
ac67cd556a Merge pull request #142 from matrix-org/kegan/truncate-invite-search-list
Fix vector-im/vector-web#851 by truncating the search results
2016-02-05 15:56:23 +00:00
Kegsay
4ce41f7f6c Merge pull request #141 from matrix-org/kegan/room-settings-refactor
Refactor room settings
2016-02-05 15:50:39 +00:00
Kegan Dougal
b99c6b9a97 camelCasePlease 2016-02-05 15:48:04 +00:00
Kegan Dougal
a0c5b30fd6 Fix vector-im/vector-web#851 by truncating the search results 2016-02-05 15:24:51 +00:00
Kegan Dougal
03f19eba55 Implement radio boxes ( vector-im/vector-web#731 ) for history visibility. Hook up remaining bits. 2016-02-05 14:38:28 +00:00
Kegan Dougal
0cbf9dba87 Glue more things back together 2016-02-05 11:59:19 +00:00
Kegan Dougal
78354d0bc7 Yank out color settings from RoomSettings to ColorSettings 2016-02-05 11:27:11 +00:00
David Baker
9525808cd0 Merge pull request #137 from matrix-org/dbkr/roomlist_unregister_event_handlers
Unregister some event handlers we'd registered but never unregister.
2016-02-05 10:48:22 +00:00
David Baker
63776509a6 Make the function call-rate limiting a generic thing and use it in more places. 2016-02-04 18:06:24 +00:00
Kegan Dougal
74e16ac83e Merge branch 'develop' into kegan/room-settings-refactor 2016-02-04 16:20:24 +00:00
Kegan Dougal
73df5a2828 Modify how checked state is passed around
Prefer onChange -> setState to ref grabbing so we can expose public setters
and not be tied down to certain element implementations.
2016-02-04 16:18:59 +00:00
David Baker
c0d93a78bc Unregister some event handlers we'd registered but never unregister. 2016-02-04 15:55:24 +00:00
David Baker
d1467d2319 Merge pull request #136 from matrix-org/dbkr/prompt_display_name_on_join
Prompt for display name before joining your first room
2016-02-04 15:32:52 +00:00
Kegan Dougal
4013dae770 Start refactoring RoomSettings
- Don't manipulate settings in RoomView. Make it RoomSettings' job.
- Return Promise[] from AliasSettings.save() rather than an allSettled promise
  so callers can have more granularity over what to do with it (.all vs .allSettled)
- General refactoring of RoomSettings. Most things are broken now and are not
  submitted. Add util methods to grab values out of events.
2016-02-04 15:26:12 +00:00
David Baker
167da10b8b address PR comments 2016-02-04 15:07:30 +00:00
Kegsay
6c9d48bd3a Merge pull request #128 from matrix-org/kegan/alias-settings
Split out alias settings into its own component: AliasSettings
2016-02-04 13:14:19 +00:00
David Baker
47fef0896f Prompt for display name before joining your first room (if you haven't set one).
Fixes https://github.com/vector-im/vector-web/issues/758
2016-02-04 11:49:10 +00:00
Richard van der Hoff
e01d61dfeb Merge branch 'rav/timeline_window' into rav/link_to_event
Conflicts:
	src/components/structures/MatrixChat.js
	src/components/structures/ScrollPanel.js
2016-02-03 14:12:28 +00:00
Richard van der Hoff
c82b364ca8 Address review comments
Mostly renaming things and adding comments.
2016-02-03 08:03:10 +00:00
Kegan Dougal
ce789ba962 Split out alias settings into its own component: AliasSettings 2016-02-02 12:46:14 +00:00
Richard van der Hoff
d9e13780b8 Implement direct-to-event linking.
This adds support for links to particular event ids: add /<eventId> to the URL
for a room.

This commit also ensures that we scroll to the 'read marker' when switching to
a room which has no previous scroll state, as well as preventing that marker
from going past the middle of the screen.

This also reinstates the preservation of scroll state when switching rooms,
which was disabled previously.
2016-02-01 16:31:12 +00:00
Kegan Dougal
e6c93530e2 Strip trailing slashes on HS/IS URLs on register/login 2016-02-01 14:19:20 +00:00
Kegan Dougal
bdc1028a7e Support bulk invitations via text separators
Valid separators are , ; <space>
2016-01-28 11:56:20 +00:00
David Baker
f745e941ec Fix exception thrown if any custom tags are set 2016-01-28 09:41:46 +00:00
Matthew Hodgson
6eea1f7f83 try for a simpler invite placeholder look & feel 2016-01-24 19:02:18 +00:00
Matthew Hodgson
872b9be17a increase truncatelist size to match INITIAL_LOAD_NUM_MEMBERS 2016-01-24 18:24:26 +00:00
Kegsay
9a6f33861f Merge pull request #112 from matrix-org/kegan/email-invite-tile
Add a tile to the invitee list which represents an email tile
2016-01-22 17:35:17 +00:00
Kegan Dougal
437280020c Turn off autocomplete for search list 2016-01-22 17:32:43 +00:00
Kegan Dougal
e78c1fba87 Hide 'Email: ' is the first char is @ 2016-01-22 17:28:23 +00:00
Matthew Hodgson
b19a318b2d put a black badge on unread notifications, and a red one for unread highlights 2016-01-22 17:22:49 +00:00
Kegan Dougal
c3f786cc5e Add a tile to the invitee list which represents an email tile 2016-01-22 17:20:52 +00:00
Kegsay
2e154c7478 Merge pull request #110 from matrix-org/kegan/3pid-invite-refresh-mlist
Refresh the membership list on 3PID invites
2016-01-22 16:13:42 +00:00
Kegan Dougal
99da0ef656 Fix vector-im/vector-web#694 - Empty invitee list
The invitee list is lazy-loaded 50ms after the first render. We were relying
on setState from the member lazy-load to also kick the invitee list. However,
setState is synchronous and we were loading the invitee list afterwards, which
meant that the SearchableEntityList wouldn't have any invitees until the next
render().
2016-01-22 16:11:09 +00:00
Kegan Dougal
38d5c7d5c5 Filter out undefined/null children which won't render 2016-01-22 15:57:42 +00:00
Kegan Dougal
675e0f176f Add onShowMoreRooms prop for kicking gemini 2016-01-22 15:46:38 +00:00
Matthew Hodgson
0bdd674f7f fix invalid powerlevel setting 2016-01-22 15:29:57 +00:00
Kegan Dougal
366a24bbe4 Refresh the membership list on 3PID invites 2016-01-22 15:11:36 +00:00
Kegan Dougal
7ef1ba0b44 Unbreak RoomHeader 2016-01-22 11:48:26 +00:00
Kegan Dougal
f213901e29 Return early when calculating one-to-one room avatars
Object.keys() is O(n) and is wasted because we only care if the keys are 1 or 2.
Use `for .. in` instead and return early if there are >2 keys.

Profiling indicates this cuts wasted time from ~74ms to ~32ms for me (who has
a large number of rooms with large numbers of people in them).
2016-01-22 11:11:56 +00:00
manuroe
a627ee7ef6 Fixed ternary operation 2016-01-22 08:54:40 +01:00
Matthew Hodgson
8ccc3f04c3 correct layout for truncated lists 2016-01-21 17:39:12 +00:00
Kegsay
b45e5e6eb5 Merge pull request #108 from matrix-org/kegan/member-list-perf
Add "and X more" overflow tile to joined member list
2016-01-21 16:15:12 +00:00
Kegan Dougal
dfab32394d Set truncation to 10 for now. 2016-01-21 16:03:32 +00:00
Kegan Dougal
d72ab641d0 Expand the list when the overflow element is clicked
Negative truncateAt values means "do not truncate".
2016-01-21 15:57:59 +00:00
Matthew Hodgson
c5099a837b doh - anyone can set their own tags... 2016-01-21 15:08:14 +00:00
Kegan Dougal
eed83f982e Add a suitable overflow tile for the member list 2016-01-21 11:41:28 +00:00
Kegan Dougal
9f362e488c Add a TruncatedList component, which truncates children passed to it. 2016-01-21 11:30:37 +00:00
David Baker
13e70e6956 Merge remote-tracking branch 'origin/develop' into unread_sync 2016-01-21 10:36:29 +00:00
David Baker
99a491bb0e Merge pull request #68 from matrix-org/notif_sync
Set room highlight from unread_notification_count
2016-01-21 10:31:42 +00:00
Matthew Hodgson
eab0ca8716 fix bottom margin on FF 2016-01-21 00:39:10 +00:00
Matthew Hodgson
4d549304b6 Fix autoshow 2016-01-21 00:26:44 +00:00
Matthew Hodgson
9ce4148925 go splitscreen at the first sign of an invite search 2016-01-21 00:25:47 +00:00
Matthew Hodgson
deca90d0a7 fix up Start Chat behaviour as per Amandine's feedback 2016-01-21 00:16:10 +00:00
Matthew Hodgson
6f6db75ea1 improve banned users layout 2016-01-20 22:47:42 +00:00
Matthew Hodgson
c0aa15aa09 now with gemini 2016-01-20 22:11:58 +00:00
Matthew Hodgson
3aaf934c97 implement the correct design for memberlist, modulo gemini 2016-01-20 22:04:49 +00:00
Matthew Hodgson
964e7c3739 fix user_levels some more 2016-01-20 17:15:01 +00:00
Matthew Hodgson
705730d450 fix user_levels 2016-01-20 17:12:55 +00:00
Matthew Hodgson
c64f08dcc3 fix missing aliases 2016-01-20 16:53:46 +00:00
Matthew Hodgson
76279e2940 fix roomsettings a bit 2016-01-20 16:39:26 +00:00
Matthew Hodgson
14c2d945d6 oops, use right class 2016-01-20 15:58:17 +00:00
Matthew Hodgson
dbcbd2aad8 fix badge layout 2016-01-20 15:52:34 +00:00
Matthew Hodgson
4d2608017b fix CSS for ChangeAvatar placeholder 2016-01-20 15:39:56 +00:00
Kegan Dougal
edb67b778d Merge branch 'develop' into matthew/roompreview 2016-01-20 14:42:04 +00:00
Kegan Dougal
fee7ee5dcc Load the user list eventually if we have no Room object 2016-01-20 14:41:48 +00:00
Kegan Dougal
a0aaae49dd Merge branch 'develop' into matthew/roompreview 2016-01-20 14:27:25 +00:00
Kegsay
c3c7c90de0 Merge pull request #103 from matrix-org/kegan/invite-search
Add global search with ability to invite from said list
2016-01-20 14:26:17 +00:00
Matthew Hodgson
60a084bdbd Merge branch 'develop' into matthew/roompreview 2016-01-20 14:22:09 +00:00
Kegan Dougal
391c653d24 Lazy-load the user list to improve perf
Still slow when typing due to adding 1000 tiles to the DOM, but it is at least
a lot better than before (which would stutter on ANY change to the member list)
2016-01-20 14:14:04 +00:00
Kegan Dougal
91c224aaf4 Review comments: Remove stuff which shouldn't have been there 2016-01-20 13:41:03 +00:00
Kegan Dougal
bdfd09d893 Merge branch 'kegan/invite-search' into matthew/roompreview 2016-01-19 17:10:54 +00:00
Kegan Dougal
e4e3393232 Temporarily comment out address book until perf can be looked at given other PRs now depend on this PR 2016-01-19 17:09:36 +00:00
David Baker
4ed130ceac Implement adding email addresses to your profile. 2016-01-19 16:36:54 +00:00
Kegan Dougal
3e4c5d7fa3 Merge branch 'kegan/invite-search' into matthew/roompreview 2016-01-19 16:08:14 +00:00
Kegan Dougal
d2708cf4d4 Filter the membership list in addition to the search area for the input text 2016-01-19 14:51:26 +00:00
Matthew Hodgson
2274cb3f7f fix invite prompt 2016-01-18 20:18:46 +00:00
Matthew Hodgson
eb7144ef85 improve layout 2016-01-18 19:56:56 +00:00
Matthew Hodgson
0a79b0f9e2 fix NPE from kegan's memberlist branch 2016-01-18 19:56:47 +00:00
Matthew Hodgson
7b91d3c5f8 wording changes from Amandine to settings 2016-01-18 19:56:38 +00:00
Matthew Hodgson
765174a600 merge conflict 2016-01-18 19:56:35 +00:00
Matthew Hodgson
491ba94230 WIP: try to support non-guest room peek. Rename visibility permissions in room settings a bit, and fix how they are persisted. 2016-01-18 17:39:23 +00:00
Kegan Dougal
a8643ff039 Move power level stuff to EntityTile for now 2016-01-18 17:37:17 +00:00
Kegan Dougal
0465323ca6 Merge branch 'develop' into kegan/invite-search 2016-01-18 17:31:26 +00:00
Kegan Dougal
f1042bd1c4 UI tweaks 2016-01-18 17:21:28 +00:00
Kegan Dougal
36616a97a1 Add ability to click-to-invite 2016-01-18 17:12:35 +00:00
manuroe
33edeccb43 Merge branch 'develop' into push-rules-settings
# Conflicts:
#	src/component-index.js
#	src/components/views/rooms/RoomSettings.js
2016-01-18 18:00:41 +01:00
Kegan Dougal
165adde0c8 Use EntityTile for 3PID entities rather than munging MemberTile 2016-01-18 16:55:51 +00:00
Kegan Dougal
c758c0f84f Add invite button JSX 2016-01-18 16:47:31 +00:00
Kegan Dougal
71009d81b6 Factor out common code between MemberTile and UserTile into EntityTile. Use EntityTile. 2016-01-18 15:19:49 +00:00
David Baker
cc3d27bd4b Merge pull request #98 from matrix-org/message_composer_arrows_keys
Fix history scrolling with multiline input
2016-01-18 14:25:57 +00:00
David Baker
880ae0f3fa Fix typo 2016-01-18 14:25:23 +00:00
Matthew Hodgson
51648b9bf0 merge develop 2016-01-18 14:02:19 +00:00
Matthew Hodgson
17fdfa0c8f incorporate kegan PR feedback 2016-01-18 14:00:47 +00:00
Matthew Hodgson
aa412bed0f reindent promises as per dave's PR feedback 2016-01-18 13:38:40 +00:00
Matthew Hodgson
d0eedb4faa merge develop 2016-01-18 13:34:09 +00:00
Kegan Dougal
fd99b260f4 Merge branch 'develop' into kegan/invite-search 2016-01-18 12:07:36 +00:00
Kegan Dougal
2a64d0feb3 Merge branch 'develop' into matthew/roomsettings2 2016-01-18 10:49:45 +00:00
Kegsay
6e42d00727 Merge pull request #95 from matrix-org/kegan/base-avatar
Factor out common Avatar code
2016-01-18 10:18:04 +00:00
Matthew Hodgson
8f83621c4c hide Mod button for muted users 2016-01-18 01:40:19 +00:00
Matthew Hodgson
6e3245a3b0 make linkify userid jump to memberinfo 2016-01-18 01:26:15 +00:00
Matthew Hodgson
8e1ab8e6b4 vaguely skin MemberInfo correctly 2016-01-18 01:18:02 +00:00
Matthew Hodgson
430c90f4a4 oops ,forgot PowerSelector 2016-01-18 00:42:20 +00:00
Matthew Hodgson
a768b7fe4b bring back power badges 2016-01-18 00:16:31 +00:00
Matthew Hodgson
0553551d92 oops ,forgot PowerSelector 2016-01-17 23:58:38 +00:00
Matthew Hodgson
f3aeda7af9 merge develop 2016-01-17 23:31:21 +00:00
Matthew Hodgson
1467aacfa4 support saving tag changes (untested) 2016-01-17 12:27:21 +00:00