Commit Graph

882 Commits (47ce14b75a76c166fd8b0ca89a7c4ff7bc2bc4f7)

Author SHA1 Message Date
David Baker 7d621d88d8 Your own messages should not count as unread 2016-01-28 11:12:56 +00:00
Richard van der Hoff a4f4bb9e72 Convert RoomView to using a TimelineWindow
Instead of using the Room's active timeline directly, use a
TimelineWindow. This shouldn't (yet) have much effect, beyond maybe making
scrollback after a gappy sync slightly more efficient.

For now, I have disabled the 'restoreScrollState' functionality. This will be
reinstated once I land the link-to-event code.
2016-01-28 10:53:43 +00:00
Kegan Dougal 81cc30bab2 Null guard because this may not exist in the DOM. 2016-01-28 10:52:08 +00:00
Kegan Dougal e017559765 New line 2016-01-28 09:58:51 +00:00
David Baker f745e941ec Fix exception thrown if any custom tags are set 2016-01-28 09:41:46 +00:00
David Baker 7ea45f9888 Move message count to suffix in title, as requested by @ara4n 2016-01-27 18:03:01 +00:00
David Baker e5f4fa8c46 Add warning bar for guest users. Fixes https://github.com/vector-im/vector-web/issues/770 2016-01-27 17:58:47 +00:00
David Baker 4661bb0942 Don't show a spinner while we're waiting for the user to do something 2016-01-27 15:44:12 +00:00
David Baker 8360c112fb Put the favicon badge call in a try block, as per comment 2016-01-27 15:19:25 +00:00
Kegan Dougal db8fab8019 Redirect to the registration page when landing with ?email=
Fixes "Missing access token" error.
2016-01-27 10:47:54 +00:00
David Baker f8cc6bdad6 Don't count as an unread message if we don't have a tile for it. 2016-01-25 17:13:07 +00:00
Matthew Hodgson c1f28bb6b9 hide 'unknown screen' warning 2016-01-24 19:14:14 +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
Matthew Hodgson bc60435750 improve settings layout and fix FF bugs 2016-01-24 18:15:08 +00:00
Matthew Hodgson bb0051f24f fix another NPE; apparently some stylesheets don't have href attributes (wtf?) 2016-01-24 11:46:25 +00:00
Matthew Hodgson 3da76192a1 title attr 2016-01-24 02:01:45 +00:00
Matthew Hodgson f15564074c track whether we're scrolled to bottom or not and display UI for warning & jumping there if needed. 2016-01-24 01:51:01 +00:00
Matthew Hodgson 28fddef5f9 only try to tint our CSS, otherwise random extensions which have inserted CSS may cause untrappable XSS SecurityErrors to throw 2016-01-23 19:46:00 +00:00
Matthew Hodgson 001b9ad7cc try to trap SecurityError exceptions for linux FFs who don't like you calling .contentDocument on an SVG (assuming that's where the error comes from) 2016-01-23 18:59:37 +00:00
Matthew Hodgson add8ef3c59 trap for ss.cssRules mysteriously returning null 2016-01-22 19:59:41 +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
Matthew Hodgson 4631648f26 Merge branch 'develop' of https://github.com/matrix-org/matrix-react-sdk into develop 2016-01-22 17:01:28 +00:00
Matthew Hodgson 24225af416 work around history visibility roomsetting UI some more 2016-01-22 17:01:15 +00:00
Kegsay ed3a112e5c Merge pull request #111 from matrix-org/kegan/search-on-mxid-and-displayname
Match entities based on uid/displayname and include partials/stripping
2016-01-22 16:19:59 +00:00
Kegan Dougal 2d96f90181 Review comments 2016-01-22 16:18:23 +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
Matthew Hodgson 1dd2cbed63 Merge branch 'develop' of https://github.com/matrix-org/matrix-react-sdk into develop 2016-01-22 15:51:34 +00:00
Matthew Hodgson 0bef94a6ce fudge around https://github.com/vector-im/vector-web/issues/731 2016-01-22 15:51:27 +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 ec54c7cf6c Match entities based on uid/displayname and include partials/stripping
"foo" would now match:
 - @foobar:matrix.org    - User ID matching
 - Foobar                - Display name matching
 - f (@foo2:matrix.org)  - user ID localpart matching
 - Bar Foo               - Word matching
2016-01-22 15:21:41 +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
David Baker 876646ac54 Hopefully make unread loop a bit more digrestable. 2016-01-21 13:22:13 +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
David Baker acce08194d Apply patch to the right branch: update for new count format 2016-01-21 10:23:18 +00:00
David Baker 1c54c64850 Merge pull request #99 from matrix-org/user_settings_on_register
Show user settings screen on registration
2016-01-21 10:11:28 +00:00
David Baker a0cc3720a9 Merge pull request #106 from matrix-org/dbkr/dont_spam_read_receipts
Don't spam the same RR at the server until it acks it.
2016-01-21 10:01:30 +00:00
Matthew Hodgson 9bbb9f7b29 pretty invites! 2016-01-21 00:45:22 +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 35c141cda9 reduce size of auxpanel when editing roomsettings 2016-01-20 23:09:36 +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 161cdef36e tint bottom borders 2016-01-20 17:24:09 +00:00
David Baker 548dac2ad9 Use new unread count methods 2016-01-20 17:19:52 +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 442e090f37 button layout 2016-01-20 17:09:46 +00:00
Matthew Hodgson 76b7788ba6 usersettings rhs button 2016-01-20 17:07:00 +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
David Baker 0052fbd6cb Don't spam the same RR at the server until it acks it. 2016-01-20 16:39:25 +00:00
Matthew Hodgson 14c2d945d6 oops, use right class 2016-01-20 15:58:17 +00:00
David Baker 83634bf930 Update for new unread count format 2016-01-20 15:56:11 +00:00
Matthew Hodgson dbcbd2aad8 fix badge layout 2016-01-20 15:52:34 +00:00
Matthew Hodgson 5c105a50e2 Merge branch 'matthew/roompreview' of https://github.com/matrix-org/matrix-react-sdk into matthew/roompreview 2016-01-20 15:49:02 +00:00
Matthew Hodgson 4d2608017b fix CSS for ChangeAvatar placeholder 2016-01-20 15:39:56 +00:00
Kegan Dougal b296d05b35 Fix finally NPE 2016-01-20 15:38:34 +00:00
Kegan Dougal 8dc21ec837 Fix race condition when joining rooms
Problem: Hitting join on a room invite would show spinner, then join room screen
then the messages.

Cause: The UI to show a spinner is set via the "joining" flag. This flag was
only set for the duration of the /join HTTP request. This is insufficient
because it races with actual room info arriving from /sync. If this info does
not arrive before the /join HTTP request returns, "joining" is false but the
current membership state of the user is still invite.

Fix: The "joining" flag is still set when the /join HTTP request is made, but
it is only turned off when the join event arrives from /sync.

Extras: This fix should also work when joining a room not from an invite.
2016-01-20 15:25:40 +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
David Baker 6d19ce09ab Merge pull request #105 from matrix-org/dbkr/add_email_address
Implement adding email addresses to your profile.
2016-01-19 17:20:35 +00:00
David Baker c4d4e9c46e Terminate promise chain 2016-01-19 17:20:23 +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 84608ba156 Fix syntax error 2016-01-19 16:18:08 +00:00
Kegan Dougal 3e4c5d7fa3 Merge branch 'kegan/invite-search' into matthew/roompreview 2016-01-19 16:08:14 +00:00
Matthew Hodgson db7d863ce4 set autoPeekDone on finally 2016-01-19 15:18:16 +00:00
Kegsay 33bd6e2028 Merge pull request #104 from matrix-org/dbkr/dedup_client_secret
Remove generateClientSecret and use the one the js sdk gives us.
2016-01-19 14:57:29 +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 c29ec28dfd fix layout for blunt join msgs 2016-01-18 20:15:12 +00:00
Matthew Hodgson f22519f10c factor out the peek rule calculation so that we can do it both onNewRoom and if there's a room already. I guess we could do it in react's onStateUpdate too 2016-01-18 20:05:33 +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
David Baker e68972fb1a Remove generateClientSecret and use the one the js sdk gives us. 2016-01-18 17:50:27 +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
David Baker 0ac997491e Clarify comment 2016-01-18 14:23:31 +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
Matthew Hodgson 06e1674f23 UI for tag management 2016-01-17 05:13:16 +00:00
Matthew Hodgson 5b5bd9aef1 remove create_room for now. lots of stupid bugfixes across the board. 2016-01-17 03:59:31 +00:00
Matthew Hodgson 82a159d651 make roomsettings actually work, including alias editing. (using staged UX rather than direct manipulation). loads of tweaks and fixes across the board 2016-01-17 02:48:55 +00:00
David Baker 7045906d5d Show user settings screen on registration instead of the PostRegister stuff. 2016-01-15 18:58:18 +00:00
David Baker a90f63f72c null check 2016-01-15 18:49:12 +00:00
David Baker 52de322789 Change history scolling so it doesn't interfere with moving between lines, even when those lines are wrapped rather than hard line breaks. 2016-01-15 18:31:07 +00:00
Kegan Dougal d6c7631dcc Show User avatar URLs 2016-01-15 17:31:32 +00:00
Kegan Dougal 4d47d9875b Merge branch 'kegan/base-avatar' into kegan/invite-search 2016-01-15 17:19:34 +00:00
Kegan Dougal 855bef17fa Fold BaseAvatar state mainly into state.urls to avoid too many code paths. 2016-01-15 17:05:05 +00:00
David Baker a849955c51 Merge pull request #93 from matrix-org/registration_field_validate
Do (more) client side validation of registration parameters.
2016-01-15 16:38:46 +00:00
Matthew Hodgson 90184235bb improve RoomSettings layout 2016-01-15 16:33:50 +00:00
Matthew Hodgson f476150591 fix changeavatar to avoid duplicate click on label 2016-01-15 16:33:34 +00:00
David Baker ecfdd3593c Validate everything on form submit. Don't use pwd1 where we didn't define it & fix some error codes. 2016-01-15 16:17:27 +00:00
Kegan Dougal d8d79722ac Make RoomAvatar use BaseAvatar 2016-01-15 16:13:25 +00:00
David Baker 6bd09512de Merge pull request #94 from matrix-org/share_history_invite_warning
Add warning on inviting a user if sharing history with new users.
2016-01-15 15:57:42 +00:00
Matthew Hodgson 293f5c7120 shrink auxpanel a bit for roomsettings 2016-01-15 15:53:53 +00:00
Matthew Hodgson 0caf5e0cdc manage permissions on whether people can actually edit name, topic, avatar etc or not 2016-01-15 15:51:40 +00:00
Matthew Hodgson 57e62bf0ba remove change avatar from here as it's now in the header 2016-01-15 15:50:38 +00:00