Commit Graph

627 Commits (cbf9ff6aeedf52de15cfa93222addfa932caa138)

Author SHA1 Message Date
Richard van der Hoff e3dbf057fb Fix 'missing page_type' error
LoggedInView will complain if it is instantiated without a page_type, so let's
keep showing the syncing spinner until we have one.
2017-05-19 14:09:20 +01:00
Richard van der Hoff c61294f71c Delintify some of MatrixChat (#907)
... it annoyed me too much.
2017-05-19 13:53:11 +01:00
Michael Telatynski a2ab36f598 Merge branch 'develop' of github.com:matrix-org/matrix-react-sdk into forward_message
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-19 00:33:36 +01:00
Michael Telatynski 0e7e4d8595 replace weird sidebar snapping with better ui_opacity
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-19 00:20:32 +01:00
Luke Barnard e38437e6ce Invite the welcome user after registration if configured
This will shift focus to the welcome user DM.

We probably don't want to do this for teams, but I shall leave that for another PR that fixes teams WRT to new-guest-access.
2017-05-18 11:14:56 +01:00
Luke Barnard c6350379dc Merge pull request #881 from matrix-org/luke/user-settings-remove-current-password
Remove "Current Password" input if mx_pass exists
2017-05-16 12:29:23 +01:00
Luke Barnard eb0041d21a Remove redundant state 2017-05-15 17:03:54 +01:00
Luke Barnard f73cf772fb Move sessionStore ref from MatrixChat to LoggedInView
MatrixChat didn't actually use the sessionStore, so this is one less prop to pass.
2017-05-15 14:56:05 +01:00
Luke Barnard da3cb0ee48 SessionStore extends flux.Store 2017-05-15 14:52:19 +01:00
Luke Barnard 683f1b8a1a Invite the welcome user after registration if configured
This will shift focus to the welcome user DM.

We probably don't want to do this for teams, but I shall leave that for another PR that fixes teams WRT to new-guest-access.
2017-05-12 17:39:38 +01:00
Luke Barnard 536724e7c5 ES6 SessionStore 2017-05-12 15:58:44 +01:00
Luke Barnard 5c8187dc8f Explicitly pass thru userHasGeneratedPassword 2017-05-12 15:47:37 +01:00
Luke Barnard 1176573f39 Implement SessionStore
This wraps session-related state into a basic flux store. The localStorage item 'mx_pass' is the only thing managed by this store for now but it could easily be extended to track other items (like the teamToken which is passed around through props a lot)
2017-05-12 12:02:45 +01:00
Luke Barnard 8725ef3863 Remove "Current Password" input if mx_pass exists
If the user is PWLU, do not show "Current Password" field in ChangePassword and when setting a new password, use the cached password.
2017-05-11 17:47:45 +01:00
Luke Barnard cfa108a28c No need to dispatch, just call setMxId 2017-05-11 17:07:03 +01:00
Luke Barnard 6326a95b39 Prevent ROUs from creating new chats/new rooms
Spawn a SetMxIdDialog instead and do nothing.
2017-05-11 17:04:11 +01:00
Luke Barnard 5151264f60 Merge branch 'develop' into new-guest-access
Conflicts:
	src/component-index.js
2017-05-11 13:22:30 +01:00
David Baker 85ed39b9d8 Put room name in 'leave room' confirmation dialog
https://github.com/vector-im/riot-web/issues/3850
2017-05-08 16:49:40 +01:00
Pablo Saavedra 17262ad80d Added TextInputWithCheckbox dialog 2017-05-08 12:18:31 +02:00
Luke Barnard 6f4eb9d8b1 Show password nag bar when user is PWLU 2017-05-05 16:31:33 +01:00
Luke Barnard 8774100508 Initial implementation: SetDisplayName -> SetMxIdDialog
- Replaces SetDisplayNameDialog with SetMxIdDialog. This new dialog will use InteractiveAuth to authenticate a user with their chosen mxid.

De-scoped:
 - style tweaks for the InteractiveAuth in the dialog (capcha) and error message.
 - checking for mxid availability
2017-04-28 13:22:55 +01:00
Michael Telatynski 3997974f0f remove debug console log (ignore its content pls)
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-04-24 22:16:15 +01:00
Michael Telatynski 4cf9e0c1ae Create a way to restore last state of the rhs panel.
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-04-24 22:00:59 +01:00
Matthew Hodgson a2be764681 display err.message to user if available in error msgs 2017-04-23 01:48:27 +01:00
Luke Barnard a815788af8 Fix issue where teamTokenMap was ignored for guests
This was an issue because guests do not log in with a teamToken, it is implicitly set by MatrixChat when it mounts. The fix is to view_home_page when a login occurs and MatrixChat has this._teamToken set.
2017-04-06 17:10:32 +01:00
Luke Barnard 5f8a7b46a8 Remove redundant setState call, always focus composer after sync 2017-04-06 11:44:25 +01:00
Luke Barnard 95b40a976c Replace sdkReady with firstSyncPromise, add mx_last_room_id
- Create a promise that will serve as a lock to be blocked on by things that need to wait for the first sync before accessing state.
- Use this promise to block `view_room` calls until a sync has occured instead of just dropping them silently if the sync hasn't happened yet.
- Store the current room ID in a localStorage item `mx_last_room_id` when `view_room` fires. This persists the last viewed room ID so that it can be restored on refresh, browser quit. This replaces the previous logic which set the room following a sync based on the most recent unread room.
2017-04-06 11:38:06 +01:00
Luke Barnard fff83ba234 Fix the onFinished for timeline pos dialog
This was causing a blank RoomView because it was trying to work with `room_id = undefined`.
2017-03-30 17:18:22 +01:00
David Baker dff79984a6 Merge remote-tracking branch 'origin/develop' into dbkr/remove_session_load_error 2017-03-29 18:24:06 +01:00
David Baker 22b0f69ac9 Merge pull request #782 from matrix-org/dbkr/matrixchat_tidy
Use Login & Register via component interface
2017-03-29 18:23:36 +01:00
David Baker a6612bb8ad Remove non-functional session load error
MatrixChat was trying to display an error if the session failed to
restore, but it was never actually being shown because it was just
set as a member variable and therefore never actually caused
a re-render for the error to be displayed. Almost all errors are
caught by _restoreFromLocalStorage which displays the fancy dialog
if your session can't be restored, so I'm not convinced this ever
even tried to do anything anyway. Remove it.
2017-03-29 16:23:18 +01:00
David Baker cee2628b41 Use Login & Register via component interface
Login & Register were being imprted directly for some reason,
rather than going via the normal component interface.

Should be functionally identical.
2017-03-29 15:24:47 +01:00
Luke Barnard 2146e89c09 Attempt to fix the flakyness seen with tests
Specifically:
```

JS 2.1.1 (Linux 0.0.0) joining a room over federation should not get stuck at a spinner FAILED
	Did not find exactly one match (found: 0) for componentType:function (props, context, updater) {
```

actually meant that the room directory wasn't displayed - probably because the dispatch `view_room_directory` ended up on another tick of the event loop, meaning that the directory wasn't displayedi. The fix attempted in ths commit is to use `this._setPage` instead to view the directory. This uses `setState` to set the screen to the directory, so I'm not entirely convinced this will solve the problem (as `setState` may also end up doing things on another tick.

and

```
JS 2.1.1 (Linux 0.0.0) loading: MatrixClient rehydrated from stored credentials: shows a room view if we followed a room link FAILED
	MatrixChat still not ready after 5 tries
	awaitRoomView@/home/travis/build/vector-im/riot-web/test/all-tests.js:201363:90
```

was happening probably because in the handler for the `sync` event in `MatrixChat` (around line 840), there was one case in which the `ready` state may not be true (causing all 5 attempts to fail), and this case relied on `starting_room_alias_payload`. This `starting_room_alias_payload` is now redundant because of `initialScreenAfterLogin`, which was added recently.
2017-03-29 15:02:28 +01:00
Luke Barnard c650cfffac logged_in -> loggedIn
Also added `loggingIn` to `initialState` and removed some commented code.
2017-03-27 17:14:39 +01:00
Luke Barnard 30c5af35e5 Add state loggingIn to MatrixChat to fix flashing login
To prevent the login screen from flashing when refreshing the app, use some state to indicate that a login is in progress, and OR that with the existing `loading` boolean to show the `<Spinner>` instead of the default `<Login>`.

This might be too invasive, and a default spinner may be better.
2017-03-27 16:39:04 +01:00
Kegan Dougal 4cebded04f Add canResetTimeline callback and thread it through to TimelinePanel 2017-03-22 15:06:52 +00:00
Luke Barnard 5330e47b3f Add null check 2017-03-15 13:05:03 +00:00
Luke Barnard 238e48e4af Do routing to /register _onLoadCompleted
_onLoadCompleted happens straight away because Lifecycle finishes loading the session instantly when registration parameters (client_secret etc.) are set.
2017-03-15 12:02:08 +00:00
Luke Barnard 47958180a6 Add null check to start_login 2017-03-14 15:13:36 +00:00
Luke Barnard 5e93dde0dd Merge pull request #746 from matrix-org/luke/merge-RoomTile-context-menus
Merge the two RoomTile context menus into one
2017-03-14 14:19:36 +00:00
David Baker 30b442515e Merge pull request #743 from matrix-org/luke/fix-screen-after-login
Decide on which screen to show after login in one place
2017-03-14 13:44:08 +00:00
Matthew Hodgson 3aaf37df1a beautify a tonne more errors 2017-03-12 22:59:41 +00:00
Luke Barnard 1f788feacd Merge the two RoomTile context menus into one
This will require riot-web changes https://github.com/vector-im/riot-web/pull/3395
2017-03-09 17:03:57 +00:00
Luke Barnard c4001b5c5d Use else instead of two returns 2017-03-08 15:11:38 +00:00
Luke Barnard eca82bdb42 Make sure the screen is set, otherwise ignore screenAfterLogin 2017-03-08 10:45:07 +00:00
Luke Barnard 06a05c351d Decide on which screen to show after login in one place
This follows from a small amount of refactoring done when RTS was introduced. Instead of setting the screen after sync, do it only after login.

This requires as-yet-to-be-PRd riot-web changes.

This includes:
 - initialScreenAfterLogin, which can be used to set the screen after login, and represents the screen that would be viewed if the window.location at the time of initialising Riot were routed.
 - guestCreds are now part of state, because otherwise they don't cause the login/registration views to update when set.
 - instead of worrying about races and using this._setPage, use a dispatch.
2017-03-08 10:25:54 +00:00
David Baker 1bdf213d67 Merge pull request #729 from matrix-org/dbkr/register_ui_auth
Port registration over to use InteractiveAuth
2017-03-03 13:37:41 +00:00
David Baker 0914226327 Actuall pass our proxy makeRegistrationUrl 2017-03-02 14:47:47 +00:00
David Baker 3028b335a4 Oops, re-add referrer param
as Registration was still using it
2017-03-02 14:46:18 +00:00
David Baker dd762cc835 Add makeRegistrationUrl to proptypes 2017-03-02 14:40:55 +00:00
David Baker a5cf3a964b doc 2017-03-02 14:39:25 +00:00
David Baker 95cff17698 Merge pull request #721 from matrix-org/luke/fix-refactor-UnknownDeviceDialog
Show UDDialog on UDE during VoIP calls
2017-03-02 13:13:45 +00:00
Luke Barnard 39427839b9 Use ES6 export style 2017-03-01 14:33:25 +00:00
David Baker dd33624454 Merge remote-tracking branch 'origin/develop' into dbkr/register_ui_auth
(This ended up mostly being merged by hand as git made a complete
mess of the merge)
2017-03-01 10:45:17 +00:00
Luke Barnard 0ef8e2a8f4 Various fixes 2017-02-28 15:18:00 +00:00
Luke Barnard 48a3d0d595 Refactor to not set team token in bad ways
Use the on_logged_in dispatch instead. Call setPage in one place, _onLoggedIn, when deciding which page to view on login. Change some require to import, var to const. Remove onTeamMemberRegistered and just use a nullable argument to onRegistered
2017-02-28 15:05:49 +00:00
David Baker c22db1db5f Fix race when signup is completed elsewhere
as commented
2017-02-27 18:22:26 +00:00
Luke Barnard 7221900497 Refactor remove resend_all_events and cancel_all_events dispatches 2017-02-27 13:39:12 +00:00
David Baker 51467506f8 Port registration over to use InteractiveAuth
These changes are moved over from the dbkr/msisdn_signin branch
2017-02-24 11:41:23 +00:00
Luke Barnard e1a40a8ef0 Notify MatrixChat of teamToken after login 2017-02-23 16:30:26 +00:00
Luke Barnard 436e6b36f1 Move UDE handling to a its own file, adjust wording 2017-02-22 16:42:14 +00:00
Luke Barnard c13ff254b1 Add "Retry" button to UDE 2017-02-22 10:21:43 +00:00
Luke Barnard 878e31eba2 Show UDDialog on m.call.invite failure
Requires https://github.com/matrix-org/matrix-js-sdk/pull/378

Also, refactored UDDialog creation into its own dispatch event, because there will be other parts of the code that will want to spawn one.
2017-02-21 17:22:22 +00:00
Luke Barnard 9eef3c53a3 Allow setting the default HS from the query parameter
Fixes https://github.com/vector-im/riot-web/issues/3207
2017-02-20 16:53:26 +00:00
Luke Barnard 9d2bb70823 If the home page is somehow accessed, goto directory
For example, if someone ends up on /home somehow, just redirect to the directory instead of displaying a very awkward "File not found" plain text in the home page iFrame.
2017-02-16 17:03:22 +00:00
David Baker 973b92b8f6 Merge pull request #694 from matrix-org/dbkr/confirm_ban
Add confirmation dialog to kick/ban buttons
2017-02-14 17:31:51 +00:00
David Baker 6663f5bff0 Remove commented stuff
That I've now broken such that it wouldnt work if it were
uncommented
2017-02-14 16:12:04 +00:00
Luke Barnard 1b8e93d4f2 Treat the literal team token string "undefined" as undefined
Some users appear to have gotten team tokens into their local storage. This fix will treat the literal string "undefined" as undefined.
2017-02-14 12:56:29 +00:00
David Baker 18cba1fe45 Merge pull request #689 from matrix-org/luke/rts-set-team-token-view-home
View /home on registered /w team
2017-02-14 10:21:23 +00:00
Luke Barnard 16e3365240 Use a callback prop instead of `window.` 2017-02-13 14:36:35 +00:00
Luke Barnard 75deb55844 Null check on teamName 2017-02-13 11:48:03 +00:00
Luke Barnard bdd031eac2 Enable branded URLs again by parsing the path client-side
Use the first path segment to key off config.teamTokenMap, which contains a mapping to teamTokens. The client then behaves as before, keeping the path in the address bar constant with no redirects required.
2017-02-10 15:09:45 +00:00
Luke Barnard ec730056d8 Alter comment 2017-02-10 11:39:22 +00:00
Luke Barnard bab6a0b84a Persist query parameter team token across refreshes 2017-02-10 11:31:04 +00:00
David Baker fe17e2452b Merge pull request #676 from matrix-org/luke/rts-team-token-login
Get team_token from the RTS on login
2017-02-08 10:54:24 +00:00
Luke Barnard 3d30db81e0 Only init RTS if configured correctly 2017-02-07 15:24:57 +00:00
Luke Barnard d5f6ecdc49 Use teamToken, not config when doing screen fallback 2017-02-07 13:23:58 +00:00
Luke Barnard c93b6c3c34 Style, fixes 2017-02-07 13:15:40 +00:00
Luke Barnard 173e80a5de Get team_token from the RTS on login
Use the /login endpoint of the RTS to get the team token when the user has successfully logged in.
2017-02-03 14:34:24 +00:00
Luke Barnard efae5f6bf1 Use localStorage team token with fall-back on query parameter 2017-02-03 11:48:24 +00:00
Luke Barnard 8c941b11cd Use `mx_team_token` instead of config 2017-02-02 11:22:40 +00:00
Luke Barnard acde1f3db7 Merge branch 'develop' into luke/rts-welcome-pages
Conflicts:
	src/components/views/avatars/BaseAvatar.js
2017-02-01 17:22:45 +00:00
Luke Barnard 878e5593ba Implement tracking of referrals (#659)
* Implement tracking of referrals

This also modifies (or fixes) auto-joining.
2017-01-31 11:13:05 +00:00
Luke Barnard 4e0889454a GET /teams from RTS instead of config.json
Now that the RTS contains config for teams, use GET /teams to get that information so that users will see be able to register as a team (but not yet auto-join rooms, be sent to welcome page or be tracked as a referral).
2017-01-30 15:50:31 +00:00
Kegan Dougal 97387db014 Reduce log spam: Revert a16aeeef2a
As per #riot-dev, this is no longer required.
2017-01-24 16:40:26 +00:00
David Baker 18d4d3392a Fix a bunch of linting errors
eslint --fix and a few manual ones
2017-01-20 14:22:27 +00:00
Richard van der Hoff a16aeeef2a Temporarily add more logging, to try to catch failures on travis 2017-01-20 13:06:06 +00:00
Matthew Hodgson b76b0f755d fix context menu bg 2017-01-20 02:47:47 +00:00
Richard van der Hoff a88f9fdd73 (hopefully) fix theming on Chrome
Jump through some hoops to make Chrome behave sensibly on non-default themes.
2017-01-19 15:36:57 +00:00
Matthew Hodgson 4e5689082d correctly load synced themes without NPE 2017-01-18 20:06:54 +00:00
Matthew Hodgson 3d30553b7f review fixes, plus unbreak to work with new webpack layout 2017-01-18 14:06:47 +00:00
Matthew Hodgson a0bbe3a306 Merge branch 'develop' into matthew/postcss 2017-01-18 12:52:59 +00:00
Luke Barnard 5ef5204c8c Implement simple team-based registration (#620)
* Implement simple team-based registration

Config required goes in the `teams` top-level property in config.json. This consists of an array of team objects:
```json
{
  "name": "University of Bath",
  "emailSuffix": "bath.ac.uk"
}
```
These can be selected on registration and require a user to have a certain email address in order to register as part of a team. This is for vector-im/riot-web#2940. The next step would be sending users with emails matching the emailSuffix of a team to the correct welcome page as in vector-im/riot-web#2430.
2017-01-18 12:48:28 +01:00
Matthew Hodgson 8288eb730c a rather hacky implementation of theme switching 2017-01-17 19:13:23 +00:00
David Baker 13a5337e0f Fix 'create account' link in 'forgot password'
Fixes https://github.com/vector-im/riot-web/issues/2853
2017-01-10 15:16:39 +00:00
Mark Haines 81e429eb14 Fix e2e attachment download by using iframes. (#562)
* Render attachments inside iframes.

* Fix up the image and video views

* Fix m.audio

* Comments, and only use the cross domain renderer if the attachment is encrypted

* Fix whitespace

* Don't decrypt file attachments immediately

* Use https://usercontent.riot.im/v1.html by default

* typos

* Put the config in the React context.

Use it in MFileBody to configure the cross origin renderer URL.

* Call it appConfig in the context

* Return the promises so they don't get dropped
2016-12-02 14:21:07 +00:00
David Baker 8547d00f32 Don't default the page_type to room directory
As it breaks the behaviour of redirecting to /#/directory
2016-11-24 16:39:48 +00:00
David Baker 2aba646acd Clear room alias etc. on logout 2016-11-24 14:58:37 +00:00
David Baker 0069393650 Go back to same room after logging in 2016-11-24 13:28:51 +00:00
David Baker 0bc4659fe0 Fix crash on logging in
If you arrived at the page via a link to a room.

Fixes https://github.com/vector-im/vector-web/issues/2634
2016-11-24 12:33:31 +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
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 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 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 746aad9a18 Oops, missed one 2016-09-19 14:47:08 +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 ff00474aa5 show RightPanel when people click on users 2016-09-16 02:37:06 +01:00
David Baker 44fa851275 Pass through config for Room Directory 2016-09-15 17:18:53 +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
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
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
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
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
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
Aviral Dasgupta ff39d52431 add fancy changelog dialog 2016-08-16 03:33:47 +05:30
Richard van der Hoff b9870f2c23 defaultDeviceDisplayName should be a prop
... not a bit of config.
2016-08-12 11:41:45 +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 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
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
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
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
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
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 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
Matthew Hodgson 90e5ab2ca3 merge in develop 2016-08-04 13:39:47 +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 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 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
wmwragg 0660b9feff Fixes to properly point to the moved components 2016-07-27 14:49:10 +01:00
wmwragg a385955c6b Fixed MatrixChat Dialog Spinner. Still needs testing, unsure what triggers it. 2016-07-17 21:23:52 +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
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
Matthew Hodgson 94aec10512 Merge branch 'develop' into dbkr/scalar 2016-06-19 22:40:48 +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
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
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
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 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
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
David Baker c123f02842 Make the config optional 2016-06-08 18:45:46 +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 fdcebe1e56 Merge remote-tracking branch 'origin/develop' into dbkr/scalar 2016-06-06 17:19:38 +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
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 be5f29d03b Merge branch 'develop' into dbkr/scalar 2016-05-17 20:37:16 +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 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
Richard van der Hoff 0fd0b0c5f3 Whitespace fixes
Fix some trailing whitespace
2016-04-22 17:05:48 +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
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
Richard van der Hoff ec5ca1ca28 s/roomAlias/roomAddress/ to reduce confusion 2016-04-13 12:26:40 +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 11f3d5f993 make the UI fadable to help with decluttering 2016-04-12 17:18:32 +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
Matthew Hodgson 1a62369a01 prioritise new version bar 2016-03-23 18:05:47 +00:00
David Baker d6218ca153 Actually calling functions often helps. 2016-03-23 12:02:26 +00:00
David Baker 30b76d372c Error messages for guests creating rooms 2016-03-22 12:58:12 +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 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 b4dd7ba509 I mean string, object 2016-03-18 16:04:58 +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
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
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
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 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
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 5f68f1313b show warning if guest login disabled 2016-03-15 23:01:59 +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
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
Matthew Hodgson 893e338917 incorporate keganfeedback 2016-03-12 19:49:54 +00:00
David Baker 42a90f49c2 Use the guest access tokens sent in 3pid invite emails. 2016-03-07 17:11:01 +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
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
David Baker 068429f3e3 Tidy up starting from a room alias when not logged in. 2016-03-04 17:37:06 +00:00
David Baker c585b3edee anothert stray room_ 2016-03-02 14:31:01 +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 9085a2a866 Pass room metadata from 3pid invite emails all the way through to the relevant components so we can display it. 2016-03-01 18:23:57 +00:00
Richard van der Hoff 4ce3598274 Make the initialSyncLimit configurable
I keep wanting to change this to test things, and can never find the right
place to change it. Make it configurable.
2016-02-24 16:42:23 +00:00
David Baker 3f51cda846 Register a s a guest even if email invite: this is ok now. 2016-02-23 18:30:35 +00:00
David Baker e2bafcbf02 Don't redirect to registration on 3pid invite: it's ok to be a guest now. 2016-02-23 18:26:15 +00:00
David Baker b2b7354018 Comment guest access initial state 2016-02-23 18:10:48 +00:00
David Baker 418bf8e39c Allow guest access by default (by specifying initial state) as rooms are private by default so they'd have to be invited to join. People can't get a 3pid invite & join as guest without this. 2016-02-23 17:55:45 +00:00
David Baker ac9f0f204d Wire up support for keypair 3pid invites. 2016-02-23 10:15:07 +00:00
Matthew Hodgson 30e9c76089 login as guest button on the login page 2016-02-15 20:44:13 +02:00
Richard van der Hoff 576b59be66 Kill off the remains of auto_peek
Remove some dead code.
2016-02-09 15:45:41 +00:00
Kegan Dougal ecaa2c1e11 Fix the mess of warning bars so it doesn't trigger remounts of alllll the components 2016-02-08 17:20:52 +00:00
Kegan Dougal f3fa5d6a2a Set the sync limit back to sane levels 2016-02-04 13:30:25 +00:00
Kegan Dougal 8b96af4ccb Display the version in UserSettings. Change MatrixChat.onNewVersion to onVersion 2016-02-03 16:51:53 +00:00
Kegan Dougal 7bdd9f57a5 Add MatrixChat.onNewVersion to trigger the new version bar 2016-02-03 16:16:52 +00:00
David Baker 11df2fc285 Merge remote-tracking branch 'origin/develop' into dbkr/no_auto_join 2016-02-03 15:18:18 +00:00
Richard van der Hoff e01d61dfeb Merge branch 'rav/timeline_window' into rav/link_to_event
Conflicts:
	src/components/structures/MatrixChat.js
	src/components/structures/ScrollPanel.js
2016-02-03 14:12:28 +00:00
Richard van der Hoff 2479c81cf6 Merge remote-tracking branch 'origin/develop' into rav/timeline_window 2016-02-03 14:09:50 +00:00
Richard van der Hoff c82b364ca8 Address review comments
Mostly renaming things and adding comments.
2016-02-03 08:03:10 +00:00
David Baker 1cabe2ec37 Don't auto join rooms: always 'autoPeek' (ie. see if we can peek, otherwise offer to join) 2016-02-02 15:50:15 +00:00
David Baker c187eda832 Don't assert that we're not logged in before starting registration because uprading is now a thing. 2016-02-01 16:53:39 +00:00
Richard van der Hoff d9e13780b8 Implement direct-to-event linking.
This adds support for links to particular event ids: add /<eventId> to the URL
for a room.

This commit also ensures that we scroll to the 'read marker' when switching to
a room which has no previous scroll state, as well as preventing that marker
from going past the middle of the screen.

This also reinstates the preservation of scroll state when switching rooms,
which was disabled previously.
2016-02-01 16:31:12 +00:00
David Baker 401d18bcc6 Fix registration: don't auto-log in as a guest if we have a URL from sydent. 2016-01-28 15:42:14 +00:00
David Baker 640e87e7c5 Merge pull request #117 from matrix-org/dbkr/guest_warning_bar
Add warning bar for guest users.
2016-01-28 13:44:06 +00:00
David Baker 83119d21d6 New style guest warning bar 2016-01-28 12:59:51 +00:00
Kegsay 12463aec4d Merge pull request #115 from matrix-org/kegan/fix-3pid-signup
Redirect to the registration page when landing with ?email=
2016-01-28 12:00:06 +00:00
Richard van der Hoff a4f4bb9e72 Convert RoomView to using a TimelineWindow
Instead of using the Room's active timeline directly, use a
TimelineWindow. This shouldn't (yet) have much effect, beyond maybe making
scrollback after a gappy sync slightly more efficient.

For now, I have disabled the 'restoreScrollState' functionality. This will be
reinstated once I land the link-to-event code.
2016-01-28 10:53:43 +00:00
Kegan Dougal e017559765 New line 2016-01-28 09:58:51 +00:00
David Baker 7ea45f9888 Move message count to suffix in title, as requested by @ara4n 2016-01-27 18:03:01 +00:00
David Baker 8360c112fb Put the favicon badge call in a try block, as per comment 2016-01-27 15:19:25 +00:00
Kegan Dougal db8fab8019 Redirect to the registration page when landing with ?email=
Fixes "Missing access token" error.
2016-01-27 10:47:54 +00:00
Matthew Hodgson c1f28bb6b9 hide 'unknown screen' warning 2016-01-24 19:14:14 +00:00
David Baker 99a491bb0e Merge pull request #68 from matrix-org/notif_sync
Set room highlight from unread_notification_count
2016-01-21 10:31:42 +00:00
David Baker acce08194d Apply patch to the right branch: update for new count format 2016-01-21 10:23:18 +00:00
David Baker 1c54c64850 Merge pull request #99 from matrix-org/user_settings_on_register
Show user settings screen on registration
2016-01-21 10:11:28 +00:00
Matthew Hodgson deca90d0a7 fix up Start Chat behaviour as per Amandine's feedback 2016-01-21 00:16:10 +00:00
David Baker 83634bf930 Update for new unread count format 2016-01-20 15:56:11 +00:00
Matthew Hodgson 491ba94230 WIP: try to support non-guest room peek. Rename visibility permissions in room settings a bit, and fix how they are persisted. 2016-01-18 17:39:23 +00:00
David Baker 0ac997491e Clarify comment 2016-01-18 14:23:31 +00:00
Matthew Hodgson 51648b9bf0 merge develop 2016-01-18 14:02:19 +00:00
Matthew Hodgson 6e3245a3b0 make linkify userid jump to memberinfo 2016-01-18 01:26:15 +00:00
Matthew Hodgson 5b5bd9aef1 remove create_room for now. lots of stupid bugfixes across the board. 2016-01-17 03:59:31 +00:00
David Baker 7045906d5d Show user settings screen on registration instead of the PostRegister stuff. 2016-01-15 18:58:18 +00:00
Matthew Hodgson 7cc5925ec4 increase initialSyncLimit enormously to avoid slow gappy /syncs for now 2016-01-15 13:28:41 +00:00
Matthew Hodgson 5f763f8ebb merge develop 2016-01-13 14:03:54 +00:00
Matthew Hodgson c9c496f0e5 WIP all new roomsettings 2016-01-13 13:15:13 +00:00
Matthew Hodgson f715662d18 merge in develop, fixing conflicts 2016-01-13 13:06:27 +00:00
Matthew Hodgson 3934b42ac8 s/m.room.color_scheme/org.matrix.room.color_scheme/g # to make kegan happier 2016-01-13 13:01:00 +00:00
David Baker 67ff769962 Include invites in the badge count 2016-01-13 13:00:03 +00:00
Kegan Dougal ec4e0d7687 Implement password reset
This adds a link to the login screen with "Forgot your password?". Clicking it
takes you to a form with fields for an email address and a new password. This
makes the same API calls as the Angular SDK.

Manually tested resetting + not clicking link + invalid email and it all seems
to work.
2016-01-12 17:20:16 +00:00
Kegan Dougal fcdfce3760 Toggle auto-reg off when successfully registered as a guest.
Otherwise if you refresh -> auto-reg -> logout, you will get an infinite
spinner as it will think it is auto-registering again.
2016-01-11 15:12:55 +00:00
Matthew Hodgson ef00a1624d fix up RoomSettings somewhat and implement room colors 2016-01-08 03:22:38 +00:00
Kegan Dougal a3df50f4c3 Implement guest account upgrading 2016-01-07 17:23:32 +00:00
Kegan Dougal c64f36c81b Merge branch 'develop' into kegan/guest-access 2016-01-07 13:21:06 +00:00
David Baker 99abd58f1a Merge remote-tracking branch 'origin/develop' into notif_sync 2016-01-07 10:41:16 +00:00
David Baker 287da54fbc Address PR comments 2016-01-07 10:38:44 +00:00
Matthew Hodgson 0772f50fab update copyright for 2016 2016-01-07 04:06:52 +00:00
Kegan Dougal ae7b2d54bb Merge branch 'develop' into kegan/guest-access 2016-01-05 11:39:36 +00:00
Kegan Dougal 1af5018597 General code cleanup / tweaks / fixes
- Swap Phases enum to be using string literals
- Swap roomId prop on UserSettings for a more sane onUserSettingsClose and
  make MatrixChat responsible for swapping the room.
- s/then/done/ when terminating Promise chains to avoid subtle errors.
- Rejig render() of UserSettings so we don't need to indent quite so much.
2015-12-23 11:47:56 +00:00
David Baker 6ea3f21a8e Favicon badges 2015-12-21 12:55:13 +00:00
Matthew Hodgson e2ae2dd199 merge stuff from vector 2015-12-18 00:37:56 +00:00
Kegan Dougal 6e324a0dd1 Whoops, didn't mean to add this 2015-12-17 15:12:09 +00:00
Kegan Dougal 32bd9d155c Pass a new prop 'startingQueryParams' to pluck out the email from the URL
This is preferable to doing the way other QPs are passed (secret, etc) because
the link in the email wants to look like "#/room/<room_id_or_alias>" for guest
read-access (only bouncing you to /login if that room is not readable by guests).
This is hard to do in the current arch because we don't preserve QPs on /room
paths, and we do conditional executions depending on if it is a room ID or
alias. Rather than threading through the email in each section and creating
a fragile mess, just pass the *starting* set of query parameters through to
MatrixChat which can then do the Right Thing when the time comes.
2015-12-17 14:56:55 +00:00
Kegan Dougal a670a7e4c4 Don't spam logging 2015-12-15 14:23:58 +00:00
Richard van der Hoff 68cdff1159 Fix 'Create room' and 'Settings' buttons
These buttons were broken by PR #49... wire them up correctly.
2015-12-14 11:07:59 +00:00
Matthew Hodgson 5ce917ba84 merge in develop 2015-12-13 14:47:53 +00:00
Matthew Hodgson 6ad6ed2a49 factor out room-leaving code into MatrixChat for now, and add a dedicated leave button in to the header bar for now 2015-12-13 13:49:28 +00:00
Richard van der Hoff b7699c0544 Save scroll state when swapping to non-room pages too 2015-12-10 21:53:14 +00:00
Richard van der Hoff d9782b35e1 Fix review comments
camelcasing and comments
2015-12-10 21:44:30 +00:00
Richard van der Hoff 00656fc1dc Preserve scroll offset when switching rooms
When we change rooms, save the scroll offset, and restore the scroll when we
switch back.

Hopefully this fixes https://github.com/vector-im/vector-web/issues/80.
2015-12-10 16:26:36 +00:00
Kegan Dougal b64e5d49cc Add magic flag to say 'dump pending events to the end' 2015-12-07 15:33:58 +00:00
Kegan Dougal 92cf14d5e9 Support registration as a guest 2015-12-04 15:28:35 +00:00
Kegan Dougal d0ec84fe59 Hook up auto-registration as a guest to MatrixChat. 2015-12-04 11:34:50 +00:00
Kegan Dougal 636be0c003 Update getComponent paths 2015-12-01 15:45:11 +00:00
Kegan Dougal 726c893663 Merge branch 'develop' into kegan/vector-components 2015-12-01 15:39:15 +00:00
Kegan Dougal d5819d54db Fix typos 2015-12-01 15:36:40 +00:00
Kegan Dougal 784c1b63dc Move remaining vector molecules to components 2015-12-01 11:19:25 +00:00
Kegan Dougal 1e694da460 Move MatrixChat and login components to react SDK.
Removed Modulator as it is no longer necessary in this form. ConferenceHandler
is injected in src/vector/index.js
2015-11-30 18:11:04 +00:00