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
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
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