Commit graph

931 commits

Author SHA1 Message Date
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