Commit Graph

882 Commits (47ce14b75a76c166fd8b0ca89a7c4ff7bc2bc4f7)

Author SHA1 Message Date
David Baker c0d93a78bc Unregister some event handlers we'd registered but never unregister. 2016-02-04 15:55:24 +00:00
Kegsay 75ff4f0f95 Merge pull request #135 from matrix-org/kegan/sync-limit
Set the sync limit back to sane levels
2016-02-04 15:47:31 +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
David Baker 6e424780f1 typo 2016-02-04 14:38:05 +00:00
David Baker d0c8dadaf6 Merge pull request #134 from matrix-org/dbkr/fix_preview_bar
Put the room preview bar back for rooms that aren't peekable
2016-02-04 14:10:18 +00:00
Richard van der Hoff 309f1e2c8f Merge pull request #131 from matrix-org/rav/search_clickthrough
Enable clicking on search results to switch to the result in context.
2016-02-04 15:06:39 +01:00
Richard van der Hoff 63b50ed230 Merge pull request #132 from matrix-org/rav/fix_404_on_echo
Don't try to use local echoes as scroll tokens
2016-02-04 15:05:35 +01:00
Richard van der Hoff 8f5c739886 Clean up scrollToken assignment 2016-02-04 14:05:16 +00:00
Kegan Dougal f3fa5d6a2a Set the sync limit back to sane levels 2016-02-04 13:30:25 +00:00
David Baker b0da54533d Don't do this check - it's not valid since we set the room in onRoomName 2016-02-04 13:25:45 +00:00
David Baker 891f4761a0 Add comments and only set a room / init the timeline if we don't already have a room 2016-02-04 13:21:42 +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 574560cc05 remove listener on unmount 2016-02-04 13:06:59 +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
David Baker 3c2c2b051b Listen for Room and use this to init the timeline, not Room.name 2016-02-04 11:29:00 +00:00
David Baker c9a3ad31ab Comment error handling 2016-02-04 11:17:39 +00:00
David Baker 5c430395ea init timeline when we get the room, as otherwise we never load it after joining 2016-02-04 10:50:21 +00:00
David Baker 164c9b9031 Check error to see if it's actually a failure to peek 2016-02-03 16:53:48 +00:00
Kegan Dougal 8b96af4ccb Display the version in UserSettings. Change MatrixChat.onNewVersion to onVersion 2016-02-03 16:51:53 +00:00
David Baker cebc2f5306 Put the room preview bar back for rooms that aren't peekable (since we always tried to peek, it would fail which would reject the promise and cause loadingTimeline to stay true forever). 2016-02-03 16:23:57 +00:00
Kegan Dougal 7bdd9f57a5 Add MatrixChat.onNewVersion to trigger the new version bar 2016-02-03 16:16:52 +00:00
Richard van der Hoff d7576d223d Don't try to use local echoes as scroll tokens
Local echoes don't have a (usable) event id, so don't use them when remembering
the scroll state of a room.
2016-02-03 15:34:20 +00:00
David Baker 11df2fc285 Merge remote-tracking branch 'origin/develop' into dbkr/no_auto_join 2016-02-03 15:18:18 +00:00
Richard van der Hoff e747beac58 Enable clicking on search results to switch to the result in context. 2016-02-03 15:06:52 +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 2479c81cf6 Merge remote-tracking branch 'origin/develop' into rav/timeline_window 2016-02-03 14:09:50 +00:00
Richard van der Hoff c82b364ca8 Address review comments
Mostly renaming things and adding comments.
2016-02-03 08:03:10 +00:00
Richard van der Hoff 3b1ed3a014 Fix react warnings when a RR animation is happening during room switch
If the animation of an RR removal is active when we change room, we end up
getting a callback after the RoomView has been unmounted. Guard against this to
avoid getting React warnings.
2016-02-02 17:59:11 +00:00
David Baker b0f0d5f6d0 Null check room because those events will be emitted before the room is stored. 2016-02-02 16:34:41 +00:00
Kegsay 20f77d1224 Merge pull request #125 from matrix-org/kegan/trailing-slash
Strip trailing slashes on HS/IS URLs on register/login
2016-02-02 16:04:19 +00:00
David Baker 1cabe2ec37 Don't auto join rooms: always 'autoPeek' (ie. see if we can peek, otherwise offer to join) 2016-02-02 15:50:15 +00:00
David Baker 4e4e5be9a1 Disable upgrade registration temporarily. Fixes https://github.com/vector-im/vector-web/issues/818. 2016-02-02 14:14:18 +00:00
Kegan Dougal ce789ba962 Split out alias settings into its own component: AliasSettings 2016-02-02 12:46:14 +00:00
David Baker c187eda832 Don't assert that we're not logged in before starting registration because uprading is now a thing. 2016-02-01 16:53:39 +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
Richard van der Hoff f0cf5c0aff Update onRoomTimeline comment 2016-02-01 12:35:41 +00:00
Richard van der Hoff 2c04b9cb5b Merge pull request #124 from ajohnson23/messages_scrolldown_fix
Fix improper scrolldown button display issue.
2016-02-01 11:38:14 +01:00
Andrew Johnson fe9d7d10b9 Fix improper scrolldown button display issue.
This fixes an intermittent issue where the scrolldown button
or "new messages below" button would display even when the messages
panel was scrolled to the very bottom. Furthermore, when new messages
arrived, the messages panel would not automatically scroll down to show
the new messages.

Fixes https://github.com/vector-im/vector-web/issues/805
2016-01-29 22:32:32 -05:00
David Baker 7301f53807 Merge pull request #121 from matrix-org/dbkr/fix_registration_guest_access
Fix registration: don't auto-log in as a guest if we have a URL from …
2016-01-28 16:21:16 +00:00
Kegsay 6bb69ef2d1 Merge pull request #120 from matrix-org/kegan/bulk-email-invite
Support bulk invitations via text separators
2016-01-28 16:21:05 +00:00
David Baker 401d18bcc6 Fix registration: don't auto-log in as a guest if we have a URL from sydent. 2016-01-28 15:42:14 +00:00
David Baker 640e87e7c5 Merge pull request #117 from matrix-org/dbkr/guest_warning_bar
Add warning bar for guest users.
2016-01-28 13:44:06 +00:00
David Baker 83119d21d6 New style guest warning bar 2016-01-28 12:59:51 +00:00
David Baker 37ab225894 Merge pull request #119 from matrix-org/dbkr/own_messages_not_unread
Your own messages should not count as unread
2016-01-28 12:42:21 +00:00
Kegsay 12463aec4d Merge pull request #115 from matrix-org/kegan/fix-3pid-signup
Redirect to the registration page when landing with ?email=
2016-01-28 12:00:06 +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 796a2e5e3a Revert e5f4fa8c46 as it's no longer what's desired. 2016-01-28 11:15:43 +00:00
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