Commit graph

1142 commits

Author SHA1 Message Date
Richard van der Hoff
6e6bcf8b78 Reinstate missing sections from the UserSettings
The 'devices' and 'cryptography' sections got removed from UserSettings by #566.
2016-11-23 11:08:21 +00:00
Luke Barnard
42fc7b1b66 Use UNFILL_REQUEST_DEBOUNCE_MS constant, reset unfillDebouncer timeout reference. 2016-11-22 17:23:06 +00:00
Luke Barnard
d1a5d94916 Make the unpagination process less aggressive
This increases `UNPAGINATION_PADDING` (see the ASCII on ScrollPanel.js, `_getExcessHeight`), and also debounces unfilling requests made for 200ms. This forces unfilling requests not to be sent unless the next 200ms has no scrolling, effectively.
2016-11-22 16:47:56 +00:00
Luke Barnard
341175ea58 Fix pagination issue where recent events are lost (#563)
Fix pagination issue where recent events are lost

Scrolling up a few pages followed by scrolling down to the most recent events previously caused some events to go missing. A test has been modified in conjunction with this fix to make sure that this failure mode is tested for in future. This commit should fix the issue, and the most recent events should be paginated back in.
2016-11-18 11:15:14 +00:00
Luke Barnard
3618b49982 Use new js-sdk public unpaginate 2016-11-16 16:10:23 +00:00
Luke Barnard
beecbc7cd7 Fix join/part collapsing regressions (#553)
* Fix join/part collapsing regressions

* Simplify loop

* Explain e,e

* Explain return null in _renderSummary

* Kill it properly

* Move . to _renderSummary

* Only use the first and last events to decide whether a net change has occured

* Do not sort events by TS before summarising

* fix loop and comment

* remove data-number-events

* Better explanation comment in _renderSummary

* Less tortuous comment
2016-11-16 14:42:30 +00:00
Luke Barnard
b718f1542c Fix infinite loop when there are a lot of invisible events (#554)
Instead of using a window of a fixed number of events, unpaginate based on the distance of the viewport from the end of the scroll range.

The ScrollPanel uses the scrollTokens to convey to its parent (the TimelinePanel, in this case) the point to unpaginate up to. The TimelinePanel then takes a chunk of events off the front or back of `this.state.events` using `timelineWindow.unpaginate`.

Fixes https://github.com/vector-im/vector-web/issues/2020
2016-11-16 14:25:52 +00:00
Matthew Hodgson
a967ddd1cb quick and dirty support for custom welcome pages, with an example for geektime techfest 2016-11-13 14:10:46 +00:00
Luke Barnard
2a1d32f4d5 Add key prop to memberlist summary 2016-11-11 13:49:25 +00:00
Richard van der Hoff
998690431f Merge pull request #542 from matrix-org/dbkr/get_app_version
Fix the vector web version in UserSettings
2016-11-11 11:11:36 +00:00
Richard van der Hoff
00ecff7497 Merge pull request #544 from matrix-org/luke/feature-truncate-m-room-member-events
Truncate consecutive member events
2016-11-11 11:01:47 +00:00
David Baker
857c0d1747 Wrap getAppVersion() in promise
in case it throws
2016-11-11 10:05:53 +00:00
Luke Barnard
3ec7940d12 Inline renderEvents 2016-11-10 17:26:36 +00:00
Luke Barnard
d2d7ebc979 correct comment 2016-11-10 17:22:16 +00:00
Luke Barnard
dcbb31279f Prefer import React, set prevEvent to last MemberhsipChange 2016-11-10 14:08:11 +00:00
Luke Barnard
566034cf2b Render children EventTiles before passing to summary element 2016-11-10 13:25:48 +00:00
Luke Barnard
764959ec1c Comment on i after membershipchanges 2016-11-10 13:14:04 +00:00
Luke Barnard
0ec5eebfc9 Hoist isMembershipChange out of for loop 2016-11-10 13:03:17 +00:00
Luke Barnard
d01bb0b78f Use sdk.getComponent 2016-11-10 13:01:48 +00:00
Luke Barnard
5f0b891d47 Add date seperator to the expanded events
netsplits across midnight is not handled, and @richvdh suggested splitting the list in two
2016-11-09 17:44:43 +00:00
Luke Barnard
04a934f738 Trying to get rid of the date separator problem 2016-11-09 16:24:56 +00:00
Luke Barnard
2f02c4b84e WIP nicer join/part folding 2016-11-09 16:03:35 +00:00
David Baker
a008f5010a Fix the ctrl+e mute camera shortcut
* Fixes the altgr+e shortcut on Windows
   (Fixes https://github.com/vector-im/vector-web/issues/2561)
 * Fixes the shortcuts to be cmd+e on mac rather than ctrl+e
   which is more normal and doesn't clobber ctrl+e which old
   school unix types use for go-to-end-of-line.
2016-11-08 18:04:22 +00:00
Luke Barnard
cd241a4a17 Truncate consecutive member events
This is needed for the IRC bridge to be able to do full membership list syncing without cluttering the message panel.
2016-11-08 16:34:02 +00:00
David Baker
d871ca2b24 PR feedback 2016-11-08 11:43:24 +00:00
David Baker
d44adcb7a9 Fix the vector web version in UserSettings
Add a getAppVersion() function to the platform rather than relying
on the updater code firing an event before we know what the app
version is.
2016-11-08 10:45:19 +00:00
Richard van der Hoff
2ee98e9fdc Fix NPE in LoggedInView
Fixes a NPE displaying the new version bar
(also fix displayname for WithMatrixClient)
2016-11-07 09:28:10 +00:00
David Baker
da10660c86 Merge remote-tracking branch 'origin/develop' into rav/add_client_to_context 2016-11-04 10:35:41 +00:00
Richard van der Hoff
cb5b311e44 Move saveScrollState into RoomView
It fits much more naturally here than in LoggedInView.
2016-11-04 09:28:35 +00:00
Richard van der Hoff
d3f20e1d9d Add the MatrixClient to the react context
Because that's the reacty way
2016-11-03 19:02:27 +00:00
Richard van der Hoff
f85a37c667 Factor out LoggedInView from MatrixChat
The idea here is to make a layer which sits around for as long as we have a
valid MatrixClient. Also it makes a plausible split for the render of
MatrixChat, even if they are much too tightly bound for now.
2016-11-03 18:59:32 +00:00
David Baker
3c4370c180 Move 'new version' support into Platform
Also adds support for the platform providing a changelog
2016-11-02 15:58:17 +00:00
David Baker
f433f9ca32 Move platform-specific functionality into Platform
Platform classes are provided by the application via
PlatformPeg.set().
2016-11-02 15:10:21 +00:00
David Baker
8395717f9b Merge pull request #525 from matrix-org/dbkr/fix_spin_on_join
Fix CPU spin on joining rooms
2016-10-26 15:46:42 +01:00
David Baker
32ebd8083b Stray comma 2016-10-26 15:32:09 +01:00
David Baker
e5a770a373 Don't send read receipt if user has logged out 2016-10-26 13:19:36 +01:00
David Baker
a2eb0a9cf0 Fix CPU spin on joining rooms
Ratelimit roomheader's updates and move some other things into
rate limited functions.
2016-10-26 13:09:53 +01:00
Richard van der Hoff
4f901f1894 Keyboard shortcuts to mute microphone/camera
Same as hangouts: ctrl-d for mute microphone; ctrl-e to mute camera.
2016-10-17 14:13:56 +01:00
David Baker
3f067cbdf6 Give our input fields names
Otherwise browsers' 'Remember Password' feature has to guess
badly and ends up putting the login username / password in the
first two password reset fields which is a bit odd.
2016-10-14 15:34:44 +01:00
David Baker
ef22ba1f39 Merge pull request #516 from matrix-org/rav/interactive_auth_dialog
InteractiveAuthDialog
2016-10-12 18:27:23 +01:00
Richard van der Hoff
1e683427da TODO comments on the registration flow
Add some notes to Signup and the Registration component that it would be nice
to factor out some common code someday.
2016-10-12 14:27:21 +01:00
Richard van der Hoff
eb36509620 Refactor CaptchaForm to put less logic in signupstages
A bunch of work being done in the Recaptcha signupstage makes more sense in
the CaptchaForm; let's move it.
2016-10-11 18:57:51 +01:00
Matthew Hodgson
9d303712f2 more s/Vector/Riot/ 2016-10-03 10:18:43 +01:00
David Baker
91771ec17d Ce n'est pas Python 2016-10-01 10:34:21 +01:00
David Baker
6abf6c9ec0 Merge pull request #505 from matrix-org/dbkr/dont_replacestate
Fix version going blank after logging in
2016-09-30 14:32:01 +01:00
David Baker
be99f17ee0 Oops, right variable 2016-09-30 14:05:01 +01:00
David Baker
8aeb0cfb68 Dedicated function for resetting screen state 2016-09-30 11:56:32 +01:00
David Baker
c41a8da4be Argh, there's more 2016-09-30 11:40:27 +01:00
David Baker
2f7366cb8a Comment state fields 2016-09-30 11:37:50 +01:00
David Baker
d5af2d2c52 Use 'Sign In' / 'Sign Out' universally
Rather than a mix of 'sign in/out' and 'log in/out'
2016-09-29 17:38:52 +01:00
David Baker
8cbddfcf28 Fix version going blank after logging in
Don't use replaceState in MatrixClient: there's lots of stuff in
MatrixClient's state now (including the app version) so replacing
the entire state doesn't really make sense (and also blows away
all of the nice defaults we set in getInitialState). Instead,
setState of the things we actually care about wherever we used
replaceState.

Also add a couple of state variables to getInitialState that were
missing.

Fixes https://github.com/vector-im/vector-web/issues/2322
2016-09-29 17:23:07 +01:00
David Baker
d1a5e54a69 Check if a room looks like a DM rooms on joining
and mark it as one if so.

Also change the heuristic to only count rooms with 2 total members rather than 2 joined members, otherwise this is going to mark any room as a DM if someone creates a room, invites a bunch of people and you happen to be first to join.
2016-09-20 17:59:46 +01:00
David Baker
b66c449bd7 Comment typo
and out comment in more sensible place
2016-09-20 16:08:11 +01:00
David Baker
746aad9a18 Oops, missed one 2016-09-19 14:47:08 +01:00
David Baker
31753fc3f3 Rebrand 2016-09-19 13:26:59 +01:00
Matthew Hodgson
cf1b1442eb no labs for guests 2016-09-17 14:29:40 +01:00
Matthew Hodgson
736b6dac7a default labs correctly :/ 2016-09-17 00:54:56 +01:00
Matthew Hodgson
00d2fd471d Merge pull request #483 from matrix-org/dbkr/scrollpanel_start_at_bottom
Add 'startAtBottom' flag
2016-09-16 22:38:21 +01:00
Matthew Hodgson
c322a191af turn on E2E and Scalar by default 2016-09-16 18:36:03 +01:00
David Baker
d0fd6e985f Document paranoia on the startAtBottom param 2016-09-16 17:48:08 +01:00
Matthew Hodgson
67565f88fa Merge pull request #474 from matrix-org/markjh/olm_version
Add the olm version to the settings page.
2016-09-16 17:30:35 +01:00
David Baker
806ef11fde Add 'startAtBottom' flag
Controls whether a scrollPanel starts off at the bottom.

This may not be necessary and could either be derived from stickyBottom, but
this means I can be sure that the behaviour of ScrollPanel is completely
unchanged for all other uses to avoid breaking any other uses of
ScrollPanel.
2016-09-16 17:18:58 +01:00
David Baker
1341ffca59 Merge pull request #479 from matrix-org/dbkr/directory_network_selector
Pass through config for Room Directory
2016-09-16 17:08:44 +01:00
Matthew Hodgson
a28aab42c4 fix NPE in guest access 2016-09-16 16:45:43 +01:00
Matthew Hodgson
ff00474aa5 show RightPanel when people click on users 2016-09-16 02:37:06 +01:00
Matthew Hodgson
c21309fdf6 remove stale state 2016-09-15 22:56:12 +01:00
David Baker
44fa851275 Pass through config for Room Directory 2016-09-15 17:18:53 +01:00
Mark Haines
c54b9c911f Add the olm version to the settings page. 2016-09-15 11:31:54 +01:00
Matthew Hodgson
8bda0bb095 basic verification UI 2016-09-15 01:55:51 +01:00
Matthew Hodgson
8508e006f0 Merge pull request #469 from matrix-org/wmwragg/chat-multi-invite
Wmwragg/chat multi invite
2016-09-13 19:30:02 +01:00
Matthew Hodgson
17cf2fc745 Merge pull request #470 from matrix-org/matthew/right-panel-collapse
Matthew/right panel collapse
2016-09-13 19:09:18 +01:00
Matthew Hodgson
eb6a4f97ba make it work 2016-09-13 19:00:35 +01:00
David Baker
283e1ccf4c Merge pull request #468 from matrix-org/dbkr/create_room_modal
Add modal dialog on new room button
2016-09-13 17:05:24 +01:00
David Baker
5450e93df1 Verbiage 2016-09-13 16:56:53 +01:00
David Baker
3741768a3a Add modal dialog on new room button
https://github.com/vector-im/vector-web/issues/2178
2016-09-13 16:40:15 +01:00
wmwragg
2db8f4ae67 Added pass through of roomId 2016-09-13 14:30:37 +01:00
wmwragg
ca1bb0f700 Added new Invite button in the RHS footer which calls the new 'view_invite' action 2016-09-13 14:28:03 +01:00
wmwragg
524eeaa315 Merge up from develop 2016-09-13 12:37:52 +01:00
Matthew Hodgson
3b52081092 wip for collapsable RHS 2016-09-13 12:18:22 +01:00
wmwragg
99dfcb4ed2 It's no longer a onde to one chat dialog, as you can invite multiple people 2016-09-13 10:33:15 +01:00
David Baker
2943db1072 Flag incoming DMs as such
* Add the 'is_direct' flag to rooms created for DMs
 * For invites, look for the DM flag when getting the DM user ID for a room
 * When accepting an invite, look for the flag and mark the room as a DM room if appropriate.
2016-09-12 18:32:44 +01:00
Matthew Hodgson
46205ad83c back out small avatars for emotes for now as they conflict with the E2E artwork.
they will be reintroduced once we have lozenges
2016-09-11 22:49:05 +01:00
Matthew Hodgson
83209197f4 Merge branch 'develop' into matthew/notif-panel 2016-09-11 02:38:16 +01:00
Matthew Hodgson
34bb37aaba layout for file & notif panel 2016-09-11 02:14:27 +01:00
Matthew Hodgson
be33c35876 use new onRoomTimelineReset API to let notif timeline reset itself 2016-09-10 10:46:30 +01:00
Matthew Hodgson
6f270fd621 remove debug 2016-09-10 01:39:19 +01:00
Matthew Hodgson
86da0e0d63 Merge pull request #459 from VShell/fix-cas
Fix CAS support by using a temporary Matrix client
2016-09-09 21:19:19 +01:00
Shell Turner
1380bf705a Fix CAS support by using a temporary Matrix client
Signed-off-by: Shell Turner <cam.turn@gmail.com>
2016-09-09 21:01:10 +01:00
Matthew Hodgson
904348e62a Merge branch 'develop' into matthew/notif-panel 2016-09-09 11:12:52 +01:00
Matthew Hodgson
f4d939da81 null checks on room in onRoomTimeline 2016-09-09 02:09:12 +01:00
Matthew Hodgson
4aef352a5c update to use new API based on js-sdk PR input 2016-09-08 22:48:44 +01:00
Matthew Hodgson
3c7864a7ad remove unused _gatherTimelinePanelRef 2016-09-08 14:52:08 +01:00
Matthew Hodgson
f88ba9df11 fix comment & use room.getUnfilteredTimelineSet() 2016-09-08 14:38:34 +01:00
Matthew Hodgson
c882d66b0d make NotificationPanel work 2016-09-08 03:02:31 +01:00
Matthew Hodgson
7174648f94 don't show RRs if manageRRs is false 2016-09-08 03:01:38 +01:00
Matthew Hodgson
334564c814 unbreak tests 2016-09-07 22:54:38 +01:00
Matthew Hodgson
8f75bce29e add fixmes 2016-09-07 22:54:37 +01:00
Matthew Hodgson
990d84df77 make FilePanel refresh when we switch rooms 2016-09-07 22:54:37 +01:00
Matthew Hodgson
e7074ef9af apply FilePanel css and fix filtering 2016-09-07 22:54:37 +01:00
Matthew Hodgson
e5dd2e0b46 make FilePanel work, superficially at least 2016-09-07 22:54:37 +01:00
Matthew Hodgson
e22d0a53b6 WIP switch-over of TimePanel from taking Rooms to taking EventTimelineSets 2016-09-07 22:54:37 +01:00
Matthew Hodgson
c3de035964 filepanel 2016-09-07 22:54:37 +01:00
Matthew Hodgson
ae34f2ed5c placeholder NotificationPanel 2016-09-07 22:53:15 +01:00
Matthew Hodgson
d9ffe30a0d WIP notif panel 2016-09-07 22:53:15 +01:00
wmwragg
7dfb8857d8 Merge branch 'develop' into wmwragg/one-to-one-chat 2016-09-07 17:22:10 +01:00
David Baker
df1cc8748f Change references to MatrixTools to Rooms
or remove where they were unused
2016-09-07 11:33:58 +01:00
wmwragg
d9c6448a0f Adding better deafults and ErrorDialog message 2016-09-05 14:29:21 +01:00
wmwragg
9c0f51fb82 Merge branch 'develop' into wmwragg/one-to-one-chat 2016-09-05 12:06:31 +01:00
wmwragg
ca443e01d8 Initial commit of the new ChatInviteDialog 2016-09-05 12:03:16 +01:00
wmwragg
67c623d410 Rename the action to make it clearer what it is doing 2016-09-05 10:29:03 +01:00
Matthew Hodgson
b5f9c2a5ac Merge branch 'master' into develop 2016-09-02 17:17:24 +01:00
Matthew Hodgson
d5062f1ff7 gah, revert debug 2016-09-02 17:15:21 +01:00
Matthew Hodgson
fd664e893f Merge branch 'master' into develop 2016-09-02 17:14:24 +01:00
Matthew Hodgson
6de2e8bda5 update changelog 2016-09-02 17:13:52 +01:00
Richard van der Hoff
b4521bc44c review feedback 2016-09-01 22:45:09 +01:00
wmwragg
e7d4ef74d0 Placeholder for one to one chat dialog and functionality 2016-09-01 16:45:24 +01:00
Richard van der Hoff
ba341c11fb Show session restore errors on the login screen
If we are unable to load the matrix session on startup, don't just get stuck at
a spinner; instead, show the error on the login screen.
2016-09-01 11:08:40 +01:00
wmwragg
769e7d3b2e Merge branch 'develop' into wmwragg/direct-chat-sublist 2016-08-30 11:19:54 +01:00
Matthew Hodgson
5e105e1be6 make /user URLs work 2016-08-28 14:04:11 +01:00
Matthew Hodgson
de82ac3bc0 don't change URL bar when clicking on linkified rooms or users.
be aware of /user paths.
2016-08-28 02:05:31 +01:00
Matthew Hodgson
ad873c2b60 handle matrix.to links correctly. add partial support for #/user URLs 2016-08-28 01:55:42 +01:00
Richard van der Hoff
c1db6fb42d Merge pull request #429 from matrix-org/rav/timelinepanel_test
Update annoying TimelinePanel test
2016-08-25 15:40:03 +01:00
Matthew Hodgson
ae910d82a8 Merge pull request #416 from aviraldg/feature-changelog
add fancy changelog dialog
2016-08-24 18:01:39 +01:00
Richard van der Hoff
cdd2902b01 Update annoying TimelinePanel test
* Actually test what we were supposed to be testing (viz, that we can paginate
  back down after we hit the top of the room)

* Make the cap on the number of events we show in the timeline a configurable
  property, so that we can set it in the test

* Use a smaller cap in the test, so that we have to do less paginating to hit
  the cap, to make the test run quicker.

* add some more logging so that we can see how far it's got if it gets stuck.
2016-08-24 16:28:00 +01:00
wmwragg
6a4d02ffc5 Merge branch 'develop' into wmwragg/direct-chat-sublist 2016-08-23 12:49:21 +01:00
wmwragg
6d1f9003e2 Merge branch 'develop' into wmwragg/direct-chat-sublist 2016-08-23 10:52:50 +01:00
wmwragg
ddda435e9e Updated the MessagePanel to now take account of /me messages when working out if an event is a continuation message or not 2016-08-18 22:15:53 +01:00
Aviral Dasgupta
ff39d52431 add fancy changelog dialog 2016-08-16 03:33:47 +05:30
David Baker
5a83adc2b6 Merge pull request #414 from matrix-org/rav/fix_device_display_name
defaultDeviceDisplayName should be a prop
2016-08-12 11:44:57 +01:00
Richard van der Hoff
b9870f2c23 defaultDeviceDisplayName should be a prop
... not a bit of config.
2016-08-12 11:41:45 +01:00
David Baker
33e9abe421 Merge pull request #410 from matrix-org/rav/use_server_device_id
Use server-generated deviceId
2016-08-12 11:40:55 +01:00
Richard van der Hoff
a29325cc46 Set initial_device_display_name on login and register
Let Vector pass in a default device name, and thread it through everywhere to
set it on login and register calls
2016-08-12 10:55:02 +01:00
Richard van der Hoff
df22768f1b Use server-generated deviceId 2016-08-12 07:31:15 +01:00
wmwragg
434115ccda Bugifx: 'background-color' in react should be 'backgroundColor' 2016-08-11 17:34:05 +01:00
Richard van der Hoff
e32c325863 Don't use MatrixClientPeg for temporary clients
Get rid of MatrixClientPeg.replaceUsingUrls, and instead create local,
temporary MatrixClients for the unauthed steps; we therefore only use
MatrixClientPeg for logged-in clients.
2016-08-11 16:23:03 +01:00
Matthew Hodgson
3704e2c648 Merge pull request #402 from matrix-org/wmwragg/room-tag-menu
Wmwragg/room tag menu
2016-08-11 08:59:32 -05:00
Richard van der Hoff
e06763d421 Move guest registration into the login logic 2016-08-11 13:05:16 +01:00
Richard van der Hoff
bbfb9291f8 Refactor login token
move the logic for handling login tokens into Lifecycle.loadSession

This means it needs access to the (real) query parmeters, so it depends on
corresponding changes in vector-web.
2016-08-11 11:02:52 +01:00
David Baker
6802db05bd Merge pull request #405 from matrix-org/rav/use_right_hs_for_guest_login
Use the current HS for guest login
2016-08-11 10:32:37 +01:00
David Baker
46899a0086 Merge pull request #395 from aviraldg/fix-emoji
Various fixes and improvements to emojification.
2016-08-11 10:23:00 +01:00
Aviral Dasgupta
4c1dcb924b reskindex and use sdk.getComponent for EmojiText 2016-08-11 07:55:12 +05:30
Richard van der Hoff
1fbddcf6af Use the current HS for guest login
Make sure that we use the homeserver from localstorage for guest regsistration,
in preference to the default.

Also rename the parameters for loadSession
2016-08-11 01:39:33 +01:00
wmwragg
e2d3631e7c Menu colour now changeable, and leave room item hooked up 2016-08-10 16:34:49 +01:00
David Baker
f08519a496 Merge pull request #401 from matrix-org/rav/avoid_login_for_guest
Avoid flashing up login screen during guest registration
2016-08-10 15:38:34 +01:00
Richard van der Hoff
68f8db3834 Avoid flashing up login screen during guest registration
Fix a bug where we would flash up the login screen during guest registration if
you followed a room link.
2016-08-10 14:34:44 +01:00
Richard van der Hoff
8fe470bce1 Cancel calls to rate-limited funcs on unmount
The tests were throwing up warnings about state being accessed, and null
MatrixClients being called, after component unmount.
2016-08-10 13:39:47 +01:00
David Baker
e0f71977b4 Merge pull request #397 from matrix-org/rav/factor_out_sessionloader
Start to factor out session-loading magic
2016-08-10 11:40:58 +01:00
Richard van der Hoff
26c7c9e994 Make SessionLoader a function
There's no point in it being a React component.
2016-08-10 11:36:26 +01:00
David Baker
13a4bfa8fe Merge pull request #396 from matrix-org/rav/fix_react_warning
Hack around a react warning
2016-08-10 10:09:18 +01:00
Richard van der Hoff
24841cc5c4 Start to factor out session-loading magic
Take some of the magic out of MatrixChat.componentDidMount() into a new
component.

Also delete the MatrixChat test. It wasn't really doing much, is broken by the
change, and I am replacing it with (better) app-level tests in the vector
project.
2016-08-10 00:05:44 +01:00
Richard van der Hoff
a1d3db76e5 Hack around a react warning
when login completes, we replace the whole state, which means we unset
collapse_lhs, which then leads to complaints from the RoomList.

I think the 'default view' for MatrixChat ought to be factored out to another
component, which could manage collapse_lhs properly; but for now, hack around
it.
2016-08-09 23:57:36 +01:00
Aviral Dasgupta
09e8a45cde Add EmojiText component for emoji replacement. 2016-08-10 00:31:51 +05:30
Aviral Dasgupta
dbbea63227 Various fixes and improvements to emojification.
- Use locally hosted emoji
- Emojify SenderProfile and m.emote
- Add emoji shortcodes as titles
2016-08-09 22:09:28 +05:30
David Baker
4b8ad3c102 Merge pull request #393 from matrix-org/dbkr/enable_labs
Add config to hide the labs section
2016-08-05 17:25:25 +01:00
David Baker
5e358b8cf6 Add comment 2016-08-05 17:18:45 +01:00
David Baker
f8d02c1551 pr feedback 2016-08-05 16:36:35 +01:00
David Baker
e8ee5c2f96 Add config to hide the labs section 2016-08-05 16:13:06 +01:00
David Baker
98e89d4293 Merge pull request #392 from matrix-org/dbkr/scalar
Dbkr/scalar
2016-08-05 15:43:57 +01:00
Richard van der Hoff
e8dbf978c3 Merge pull request #388 from matrix-org/dbkr/refactor_field_errors
Refactor UI error effects
2016-08-05 12:34:56 +01:00
Matthew Hodgson
d0158f5812 fix merge conflict 2016-08-04 23:45:28 +01:00
Matthew Hodgson
cf70f1731e hide integration management behind labs checkbox 2016-08-04 23:26:27 +01:00
David Baker
1f2b023885 Make sure error message never lies
Make sure we don't say 'login incorrect' unless the user is actually trying to log in
2016-08-04 17:37:07 +01:00
Matthew Hodgson
90e5ab2ca3 merge in develop 2016-08-04 13:39:47 +01:00
David Baker
498ad7fa4c Merge branch 'develop' into dbkr/deactivate_account 2016-08-03 17:52:18 +01:00
David Baker
cbfb0ad998 Merge pull request #377 from matrix-org/dbkr/use_logout_api
Call the logout API when we log out
2016-08-03 17:51:42 +01:00
David Baker
bb3a7725db Shift loginIncorrect into state
and consequently make setErrorTextFromError into setStateFromError
2016-08-03 17:49:29 +01:00
David Baker
476f69cbec Unused ref 2016-08-03 17:38:13 +01:00
David Baker
f469bbbb64 Refactor UI error effects
And add error effects to the login page to be consistent with the registration page
2016-08-03 15:59:17 +01:00
Matthew Hodgson
f95a11a9bf Merge pull request #369 from matrix-org/wmwragg/mention-state-menu
Wmwragg/mention state menu
2016-08-03 15:22:39 +01:00
David Baker
f8201ac2ea Merge branch 'dbkr/use_logout_api' into dbkr/deactivate_account 2016-08-03 11:39:22 +01:00
David Baker
f47ac87775 Don't show deactivate button for guests 2016-08-03 11:34:31 +01:00
David Baker
d9a7d50a03 Add an interface for MatrixClientCreds
and make MatrixClientPeg functions use it consistently
2016-08-03 10:46:42 +01:00
David Baker
cf7e7d65c8 Don't start the client twice
if we have a guest_access_token
2016-08-03 10:15:50 +01:00
David Baker
e3a5776eae We should clear /login off the URL after login 2016-08-03 09:57:12 +01:00
David Baker
4825ab8fe7 No need to set options in WillStartClient
We can set them any time up to that point
2016-08-03 09:53:02 +01:00
David Baker
0c2bd10594 Comment functions 2016-08-02 19:05:05 +01:00
David Baker
0c61c52480 Just use Lifecycle.setLoggedIn 2016-08-02 19:02:07 +01:00
David Baker
d74a8e405d Remove unused function 2016-08-02 19:00:01 +01:00
David Baker
65865f879f We already know we're a guest here 2016-08-02 18:59:09 +01:00
David Baker
58bbb35096 s/login/setLoggedIn/ 2016-08-02 18:48:27 +01:00
David Baker
3818a89ca3 Comment guestCreds 2016-08-02 18:46:43 +01:00
David Baker
54c10a5d89 Get name of section right 2016-08-02 18:42:02 +01:00
David Baker
aafec49abf WIP for deactivaing account UI
https://github.com/vector-im/vector-web/issues/1775
2016-08-02 18:40:12 +01:00
David Baker
db9750a7e3 Call the logout API when we log out
Also try to refactor some of the login/logout code out of MatrixChat and into a separate Lifecycle.js. This still isn't great, but it at least gets some code out of MatrixClient.
2016-08-02 14:04:20 +01:00
Richard van der Hoff
c071bc54f9 Implement device management UI
View/rename/delete.
2016-08-01 13:42:29 +01:00
wmwragg
cf22a5fecc Merge up from develop 2016-07-30 12:10:43 +01:00
wmwragg
94350bc780 Fixed spelling mistake 2016-07-28 15:51:46 +01:00
wmwragg
bc902a9741 Tidy up of the contextual menu refactor 2016-07-28 14:32:59 +01:00
wmwragg
8246d9148c Initial context menu with all it's elements 2016-07-27 17:43:48 +01:00
wmwragg
6e7e091117 Refactor so that chevron and menu can be positioned independantly 2016-07-27 16:09:07 +01:00
David Baker
cf3cd69f37 Merge pull request #366 from matrix-org/rav/remove_relayoutonupdate
Remove relayoutOnUpdate prop on gemini-scrollbar
2016-07-27 15:21:46 +01:00
wmwragg
0660b9feff Fixes to properly point to the moved components 2016-07-27 14:49:10 +01:00
wmwragg
3df746ef14 Revert merge up from develop 2016-07-27 14:16:17 +01:00
Richard van der Hoff
c8df9148b3 Remove relayoutOnUpdate prop on gemini-scrollbar
The latest gemini-scrollbar makes relayoutOnUpdate redundant, so update to it
and remove the properties.
2016-07-27 11:35:48 +01:00
wmwragg
4b26ac58af Re-modularised the context menus 2016-07-27 10:41:24 +01:00
David Baker
09993cd3bc Add comment back 2016-07-26 18:19:25 +01:00
David Baker
31399254b6 Fix onRoomStateMember debouncing
Don't have debounced functions take arsg, because they won't be the same for each invocation.
2016-07-26 18:15:26 +01:00
David Baker
4ecf5f6372 Fix bug where vector freezes on power level event
Make rate_limited_function accept functions with args so we can just ratelimit the event handler & be done with it.

Fixes https://github.com/vector-im/vector-web/issues/1877
2016-07-26 17:58:19 +01:00
David Baker
030652f289 Add removeLisatener for account data listener 2016-07-21 13:49:31 +01:00
Matthew Hodgson
165b0810cc remove debug 2016-07-20 18:17:09 +01:00
Matthew Hodgson
bc87fc575b remove debug 2016-07-20 18:16:54 +01:00
Matthew Hodgson
d6415aceca handle accountData changes, and errors on toggling URL previews 2016-07-20 18:14:16 +01:00
David Baker
fb964be072 Merge pull request #356 from matrix-org/matthew/disable-url-previews
Support for disabling/enabling URL previews per-user, per-room and per-user-per-room
2016-07-20 16:43:08 +01:00
David Baker
02e2ade7d9 Merge pull request #336 from matrix-org/dbkr/add_email_fail_if_in_use
Use HS proxy API for requestToken on adding email
2016-07-20 14:05:58 +01:00
Matthew Hodgson
1365f18829 many stupid thinkos and bugfixes; make it work 2016-07-20 12:03:13 +01:00
David Baker
514bc2cd51 Merge pull request #341 from matrix-org/dbkr/tab_complete_most_recently_spoke
Order tab complete by most recently spoke
2016-07-19 18:02:09 +01:00
Matthew Hodgson
6bf5499289 typos 2016-07-18 10:47:03 +01:00
Matthew Hodgson
f13bb5f656 typos 2016-07-18 01:39:24 +01:00
Matthew Hodgson
ebdac4ee50 first cut (untested) 2016-07-18 01:35:42 +01:00
wmwragg
a385955c6b Fixed MatrixChat Dialog Spinner. Still needs testing, unsure what triggers it. 2016-07-17 21:23:52 +01:00
David Baker
5c566cae5c typo 2016-07-15 18:10:56 +01:00
David Baker
ccf8e269cd Comments & required props 2016-07-15 17:15:51 +01:00
David Baker
327015ba0f Tidy up autocomplete updating
..into a function
2016-07-15 17:03:53 +01:00
David Baker
7d712d06a1 Move code to make diff less confusing 2016-07-15 16:14:05 +01:00
David Baker
d5bed78a54 Rejig tab complete to make it faster
Now do a lot less when people speak. Also move more of the tab completion logic into TabComplete.js and out of RoomView.
2016-07-15 16:10:27 +01:00
David Baker
f1d72296b7 Fix last-spoke order
Turns out this timeline is the other way around, so loop through the other way
2016-07-14 14:06:31 +01:00
David Baker
0dde891d4c Order tab complete by most recently spoke
Fixes https://github.com/vector-im/vector-web/issues/1741
2016-07-14 11:25:45 +01:00
David Baker
ac58520b3b Update tab completion list when we have a room
Fixes https://github.com/vector-im/vector-web/issues/1737
2016-07-12 18:30:37 +01:00
David Baker
b78340ff51 Use HS proxy API for requestToken on adding email
So we report an error if the email is already taken. Also fix a bug where the spinner wouldn't disappear if adding an email failed (and don't include the raw errcode in the user-facing dialog)
2016-07-08 17:28:04 +01:00
David Baker
345ed04ba9 Less enetering 2016-07-07 13:03:27 +01:00
David Baker
a6b04c462e Comment how we're remembering form vals 2016-07-07 11:26:35 +01:00
David Baker
e2c473b366 Error on registration if email taken
Use the new register-specific request token endpoint (https://github.com/matrix-org/matrix-js-sdk/pull/147) and catch the error that it gives if the email is already in use. Also add initial values to the registration form so we can reload it after the error without all the values disappearing, and split out the guest username parameter which was previously called defaultUsername.
2016-07-06 15:22:06 +01:00
Aviral Dasgupta
30b7efd585 fix: code cleanup, fix getCurrentCommand 2016-07-04 21:44:35 +05:30
Aviral Dasgupta
cd928fe6f5 Merge remote-tracking branch 'upstream/develop' into feature-autocomplete 2016-07-03 00:00:02 +05:30
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