Commit graph

1016 commits

Author SHA1 Message Date
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
5706a879d0 Hack around absence of String.codePointAt on PhantomJS
I've been trying to get some tests working under PhantomJS, which appears not
to support String.codePointAt (which is, to be fair, an ES6 addition). For our
limited usecase, it's easier to implement the functionality from first
principles than to try to polyfill support.
2016-04-13 10:35:07 +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
Matthew Hodgson
f3793b556e fix super-annoying key warning from react 2016-04-13 02:02:55 +01:00
Matthew Hodgson
92f58b6927 don't try to do preview URLs of matrix IDs (yet :D) 2016-04-13 01:54:06 +01:00
Matthew Hodgson
4b1ff51a42 show a spinner on MemberInfo when updating a member. and label 'disinvite' correctly 2016-04-13 01:46:10 +01:00
Matthew Hodgson
bfec6d4ed9 merge aviral's audio player 2016-04-13 00:00:24 +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
6a6739e0f3 fix context menu on tiles without widgets 2016-04-12 18:32:55 +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
1d5f234f2c add 'mark all read' button 2016-04-12 14:29:36 +01:00
Matthew Hodgson
089963b4c7 timestamps are permalinks 2016-04-12 13:33:59 +01:00
Matthew Hodgson
38d27cdbb0 improve 'no known servers' error 2016-04-12 13:00:52 +01:00
Matthew Hodgson
f9785f68af filter out conference bots from membership list 2016-04-12 01:54:51 +01:00
Matthew Hodgson
bf1e0da598 fix ability to save room settings if you don't have ops 2016-04-12 01:27:12 +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
9845e5ef0e move all the localstorage crap to TextualBody 2016-04-11 23:53:36 +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
6c372d37f7 add the concept of eventTileOps for managing widget visibility based on vdh's PR feedback 2016-04-08 21:42:29 +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
Matthew Hodgson
4abc5d0d36 add comment 2016-04-08 20:21:12 +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
6a82d1a94c Merge pull request #254 from matrix-org/rav/fix_rm_animation
Fix a bug where we tried to show two ghost read markers at once.
2016-04-05 12:55:38 +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
1de4e0d2dd label previews with the target URL if all else fails 2016-04-04 01:06:54 +01:00
Matthew Hodgson
96b0f42db2 support lightboxes for image previews 2016-04-04 00:18:18 +01:00
Matthew Hodgson
0eb7b627fc ugly impl to track whether to hide the widget or not 2016-04-03 23:30:48 +01:00
Matthew Hodgson
e61c99f7f3 support cancelling previews 2016-04-03 02:50:36 +01:00
Matthew Hodgson
f9c914c40e specify timestamps for historical previews 2016-04-03 01:21:56 +01:00
Matthew Hodgson
f195d2eb24 Merge branch 'develop' into matthew/preview_urls 2016-04-03 01:10:33 +01:00
Matthew Hodgson
2d289b321d Merge branch 'develop' into matthew/preview_urls 2016-04-03 01:09:50 +01:00
Matthew Hodgson
2d3a237101 Merge pull request #258 from aviraldg/fix-219
File upload improvements
2016-04-02 23:07:50 +01:00
Aviral Dasgupta
0574a28e36 Add confirmation dialog for file upload
fixes vector-im/vector-web#92
2016-04-03 02:22:05 +05:30
Aviral Dasgupta
0eeaac88b4 Allow multiple files to be uploaded at once
fixes vector-im/vector-web#219
2016-04-03 01:26:50 +05:30
Aviral Dasgupta
31e09ebe63 Show full-size avatar on MemberInfo avatar click
fixes vector-im/vector-web#65
2016-04-03 00:54:23 +05:30
Matthew Hodgson
bffb482133 add FIXME 2016-04-02 02:46:19 +01:00
Matthew Hodgson
4388334e30 fix up scroll behaviour when loading widgets 2016-04-02 00:36:19 +01:00
Matthew Hodgson
62d04c38ef fix typo and add linkify descriptions 2016-04-01 02:23:29 +01:00
Matthew Hodgson
4d959fc33b improve layout and make thumbnails work 2016-04-01 02:16:11 +01:00
Matthew Hodgson
e6842eab94 WIP url previewing 2016-03-31 18:38:01 +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
Matthew Hodgson
f6f86958f5 tweak room settings wording 2016-03-31 14:20:50 +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
4380308393 my node choked on this trailing , 2016-03-30 01:31:29 +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
49e75b7430 Merge pull request #252 from matrix-org/rav/RoomHeader
Refactor RoomHeader, and fix topic updates
2016-03-29 23:25:54 +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
0d261c37c2 Update room header when room state changes
Force an update so that we see the latest state.

Fixes https://github.com/vector-im/vector-web/issues/1299
2016-03-29 16:31:13 +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
abedb05268 Merge pull request #250 from matrix-org/rav/disable_composer_if_no_permission
Disable the message composer if we don't have permission to post
2016-03-29 15:15:58 +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
Matthew Hodgson
0a2678b917 Add warning if fixupHeight fails, and remove overzealous logging 2016-03-29 00:46:51 +01:00
Aviral Dasgupta
6b10d5f696 Prettier, animated placeholder :D 2016-03-28 19:39:36 +05:30
Matthew Hodgson
a3dcd24e4a fix event-recycling bug and mend history viz changes 2016-03-25 01:12:16 +00:00
Richard van der Hoff
c227b2279b Minor fixes to image sizing
* use string refs instead of callback funcs
* Add a null-guard in case we don't have an image
2016-03-24 16:58:27 +00:00
David Baker
c3dd9a4b17 Unset email pending state on error or we never remove the spinner 2016-03-24 15:03:44 +00:00
Richard van der Hoff
cbf5b0eca3 Disable the message composer if we don't have permission to post
Rehashes dave's earlier PR which did the same thing
2016-03-24 13:57:21 +00:00
Richard van der Hoff
6ff41c40b6 Split a textinput component out of MessageComposer
Split the text entry section out of MessageComposer: it has a lot of stuff
which won't be needed if we disable input
2016-03-24 11:25:41 +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
b81d901919 fix spinner when cancelling start chat from memberinfo 2016-03-23 18:17:49 +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
David Baker
e20c599273 Swap register & cancel buttons for matthew 2016-03-23 11:48:47 +00:00
Matthew Hodgson
c4eabe2eb4 hopefully fix https://github.com/vector-im/vector-web/issues/1242 2016-03-23 11:41:10 +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
Richard van der Hoff
0737d89d57 Merge pull request #242 from matrix-org/rav/read_marker
Make the read-marker less annoying
2016-03-22 17:37:14 +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
David Baker
4e9c37c069 Remove unused prop 2016-03-22 17:23: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
David Baker
7f6eabe657 Fix doc for NeedToRegisterDialog and the place I copied it from 2016-03-22 17:20:22 +00:00
Matthew Hodgson
e23f496dfe fix PowerSelector to support both controlled & uncontrolled variants 2016-03-22 17:17:46 +00:00
David Baker
88aa975271 Sensible error message if we can't invite because we're not allowed 2016-03-22 16:33:39 +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
098f3e6561 Merge remote-tracking branch 'origin/develop' into dbkr/error_messages 2016-03-22 13:54:31 +00:00
David Baker
f1219a6b8d Register prompt for trying to set an avatar 2016-03-22 13:50:27 +00:00
Matthew Hodgson
c60a305284 oops, unbreak tags in roomsettings 2016-03-22 13:47:38 +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
463212fb2a Update error message 2016-03-22 13:19:29 +00:00
David Baker
6dce555865 Sensible error for setting room colours if you're a guest 2016-03-22 13:09:19 +00:00
David Baker
e311a963c1 Merge remote-tracking branch 'origin/develop' into dbkr/error_messages 2016-03-22 12:59:14 +00:00
David Baker
30b76d372c Error messages for guests creating rooms 2016-03-22 12:58:12 +00:00
Matthew Hodgson
385e1ca1fb only let people add aliases if they canSeetAliases 2016-03-22 12:54:08 +00:00
Matthew Hodgson
80416fe583 prettify tag ui 2016-03-22 12:51:11 +00:00
David Baker
45dd192309 Merge remote-tracking branch 'origin/develop' into dbkr/error_messages 2016-03-22 12:48:13 +00:00
Matthew Hodgson
e141a44103 Merge pull request #241 from matrix-org/matthew/room-visibility
rework roomsettings for new visibility UI
2016-03-22 12:30:21 +00:00
Matthew Hodgson
5a2a2c5bdc fix up and factor out mayChangeRoomAccess and fix review feedback 2016-03-22 12:26:38 +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
Matthew Hodgson
df905cfcb7 incorporate PR review, and explicitly spell out if the room has ended up with guest_access=forbidden but join_rules=invite 2016-03-22 12:10:58 +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
David Baker
5f1fabd982 Error message #1: guests can't invite people. Also add a dialog box for telling people they need to register. 2016-03-22 10:57:05 +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
f6862f03ad Merge pull request #239 from matrix-org/rav/context_errors
Show an error when a direct-to-event link fails
2016-03-22 10:11:29 +00:00
Matthew Hodgson
8cfb0e9ef4 rework roomsettings for new visibility UI 2016-03-22 00:57:40 +00:00
Matthew Hodgson
4e97fe982d improve previewbar look & feel 2016-03-21 22:05:59 +00:00
David Baker
3bd93c90b1 Splitting this over two lines confuses the word spacing 2016-03-21 18:15:01 +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
Matthew Hodgson
0a346350e8 warn if you don't specify an email 2016-03-21 01:15:11 +00:00
Matthew Hodgson
5bdcb64464 fix NPE 2016-03-21 00:51:45 +00:00
Matthew Hodgson
59f599af5c prompt before giving equal ops 2016-03-21 00:49:18 +00:00
Matthew Hodgson
31ed7b9dd7 fix state caching bugs in RoomHeader 2016-03-21 00:39:33 +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
eadd2a522f fix room reuse semantics when starting chats 2016-03-20 13:04:03 +00:00
Matthew Hodgson
18fc8fc6c4 s/m.room.join_rule/m.room.join_rules/ 2016-03-20 12:47:38 +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
Matthew Hodgson
68a391e24b implement history visibilty warnings 2016-03-19 22:33:06 +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
a44ebddae0 show default displayname in ChangeDisplayName prompt 2016-03-19 02:45:06 +00:00
Matthew Hodgson
383779f718 oops, actually fix https://github.com/vector-im/vector-web/issues/308 properly... 2016-03-18 20:08:47 +00:00
Matthew Hodgson
cb9da69382 doh 2016-03-18 20:01:19 +00:00
Matthew Hodgson
0250192477 handle tagging for kicked rooms correctly 2016-03-18 19:59:58 +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
86807b631d don't reset RoomHeader every time the props change due to RoomView re-rendering during edits 2016-03-18 19:16:55 +00:00
Matthew Hodgson
12db0d9130 fix NPE on events with no sender object 2016-03-18 16:33:22 +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
076bd720a3 Spell address correctly 2016-03-18 16:07:32 +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