Commit graph

818 commits

Author SHA1 Message Date
David Baker
e8337b2119 More PR feedback 2016-06-28 17:11:47 +01:00
David Baker
548c392236 PR feedback 2016-06-28 14:59:45 +01:00
David Baker
98c03869a7 Display an error message if room not found
Fixes https://github.com/vector-im/vector-web/issues/1012
2016-06-24 15:34:07 +01:00
Richard van der Hoff
e046f5359f CreateRoom: remove reference to encryption module
The CreateRoom structure isn't currently used, but contained a reference to the
(now defunct) encryption module; remove the reference for now.
2016-06-23 14:08:45 +01:00
Matthew Hodgson
5195140ff8 reposition Login spinner 2016-06-21 19:50:03 +01:00
Richard van der Hoff
2ddfccdab3 Merge pull request #318 from matrix-org/dbkr/fix_default_hs
Fix https://github.com/vector-im/vector-web/issues/1679
2016-06-21 17:55:27 +01:00
David Baker
d3265ab970 Redundant getDeafultHs()
This now can never be falsey so no point checking it
2016-06-21 17:46:55 +01:00
David Baker
213e284edf Fix https://github.com/vector-im/vector-web/issues/1679 2016-06-21 11:05:37 +01:00
Aviral Dasgupta
442291c0a4 Merge branch 'develop' of github.com:matrix-org/matrix-react-sdk into feature-autocomplete 2016-06-21 04:09:22 +05:30
David Baker
fc06ebcc63 Fix view_next_room 2016-06-20 18:43:56 +01:00
David Baker
4c214119b2 Fix PR feedback 2016-06-20 18:05:58 +01:00
David Baker
d8dedae084 Fix /join to be consistent with the other code
Plus a number of other tidyups:

 * Fix /join to dispatch a view_room for the room alias
   with the additional auto_join parameter
 * Make RoomView automatically join the room if the auto_join
   parameter is true and the user isn't already in it
 * Tidy up RoomView's peeking code, also fixing
   https://github.com/vector-im/vector-web/issues/1220
   in react-sdk (although it still requires a synapse change
   to actually fix, but react-sdk does 'the right thing').
 * Remove duplication of usage text from /join command
 * Amalgamate MatrixChat::_viewRoom's many, many parameters
   into an object and sort out case consistency a little.
2016-06-20 16:30:51 +01:00
Aviral Dasgupta
4af983ed90 Style changes and improvements in autocomplete 2016-06-20 13:52:55 +05:30
Matthew Hodgson
94aec10512 Merge branch 'develop' into dbkr/scalar 2016-06-19 22:40:48 +01:00
David Baker
8103a795ec Merge pull request #316 from matrix-org/rav/fix_react_version_number
UserSettings: fix the displayed version of the react-sdk
2016-06-17 17:13:35 +01:00
Richard van der Hoff
f6835baa9c UserSettings: fix the displayed version of the react-sdk 2016-06-17 17:09:52 +01:00
David Baker
6adce649eb Use the first alias is there's no canonical alias 2016-06-17 16:56:34 +01:00
David Baker
3b5378fa53 Show canonical alias in URL bar
Use https://github.com/matrix-org/matrix-js-sdk/pull/140 to get the canonical alias, because that's a thing now.
2016-06-17 15:17:45 +01:00
Richard van der Hoff
0cc4497ef0 Merge pull request #307 from matrix-org/dbkr/fix_peeking
Fix peeking and member list vanishing
2016-06-16 11:13:20 +01:00
David Baker
40b1b99c38 underscore prefix internal method 2016-06-14 14:40:03 +01:00
David Baker
a95d8b5ed6 Move init logic into componentWillMount
to simplify getInitialState
2016-06-14 14:38:45 +01:00
David Baker
0ef5cc891e Add currentRoomId / Alias to getInitialState
with docs
2016-06-14 14:10:49 +01:00
David Baker
b8eee08d69 Fix member list vanishing
Add a callback to RoomView that it can give the room ID to once it's resolved it, since this lookup is now the responsibility of the roomview and only the roomview. The view_room action now has either an alias or an ID, not both. Also fix RoomView to load the room properly and not try to peek when it shouldn't.
2016-06-14 12:56:37 +01:00
Richard van der Hoff
e973d18085 Hide e2e features if not enabled
Don't show the device info in the MemberInfo and UserSettings unless the user
has ticked the 'labs' box.
2016-06-14 11:57:08 +01:00
David Baker
aaefdf19c5 Fix MatrixChat syntax fail 2016-06-14 11:57:07 +01:00
David Baker
11a38fce48 Fix peeking
Sorts out more of the room joining mess. currentRoom which held the room ID is now more appropriately called currentRoomId. RoomView will now take a roomID or alias as before but will now look up the room ID as required if given the alias. Also, now look up the alias every time you click on it so it's never stale, rather than looking in your current rooms for a room that thinks it has that ID.
2016-06-14 11:37:04 +01:00
Aviral Dasgupta
5831a68e11 Labs improvements 2016-06-13 23:25:31 +05:30
Aviral Dasgupta
727e6daaae Fix key attr placement in UserSettings 2016-06-13 22:11:21 +05:30
Aviral Dasgupta
c3a9658392 Add experimental "Labs" section to settings 2016-06-13 22:04:12 +05:30
David Baker
719928f389 Remove view_room_alias
As it was basically the same as view_room. Use view_room instead which will handle whether we pass an ID or an alias into RoomView
2016-06-10 15:12:42 +01:00
David Baker
b60ab9d695 Remove XXX now it's fixed (yay!) 2016-06-09 18:50:18 +01:00
David Baker
72b3ce200d Make the room directory join rooms by alias
Also makes some improvement on the multiple code path mess for joining rooms
2016-06-09 18:49:06 +01:00
David Baker
049e3a968b Merge pull request #303 from matrix-org/rav/factor_out_createroom
Factor out common parts of room creation
2016-06-09 11:05:22 +01:00
Richard van der Hoff
de36aa63fb Factor out common parts of room creation
Take the duplicated code out of MatrixChat and MemberInfo, and put it in a
separate 'createRoom' module
2016-06-09 10:58:25 +01:00
David Baker
98ef793809 Default IS should be vector.im now 2016-06-09 10:56:14 +01:00
David Baker
bb405563c8 Fix default servers 2016-06-09 10:54:56 +01:00
Richard van der Hoff
ef764c112e Merge pull request #300 from matrix-org/rav/device_verification
Support for marking devices as verified
2016-06-09 10:44:42 +01:00
David Baker
05404efa34 Remove if (this.props.config)
Since it now defaults to the empty dictionary (and if you pass null in, you deserve everything you get).
2016-06-09 09:53:37 +01:00
Richard van der Hoff
1dfb3f71ae Merge branch 'develop' into rav/device_verification 2016-06-08 21:34:47 +01:00
David Baker
c123f02842 Make the config optional 2016-06-08 18:45:46 +01:00
Richard van der Hoff
086698cd11 Add device info to user settings
Requires e81ce23 from matrix-js-sdk
2016-06-08 17:02:42 +01:00
David Baker
7e8c8dd336 Remove SdkConfig
just take a config in MatrixChat, pass the individual things down through the chain.

This may become unwieldy: let's see how it goes.
2016-06-08 14:54:34 +01:00
David Baker
b54376aa2a Add singleton object to hold SDK configuration 2016-06-07 21:49:06 +01:00
David Baker
943d7e18e1 Add _ to internal member 2016-06-07 19:55:24 +01:00
David Baker
d5a522fdfe Second attempt at fixing the Velocity memory leak
1) Correct fix for Velociraptor (we need to find the DOM node and pass that in)
2) Do the same leak fix for the read marker
3) Update the dependency to our fork which is fixed to make the call we do to release memory actually work.
4) Remove the velocity-ui-pack dependency which is unnecessary because velocity-ui is included in the velocity package
2016-06-07 18:22:01 +01:00
David Baker
fdcebe1e56 Merge remote-tracking branch 'origin/develop' into dbkr/scalar 2016-06-06 17:19:38 +01:00
Matthew Hodgson
e20a1acb88 label our versions sensibly 2016-06-02 19:22:11 +01:00
Matthew Hodgson
1d31463140 set email branding after registration 2016-06-02 13:14:52 +01:00
Matthew Hodgson
83fd02bdfa specify a brand when registering accounts 2016-06-02 11:51:26 +01:00
Matthew Hodgson
272afe39dc do not list rooms by default 2016-06-01 02:03:53 +01:00
Matthew Hodgson
c3fc76cdaa warn guests to register nicely to upload files 2016-05-31 23:59:36 +01:00
Matthew Hodgson
e1ba7df66e fix the Add button for email addies 2016-05-31 23:50:53 +01:00
David Baker
118eec8cc0 Add a fallback home server to log into
If login fail with a credential error on the default HS, try
logging in on the fallback one.
2016-05-27 14:57:43 +01:00
Matthew Hodgson
817a3debec debug HS & IS 2016-05-18 11:42:51 +01:00
Matthew Hodgson
1459478ee0 use right check for end of timeline
and avoid bad interactions with forward pagination. thanks @richvdh
2016-05-17 21:32:20 +01:00
Matthew Hodgson
be5f29d03b Merge branch 'develop' into dbkr/scalar 2016-05-17 20:37:16 +01:00
Matthew Hodgson
24adf2847e better comment 2016-05-17 20:32:38 +01:00
Matthew Hodgson
7879be1704 implement basic local echo for resetting unread message count when opening a room without a scroll offset. hopefully largely fixes https://github.com/vector-im/vector-web/issues/967 2016-05-17 20:28:11 +01:00
Matthew Hodgson
fd09d5c570 switch badge count to per-conversation, and add per-room badges 2016-05-17 11:14:12 +01:00
David Baker
ffe892b4b1 Merge remote-tracking branch 'origin/develop' into dbkr/scalar 2016-05-17 10:30:32 +01:00
Matthew Hodgson
62a1100fca Merge pull request #289 from matrix-org/dbkr/email_notifs
Support for enabling email notifications
2016-05-10 16:39:37 +02:00
David Baker
6da4b9d671 Add suport for showing the scalar UI 2016-05-06 14:19:56 +01:00
Matthew Hodgson
b86af8939a fix usersettings cancel fail on new accounts 2016-05-05 15:30:56 +01:00
David Baker
fab7111fd7 Merge remote-tracking branch 'origin/develop' into dbkr/email_notifs 2016-04-29 11:09:02 +01:00
Richard van der Hoff
ca0c697b6e Avoid rerendering during Room unmount
might speed up room changing by a few milliseconds
2016-04-22 17:06:53 +01:00
Richard van der Hoff
0fd0b0c5f3 Whitespace fixes
Fix some trailing whitespace
2016-04-22 17:05:48 +01:00
David Baker
c3365f993b Merge remote-tracking branch 'origin/develop' into dbkr/email_notifs 2016-04-22 16:25:09 +01:00
Richard van der Hoff
afb301ffb7 Reduce timeline limit to 250 events
... maybe this will help improve responsiveness in firefox.
2016-04-22 11:08:39 +01:00
Richard van der Hoff
30f273c611 Merge pull request #283 from matrix-org/rav/issue_1427
Fix bug which stopped us scrolling down after we scrolled up
2016-04-21 14:26:42 +01:00
Richard van der Hoff
2f435f4836 Fix bug which stopped us scrolling down after we scrolled up
Make sure that, if we scroll up enough to move the timelinewindow away from the
end of the timeline, we reset the canForwardPaginate flag.
2016-04-21 14:20:12 +01:00
David Baker
3381e2b057 Merge remote-tracking branch 'origin/develop' into dbkr/email_notifs 2016-04-21 10:12:27 +01:00
Richard van der Hoff
fa34dee091 Rewrite Read-receipt animation
... hopefully fixing https://github.com/vector-im/vector-web/issues/1437 in the
process.

The idea here is that, when we remove a read-receipt from the DOM, we stash its
position in a map. Then, when the read-receipt appears again attached to
another event, we know where to start the transition.
2016-04-20 23:06:53 +01:00
Richard van der Hoff
d953ac4e6b Don't relayout scrollpanels every time something changes
Gemini's habit of reflowing everything everytime anything changes at all makes
for an unresponsive app. Turn it off everywhere we use gemini.
2016-04-20 12:25:19 +01:00
Richard van der Hoff
86a5e1f38d Reduce number of renders on received events
TimelinePanel rerenders are expensive, so we want to do as few as possible. So,
when we get a new timeline event, make sure that we update the RM and add the
new event at the same time.
2016-04-19 23:45:51 +01:00
Richard van der Hoff
568e7aef8b Avoid rerendering EventTiles when not necessary
Each individual eventtile isn't particularly expensive, but when you have 500
of them, they start adding up. Shuffle some of the stuff into MessagePanel, so
that we can shouldComponentUpdate EventTiles properly.
2016-04-19 19:41:43 +01:00
Richard van der Hoff
a6bcbd4f61 Speed up processing of TimelinePanel updates on new events
Avoid twiddling state flags, so that we can avoid redundant re-renders.
2016-04-19 18:29:25 +01:00
Matthew Hodgson
eeb9abdf81 trailing whitespace 2016-04-18 01:34:45 +01:00
Matthew Hodgson
8db14bde60 switch Tinter from using dispatch to a synchronous update when changing the colourscheme, to avoid CSS getting out of sync with SVG colours 2016-04-16 01:00:10 +01:00
Matthew Hodgson
19770563f4 add cancelButton to simpleHeader 2016-04-15 22:16:19 +01:00
Matthew Hodgson
009781dac7 prep for RightPanel full collapse 2016-04-15 18:45:40 +01:00
Matthew Hodgson
f625e2d693 fix up UserSettings a bit and add fading 2016-04-15 18:30:13 +01:00
Matthew Hodgson
0741e8a5c1 fix testing UI hack 2016-04-14 19:11:20 +01:00
Richard van der Hoff
85277a237a Merge pull request #270 from matrix-org/rav/issue_1314_federated_rooms
RoomView: Handle joining federated rooms
2016-04-13 16:36:46 +01:00
Matthew Hodgson
1e294cb10c fix 'mark all read' 2016-04-13 12:46:36 +01:00
Richard van der Hoff
ec5ca1ca28 s/roomAlias/roomAddress/ to reduce confusion 2016-04-13 12:26:40 +01:00
Matthew Hodgson
6509bc0589 oops, missed another fade 2016-04-13 11:17:09 +01:00
Matthew Hodgson
ead5418214 oops, missed a fade 2016-04-13 11:17:09 +01:00
Richard van der Hoff
047524d093 Merge pull request #269 from matrix-org/rav/stop_client_on_unmount
Stop the MatrixClient when the MatrixChat is unmounted
2016-04-13 11:05:02 +01:00
Richard van der Hoff
93a142480c RoomView: Handle joining federated rooms
This hopefully fixes an issue where joining a federated room via the directory
would get stuck at a spinner of doom, due to us not recognising the room in
question when it came down the /sync. We now catch the room id in the response
from the /join, and use it to match up the room in onRoom.

props.roomAlias, props.roomId, and state.room.roomId were somewhat confusing,
so I've tried to rationalise them:

 * props.roomAlias (named thus to stop you assuming it's a room id) is the
   thing that the parent component uses to identify the room of interest, and
   can be either an ID or an alias (ie, it replaces props.roomId and
   props.roomAlias)

 * Everything that needs a room ID now has to get it from state.room.roomId.
2016-04-13 08:59:28 +01:00
Richard van der Hoff
1361333fdc Stop the MatrixClient when the MatrixChat is unmounted
The MatrixClient never gets unmounted in the real app, but I've been working on
some tests which would rather like to be able to create and destroy MatrixChats
and not have the clients hang around forever.
2016-04-12 18:38:10 +01:00
Matthew Hodgson
a01e6d46b9 Merge pull request #268 from matrix-org/matthew/fadable
make the UI fadable to help with decluttering
2016-04-12 18:05:10 +01:00
Matthew Hodgson
3a2d5c4ba5 spinner on saving room settings 2016-04-12 18:01:49 +01:00
Matthew Hodgson
11f3d5f993 make the UI fadable to help with decluttering 2016-04-12 17:18:32 +01:00
David Baker
fcab259511 Support for email notifs
Add utility funcs in UserSettingsStore and pass threepids to Notifications so it can do email notif stuff
2016-04-12 16:17:04 +01:00
Matthew Hodgson
38d27cdbb0 improve 'no known servers' error 2016-04-12 13:00:52 +01:00
Matthew Hodgson
f9c7ae1ab9 Merge pull request #260 from matrix-org/matthew/preview_urls
URL previewing support
2016-04-11 23:55:15 +01:00
Matthew Hodgson
8e48bed346 apparently we don't need this. i'm lost now 2016-04-11 17:32:10 +01:00
Richard van der Hoff
e051d1528c Remember to load new timeline events
Fixes a bug where we wouldn't load new timeline events if they arrived when we
were scrolled up (https://github.com/vector-im/vector-web/issues/1367)
2016-04-11 14:05:04 +01:00
Matthew Hodgson
2e772e2f19 fix whitespace on multiupload prompt 2016-04-10 14:02:22 +01:00
Matthew Hodgson
23d6edbf63 forceupdate the whole scrollPanel rather than the geminiPanel at vdh's PR review request 2016-04-08 20:21:27 +01:00
Richard van der Hoff
967528608f Merge pull request #265 from matrix-org/rav/limit_pagination
Stop trying to paginate after we get a failure
2016-04-08 16:00:51 +01:00
Richard van der Hoff
15d0df5d3b Stop trying to paginate after we get a failure
Once TimelineWindow.paginate fails to return any results, set
can*Paginate=false, and use it as a flag to stop us trying to paginate any
further.
2016-04-08 15:05:15 +01:00
Matthew Hodgson
1d8b08040e incorporate PR feedback 2016-04-07 18:58:50 +01:00
Matthew Hodgson
7884c13d0d Merge branch 'develop' into matthew/preview_urls 2016-04-07 17:25:48 +01:00
David Baker
a0c41e2d57 Fix password resetting
Fixes https://github.com/vector-im/vector-web/issues/1349
2016-04-07 12:59:30 +01:00
Richard van der Hoff
b64604964d Fix exception in key handling
Fix a typo introduced in PR #262 which caused scroll keys to throw console
errors.
2016-04-07 12:05:07 +01:00
Richard van der Hoff
8b8ee21765 Catch pageup/down and ctrl-home/end at the top level
Make the scroll keys work when the focus is outside the message panel.
2016-04-05 13:40:36 +01:00
Richard van der Hoff
c5c9cad0cb Merge pull request #261 from matrix-org/rav/issue_1151
Fix an issue where the scroll stopped working.
2016-04-05 12:55:59 +01:00
Richard van der Hoff
0d7adae100 Back out animation timing changes for now
... since they seem to be a bit contentious
2016-04-05 10:46:08 +01:00
Richard van der Hoff
51fe77122b Fix an issue where the scroll stopped working.
Under certain conditions, it was possible to get stuck in a state where any
user-initiated scroll would be met with "Working around
vector-im/vector-web#528" and overridden. Fix this by removing the duplication
between _lastSetScroll and recentEventScroll, and using _lastSetScroll which is
more reliable.
2016-04-05 10:41:32 +01:00
Matthew Hodgson
4388334e30 fix up scroll behaviour when loading widgets 2016-04-02 00:36:19 +01:00
Richard van der Hoff
b6e4e9caf3 Fix a bug where we tried to show two ghost read markers at once.
I think this was responsible for the readmarker just disappearing rather than
animating.

While we're here, decrease the delay on the animation, and instead make it take
slightly longer to disappear.
2016-03-31 18:27:46 +01:00
Richard van der Hoff
631183da29 Don't reload the DOM if we can jump straight to the RM
Adds a missing 'return' statement which meant that, even if we already had the
relevant event loaded into the DOM, we would rebuild it when the user clicked
on the "(^) Unread messages" bar.
2016-03-31 00:51:23 +01:00
Matthew Hodgson
182fa22eac Merge pull request #251 from aviraldg/feature-pretty-placeholder
Prettier, animated placeholder :D
2016-03-30 01:27:36 +01:00
Richard van der Hoff
1f2ba87ff5 Pass SimpleRoomHeader title in as a named property
... rather than a child
2016-03-29 23:21:17 +01:00
Richard van der Hoff
6422f7ecc8 Factor out separate RoomNameEditor and RoomTopicEditor components 2016-03-29 15:21:16 +01:00
Richard van der Hoff
70133ae661 Factor out SimpleRoomHeader
Start cleaning up RoomHeader by factoring out a separate SimpleRoomHeader.
2016-03-29 12:51:46 +01:00
Matthew Hodgson
e068a92cde Merge pull request #248 from matrix-org/matthew/fix-image-load-popping
Fix scroll offset popping around during image load by putting explicit height back on images
2016-03-29 00:48:31 +01:00
Aviral Dasgupta
6b10d5f696 Prettier, animated placeholder :D 2016-03-28 19:39:36 +05:30
David Baker
c3dd9a4b17 Unset email pending state on error or we never remove the spinner 2016-03-24 15:03:44 +00:00
Matthew Hodgson
8b67a1059d oops, forgot a sync dispatch on onSearchResultsResize 2016-03-24 02:14:16 +00:00
Matthew Hodgson
5bd0303dda make it work, seemingly 2016-03-24 01:12:51 +00:00
Matthew Hodgson
151a9994ba WIP fix for image load popping 2016-03-24 00:13:32 +00:00
Matthew Hodgson
1a62369a01 prioritise new version bar 2016-03-23 18:05:47 +00:00
Richard van der Hoff
9f05249d9c Disable scrollpanel debug
... so that I can (re-)release
2016-03-23 14:53:38 +00:00
David Baker
d6218ca153 Actually calling functions often helps. 2016-03-23 12:02:26 +00:00
Richard van der Hoff
422a1f01a4 Limit check on scrollNode.scrollTop to keep firefox happy
Turns out that Firefox ignores attempts to set scrollTop to
Number.MAX_VALUE. Clip it to scrollHeight.
2016-03-23 10:51:07 +00:00
Richard van der Hoff
cf17258a6c Merge pull request #246 from matrix-org/rav/read_marker_off_by_one
Fix off-by-one error in read-marker advancing
2016-03-23 10:23:19 +00:00
Richard van der Hoff
04c9924ad6 Fix off-by-one error in read-marker advancing
The fix to https://github.com/vector-im/vector-web/issues/1241 introduced an
off-by-one error which meant we would show the RM before the last event in a
room. We were actually winding the RM back one if the last message wasn't sent
by us.
2016-03-23 09:49:31 +00:00
Richard van der Hoff
4fd49976ae Another go at fixing the jumpy scroll
The most recent problem was that we were setting _lastSetScroll whenever we
wrote to scrollTop (and ignoring the next scroll event which matched that
offset), but if there was no change to scrollTop, we wouldn't actually get a
scroll event, so would ignore some future scroll event instead.

Make sure that we only set _lastSetScroll if there's a change to scrollTop.

(Fixes https://github.com/vector-im/vector-web/issues/1162, more)
2016-03-22 19:33:02 +00:00
Matthew Hodgson
2403eca6af profoundly evil ugly hack to workaround amandine's invite focus issues on her note-to-self rooms 2016-03-22 17:47:52 +00:00
Richard van der Hoff
7fb5736e52 Merge pull request #244 from matrix-org/rav/no_rm_on_my_events
Move read-marker past our own events when we switch to a room
2016-03-22 17:44:02 +00:00
David Baker
abe4df5f1c Merge pull request #243 from matrix-org/dbkr/error_messages
Add better user-facing error messages
2016-03-22 17:41:00 +00:00
David Baker
87d853d56b If we don't get a specific event because of permissions, say so 2016-03-22 17:33:46 +00:00
Richard van der Hoff
3736fcf80e Move read-marker past our own events when we switch to a room
This fixes an issue where the RM appeared before any events which were pending
when you switched away from that room
(https://github.com/vector-im/vector-web/issues/1241).

Also, fix a buglet in the MessagePanel which meant we didn't animate the
disappearance of a RM when it stayed at the same event but became
invisible. This didn't really cause any user-visible problems (because
typically we advance the RM at the same time as it became invisible), but
confused me a bit while I was trying to debug this.
2016-03-22 17:23:23 +00:00
Richard van der Hoff
c1101d978e Turn on scroll debug again 2016-03-22 15:37:08 +00:00
David Baker
7caad2a434 More user-facing error message for event-not-found 2016-03-22 14:22:16 +00:00
David Baker
f1219a6b8d Register prompt for trying to set an avatar 2016-03-22 13:50:27 +00:00
David Baker
13f31b2a5d Add error message for failing to join a room as a guest (which may or may not be because we're a guest: we can't tell) 2016-03-22 13:47:29 +00:00
David Baker
30b76d372c Error messages for guests creating rooms 2016-03-22 12:58:12 +00:00
Richard van der Hoff
2ac88a3d89 Make the read-marker less annoying
We considered the user active if there had been a user_activity event within
the last 500ms, but those events were only raised every 500ms, so it was
possible that we would be considered inactive immediately. Use
UserActivity.userCurrentlyActive() instead, which fixes this.

Also increase CURRENTLY_ACTIVE_THRESHOLD_MS to 2 seconds.
2016-03-22 12:15:17 +00:00
Richard van der Hoff
b9d3047a93 Disable scrollpanel debug
... now that https://github.com/vector-im/vector-web/issues/1162 is hopefully
fixed
2016-03-22 11:58:17 +00:00
Richard van der Hoff
c31fbf1214 Merge pull request #236 from matrix-org/rav/search_pagination_spinner
Show a spinner when we back-paginate search results
2016-03-22 10:12:51 +00:00
Richard van der Hoff
d000870668 Merge pull request #237 from matrix-org/rav/scroll_jump
Only ignore scroll echoes once
2016-03-22 10:12:23 +00:00
Richard van der Hoff
74b45475be Merge pull request #238 from matrix-org/rav/cancel_sending
Add 'cancel all' option to 'unsent messages' bar
2016-03-22 10:12:11 +00:00
Richard van der Hoff
d67c64c7a6 Show an error when a direct-to-event link fails
If the /context request fails, pop up a modal dialog to tell the user about
it.
2016-03-21 17:29:33 +00:00
Richard van der Hoff
75f8765f88 Add 'cancel all' option to 'unsent messages' bar
Also, make sure we hide said bar when unsent messages are cancelled.
2016-03-21 16:49:07 +00:00
Matthew Hodgson
11be2e1cad Merge pull request #234 from matrix-org/matthew/stop-peeking
if we're not peeking in a room, stop any ongoing peeking
2016-03-21 16:17:00 +00:00
Richard van der Hoff
c89906e571 Only ignore scroll echoes once
When the user scrolls up, and scrolls back to where they were, we want to save
the final scroll state. We were ignoring it because it looked the same as the
last autoscroll.

Fixes https://github.com/vector-im/vector-web/issues/1162
2016-03-21 14:48:17 +00:00
Richard van der Hoff
c1fa89972a Show a spinner when we back-paginate search results
Hook into the existing searchInProgress state to show a spinner when we
back-paginate search.
2016-03-20 23:51:43 +00:00
Matthew Hodgson
bbd57f2bdf when starting chat from memberinfo, allow guest access. in future synapse should make guest_access a default for the private_chat preset. 2016-03-20 12:39:49 +00:00
Richard van der Hoff
7712582c29 Renable debug in ScrollPanel
... after matthew disabled it by accident
2016-03-19 20:42:30 +00:00
Matthew Hodgson
bfbb7a661e special case to include kicked rooms as per https://github.com/vector-im/vector-web/issues/308 2016-03-18 19:45:04 +00:00
Matthew Hodgson
24972a8267 if we're not peeking in a room, stop any ongoing peeking 2016-03-18 19:23:30 +00:00
Matthew Hodgson
d0ecd38927 top-align search results 2016-03-18 16:25:11 +00:00
Richard van der Hoff
15c9ad87a1 Merge pull request #231 from matrix-org/rav/pending_event_list
Use new pendingEventList functionality from matrix-js-sdk
2016-03-18 16:17:56 +00:00
David Baker
eb5aa7ed7d Move comment 2016-03-18 16:06:36 +00:00
David Baker
b4dd7ba509 I mean string, object 2016-03-18 16:04:58 +00:00
David Baker
3e915cf0e2 Merge remote-tracking branch 'origin/develop' into dbkr/show_invited_email 2016-03-18 15:34:15 +00:00
Matthew Hodgson
deaa5c350a Remove unnecessary Modal.createDialogWithElement, complete with its broken onFinished() support. Switch SetDisplayNameDialog to use Modal.createDialog(). Explicitly pass false to closeDialog if the user tries to cancel dialogs by clicking on the background, rather than passing in an event object which evaluates to true. 2016-03-18 11:15:06 +00:00
Matthew Hodgson
d0d22136f5 remove totally dead wood from stale Modal API 2016-03-18 11:12:06 +00:00
Richard van der Hoff
b93af2d536 Use new pendingEventList functionality from matrix-js-sdk
Update react-sdk to use `pendingEventOrdering`==`detached` instead of
`end`. Look for pending events in the pendingEvent list, and use
MatrixClient.cancelPendingEvent to, uh, cancel pending events.
2016-03-17 22:26:06 +00:00
Matthew Hodgson
e55a375d6f improve RoomPreviewBar as per https://github.com/vector-im/vector-web/issues/761 2016-03-17 19:19:05 +00:00
David Baker
f1844a99e7 WIP on fixing https://github.com/vector-im/vector-web/issues/924
Pass the invited email through to RoomPreviewBar, display it in a temporary way currently.

Remove a condition from RoomView render that appears to be functionally identical to the previous.
2016-03-17 18:38:25 +00:00
Richard van der Hoff
d1dbce8adf Enable debug in ScrollPanel for now
... in an attempt to debug some of the recent scroll problems
2016-03-17 17:48:19 +00:00
Matthew Hodgson
a13513935b only show '...' when people are typing 2016-03-17 15:02:07 +00:00
Matthew Hodgson
9dcdf0ae51 Merge pull request #227 from matrix-org/matthew/fix-notif-spam
Correctly fix notif spam after logout/login
2016-03-17 14:37:01 +00:00
Matthew Hodgson
c51dac2f29 Merge pull request #226 from matrix-org/matthew/fix-last-active
fix last_active_ago timestamps, tab completion ordering, and implement currently_active semantics
2016-03-17 14:36:52 +00:00
David Baker
b960d1d462 Make getCurrent[H|I]SUrl honour the state setting that comes from the url bar.
Fixes @ara4n's later bug in https://github.com/vector-im/vector-web/issues/1027
2016-03-17 11:33:25 +00:00
Matthew Hodgson
08618f6ad5 remove start_login_from_guest and instead make logout able to preserve guestCreds 2016-03-17 02:09:49 +00:00
Matthew Hodgson
50e33d30b6 never try to tab-complete yourself, doofus 2016-03-16 23:35:01 +00:00
Matthew Hodgson
bb918f198b don't let uses change HS/IS URL in the middle of registration - fixes https://github.com/vector-im/vector-web/issues/1176 2016-03-16 19:14:28 +00:00
Matthew Hodgson
74acc0b564 keep the existing colour scheme 2016-03-16 18:58:04 +00:00
Matthew Hodgson
6016ba70d9 Merge pull request #221 from aviraldg/feature-sync-status
Display sync status in favicon and title.
2016-03-16 18:56:57 +00:00
Matthew Hodgson
74aad34dfb Merge pull request #220 from matrix-org/matthew/cancellable-upgrade
allow registration and login from guest to be cancellable
2016-03-16 14:38:00 +00:00
Matthew Hodgson
90aa4223f2 merge develop 2016-03-16 14:37:12 +00:00
Matthew Hodgson
b58a1707cb Merge pull request #219 from matrix-org/matthew/fix-guest-upgrade
let registering guests either upgrade or create a new account by spec…
2016-03-16 11:58:44 +00:00
Matthew Hodgson
b457a4e4a2 improve semantics for when the 'return to app' prompt is shown 2016-03-16 11:48:32 +00:00
Matthew Hodgson
795435b1ce DOH 2016-03-16 10:33:20 +00:00
Aviral Dasgupta
b47ea1ca4b Color for sync status, less scary message 2016-03-16 06:32:49 +05:30
Aviral Dasgupta
47c3419c0e Display sync status in favicon and title
Signed-off-by: Aviral Dasgupta <me@aviraldg.com>
2016-03-16 05:31:50 +05:30
Matthew Hodgson
d8af6ec240 hide 3PID settings from guests 2016-03-15 23:57:42 +00:00
Matthew Hodgson
25bf4030de stop guests from setting avatars 2016-03-15 23:55:59 +00:00
Matthew Hodgson
5f68f1313b show warning if guest login disabled 2016-03-15 23:01:59 +00:00
Matthew Hodgson
bae23c78de fix https://github.com/vector-im/vector-web/issues/1040 and https://github.com/vector-im/vector-web/issues/833 2016-03-15 22:42:22 +00:00
Matthew Hodgson
2bedece9a1 argh, remove debugging 2016-03-15 22:15:04 +00:00
Matthew Hodgson
b7726d34d5 allow registration and login from guest to be cancellable 2016-03-15 21:04:11 +00:00
Matthew Hodgson
f66dd69710 oops, revert - do this on the right branch... 2016-03-15 18:40:03 +00:00
Matthew Hodgson
b23cad5613 let registering guests either upgrade or create a new account by specifying a new username. fixes https://github.com/vector-im/vector-web/issues/1161 2016-03-15 18:36:13 +00:00
Matthew Hodgson
f70eec62d1 let registering guests either upgrade or create a new account by specifying a new username. fixes https://github.com/vector-im/vector-web/issues/1161 2016-03-15 18:35:09 +00:00
Matthew Hodgson
672a5cb89c Merge pull request #200 from matrix-org/matthew/loginfixes
Bring back lost functionality on login/register/password-reset screens
2016-03-15 15:21:32 +00:00
David Baker
836f7ca80d Merge pull request #218 from matrix-org/session_logged_out
Handle the new Session.logged_out event.
2016-03-15 14:51:50 +00:00
Matthew Hodgson
438558da55 PR feedback 2016-03-15 13:48:46 +00:00
Matthew Hodgson
1a74b0c487 Merge pull request #216 from matrix-org/matthew/fix-join-by-room-alias
hopefully fix https://github.com/vector-im/vector-web/issues/819
2016-03-15 13:16:51 +00:00
David Baker
a1b875bb25 Handle the new Session.logged_out event. Log the user out and display a message telling them they've been logged out.
Requires https://github.com/matrix-org/matrix-js-sdk/pull/100 (but safe without)
Fixes https://github.com/vector-im/vector-web/issues/414
2016-03-15 10:48:16 +00:00
Matthew Hodgson
5e050c6276 hopefully fix https://github.com/vector-im/vector-web/issues/819 2016-03-15 00:49:44 +00:00
Matthew Hodgson
79eb54058f oops, backout WIP 2016-03-15 00:48:19 +00:00
Matthew Hodgson
005ebbd037 stop avatar mxids being copy-pastable (unless they contain an initial). should significantly improve https://github.com/vector-im/vector-web/issues/893 2016-03-15 00:21:05 +00:00
Richard van der Hoff
ce150646e6 Merge branch 'develop' into rav/fix_scroll_on_resize 2016-03-14 22:32:54 +00:00
Richard van der Hoff
3173898bc1 Bump the timeline limit to 500
... so that matthew can ctrl-f
2016-03-14 15:47:09 +00:00
Richard van der Hoff
61cd66304e Adjust the scroll position when the gemini panel is resized
Make sure we restore the scroll state of the message panel when it is resized
2016-03-14 15:29:29 +00:00
Richard van der Hoff
8a4a810d1f Merge pull request #214 from matrix-org/rav/gemini-resize
Use our fork of react-gemini-scrollbar to fix resize issues
2016-03-14 13:59:11 +00:00
Richard van der Hoff
74bbb81532 Merge pull request #212 from matrix-org/rav/fix_search_position
Put direct-linked events and search clickthroughs in the middle
2016-03-14 12:49:21 +00:00
Richard van der Hoff
88b3f2ed8c Use our fork of react-gemini-scrollbar to fix resize issues
Rather than telling react-gemini-scrollbar to update every time something that
changes its size happens, try out our fork of it which uses some hackery to
listen for resizes.
2016-03-14 12:46:13 +00:00
Matthew Hodgson
893e338917 incorporate keganfeedback 2016-03-12 19:49:54 +00:00
David Baker
1516f17af4 Merge pull request #210 from matrix-org/dbkr/invite_display_when_peekable
Show the invite preview bar when we have a 3pid invite
2016-03-11 10:21:04 +00:00
David Baker
15170f8718 Comment how we're not rejecting 3pid invites 2016-03-11 10:20:52 +00:00
Richard van der Hoff
3fd066c2d4 Put direct-linked events and search clickthroughs in the middle
We need two modes of operation for ScrollPanel.scrollToToken:

For jump-to-read-marker, we want it 1/3 of the way down the screen.
For search clickthrough, and hyperlinked events, we want put the event in the
*middle* of the screen.

Fixes https://github.com/vector-im/vector-web/issues/1032
2016-03-10 17:27:46 +00:00
David Baker
2875fa3eb1 Show the invite preview bar when we have a 3pid invite, and make the reject button work. 2016-03-10 15:56:58 +00:00
Richard van der Hoff
f9e753f57a Update the gemini panel when we show/hide the TopUnreadMessagesBar
Showing/hiding the TopUnreadMessagesBar resizes the scrollpanel. Make sure that
we update the gemini panel when this happens.

(Fixes an intermittent bug wherein we could get stuck with a 'scroll to bottom'
indicator after jumping to the bottom, with unread messages in the view)
2016-03-10 15:55:03 +00:00
Richard van der Hoff
7660276b54 Merge pull request #209 from matrix-org/rav/local_echoes_are_today
Use 'today' for the date separator for unsent messages
2016-03-10 14:34:18 +00:00
Richard van der Hoff
928b2bb9a7 Use 'today' for the date separator for unsent messages
Fixes https://github.com/vector-im/vector-web/issues/1087, though we'll still
have problems if the unsent messages get out of order.
2016-03-10 14:16:31 +00:00
Richard van der Hoff
3bd33d0985 Fix the missing date separator at the start of rooms
When we first hit the start of the room, we still have a pagination token, so
we hide the date separator. When we try to backpaginate again, we get an empty
result, and the pagination token is cleared.

Make sure that we update state. canBackPaginate even when there are no new
results, to handle this case.

Fixes https://github.com/vector-im/vector-web/issues/1014
2016-03-10 13:42:46 +00:00
Richard van der Hoff
ec2e27a754 Merge pull request #205 from matrix-org/rav/shouldComponentUpdates_2
Re-introduce shouldComponentUpdate methods in RoomView and TimelinePanel
2016-03-09 17:25:11 +00:00
Richard van der Hoff
aabdaa737e Merge pull request #204 from matrix-org/rav/jump_to_read_marker_fix
Make jump-to-read-marker work when the RM event isn't loaded.
2016-03-09 16:12:16 +00:00
Richard van der Hoff
4b333d2363 Update the timeline when a local echo arrives 2016-03-09 15:56:54 +00:00
Richard van der Hoff
6c928f12b2 ForceUpdate the scrollpanel when the aux panel changes size
Catch some more cases when we ought to be updating the gemini scroll stuff.
2016-03-09 15:56:54 +00:00
Richard van der Hoff
393e8ff612 Revert "Revert "Merge pull request #193 from matrix-org/rav/shouldComponentUpdates""
Put the shouldComponentUpdate methods back in, now that Matthew has stopped
demoing.

This reverts commit 606fdcb8df.
2016-03-09 15:56:53 +00:00
Richard van der Hoff
a9da0a014e Merge pull request #203 from matrix-org/rav/optimize_resize
Don't forceUpdate the message panel on resize
2016-03-09 15:55:33 +00:00
Richard van der Hoff
1a371b346e remove spurious debug 2016-03-09 15:51:17 +00:00
David Baker
d54ee4f247 Merge pull request #201 from matrix-org/dbkr/reuse_guest_account
Use the guest access tokens sent in 3pid invite emails.
2016-03-09 15:49:30 +00:00
Richard van der Hoff
b45c256427 Don't forceUpdate the message panel on resize
We don't really need to forceUpdate() the entire timeline panel every time
something might resize it. It is sufficient to forceUpdate the ScrollPanel.
2016-03-09 15:40:19 +00:00
Richard van der Hoff
f60ac2aa5f Make jump-to-read-marker work when the RM event isn't loaded.
If the event corresponding to the read-up-to mark hasn't been loaded into the
timeline window, we can't simply scroll to it. Instead, reload the timeline,
centered on the RM event.

Fixes https://github.com/vector-im/vector-web/issues/1055
2016-03-09 07:54:49 +00:00
Richard van der Hoff
6e23623c28 Fix checkScroll after image load
Make the onImageLoad handler call checkScroll on the right thing. This was
originally done in commit 99d2392, but got broken in the Great RoomView
Refactor of February 2016.
2016-03-07 22:23:14 +00:00
Richard van der Hoff
606fdcb8df Revert "Merge pull request #193 from matrix-org/rav/shouldComponentUpdates"
This reverts commit a7c75b1315, reversing
changes made to b66ca74ede.

This is causing breakage in the messagepanel screen resize after video call and
room settings
2016-03-07 17:28:50 +00:00
David Baker
42a90f49c2 Use the guest access tokens sent in 3pid invite emails. 2016-03-07 17:11:01 +00:00
David Baker
a2c6bd0e6c Merge pull request #199 from mebjas/develop
fixed issue vector-im/vector-web 1079
2016-03-07 16:15:45 +00:00
Minhaz A V
7e7493b336 removed typeof and todo
Signed-off-by: Minhaz A V <minhazav@gmail.com>
2016-03-07 21:16:35 +05:30
Richard van der Hoff
a7c75b1315 Merge pull request #193 from matrix-org/rav/shouldComponentUpdates
Add shouldComponentUpdate() methods to RoomView and TimelinePanel
2016-03-07 11:50:38 +00:00
Matthew Hodgson
0bb58dd60c brings back the functionality in login/register/screens that got lost in @kegsay's refactor. specifically:
1) custom HS/IS urls are now persisted in HTML5 local storage.  As a result, all the login components now distinguish between default HS/IS URLs and custom specified ones again. (
2) custom HS/IS urls are synchronised between the instances of ServerConfig found in the Login, Registration and Forgot Password screens.
3) username are persisted over changing homeserver (but not password, to stop accidentally leaking passwords to the wrong server)
4) correctly interpret a blank URL field as meaning the placeholder text
5) when toggling custom URLs on and off, remember what the custom values were, and use the default URLs if custom mode is not engaged

also, guest access now upholds custom HS/IS URLs found in local storage rather than being limited to the server config ()

also adds assorted comments and improved console debug and a few minor cosmetic changes to the login components.

this commit sponsored by VS27...
2016-03-06 14:33:36 -05:00
Minhaz A V
3c1312a9e6 fixed issue vector-im/vector-web 1079 2016-03-05 23:36:24 +05:30
Richard van der Hoff
7820a5d900 Merge pull request #189 from matrix-org/rav/fix_timeline_react_keys
Flatten arrays of components before adding to messagepanel li
2016-03-04 17:56:18 +00:00
Richard van der Hoff
318bcb1284 Merge pull request #192 from matrix-org/rav/fix_read_receipts
Make sure we update the timelinepanel when a read-receipt arrives
2016-03-04 17:55:29 +00:00
Richard van der Hoff
1738fab2ee Merge pull request #190 from matrix-org/rav/reduce_timeline_limit
Reduce the number of messages we show in the DOM to 250
2016-03-04 17:54:59 +00:00
David Baker
66bed45e67 Merge pull request #195 from matrix-org/dbkr/reenable_upgrade_registration
Re-enable upgrade registration.
2016-03-04 17:54:50 +00:00
David Baker
068429f3e3 Tidy up starting from a room alias when not logged in. 2016-03-04 17:37:06 +00:00
David Baker
4da0e2fd95 Re-enable upgrade registration.
Revert https://github.com/vector-im/vector-web/issues/818 now that https://github.com/vector-im/vector-web/issues/759 is fixed.
2016-03-04 15:41:32 +00:00
Richard van der Hoff
bc5ae6a6ad Add shouldComponentUpdate() methods to RoomView and TimelinePanel
This will avoid re-rendering the whole RoomView every time we get a scroll
event, and might even help with https://github.com/vector-im/vector-web/issues/1056.
2016-03-04 14:51:55 +00:00
Richard van der Hoff
31df97e486 Make sure we update the timelinepanel when a read-receipt arrives
Fixes https://github.com/vector-im/vector-web/issues/1094
2016-03-04 14:47:11 +00:00
Richard van der Hoff
c14b62ee64 Reduce the number of messages we show in the DOM to 250
... as per https://github.com/vector-im/vector-web/issues/1077
2016-03-04 14:07:18 +00:00
Richard van der Hoff
6e86d7553f Flatten arrays of components before adding to messagepanel li
Avoid updating the whole DOM when we paginating by making sure the keys are
right
2016-03-04 13:49:15 +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
c585b3edee anothert stray room_ 2016-03-02 14:31:01 +00:00
David Baker
de2eaa3078 Document inviterName 2016-03-02 14:04:51 +00:00
David Baker
5827a883bf This should be just oob_data too 2016-03-02 14:02:36 +00:00
David Baker
4184158a9a Make comment match reality, attempt 2. 2016-03-02 14:01:21 +00:00
David Baker
6319c85272 Make comment match reality 2016-03-02 13:59:55 +00:00
David Baker
5bd2316e7f Oops, it's just oob_data here 2016-03-02 13:58:52 +00:00
David Baker
acb5f5d69b This should be props, not state 2016-03-02 11:56:18 +00:00
David Baker
7ae2c5b11b Document fields of oob_data 2016-03-02 11:51:47 +00:00