Commit Graph

467 Commits

Author SHA1 Message Date
Matthew Hodgson
5d962e1feb improve horizontal flexing of timeline 2015-10-11 18:04:01 +01:00
Matthew Hodgson
201caed773 fix rubberband bounce on OSX and iOS 2015-10-11 17:50:24 +01:00
Matthew Hodgson
9be98058b7 fix horizontal overscroll 2015-10-11 17:50:16 +01:00
Matthew Hodgson
ba0ae5ba59 various cosmetic fixes based on design feedback 2015-10-11 17:28:36 +01:00
Matthew Hodgson
9a8a9a4ce4 track RHS collapse state, and implement a basic responsive design 2015-10-11 16:09:46 +01:00
Matthew Hodgson
b05f3343e2 tooltipize BottomLeftMenu too for consistency 2015-10-11 15:00:43 +01:00
Matthew Hodgson
ae506b5b1f fix cursor for unhide LHS button 2015-10-11 13:56:25 +01:00
Matthew Hodgson
93de2307c1 improve collapsed LHS implementation - split the tooltip into its own component; position it with javascript as overflow-y + position absolute = clipping hell; preserve the collapse state between MatrixChat re-renders; fix positioning of the 'show' button; switch to dispatcher for show/hide LHS; remove errant scrollbars 2015-10-11 13:54:38 +01:00
Matthew Hodgson
8bdb5c0745 implement right panel collapsing more correctly too 2015-10-11 02:25:26 +01:00
Matthew Hodgson
47ed8971e3 implement collapsible leftpanel at last 2015-10-11 02:09:14 +01:00
Steven Hammerton
a8d51cdf58 Add support for CAS auth 2015-10-10 18:52:44 +01:00
David Baker
93f266a4fa Update to new memberlist api and hopefully sort out presence (list wasn't being re-sorted at the right time)
Hopefully fix #11
2015-10-09 17:26:28 +01:00
David Baker
aed1fe9bf1 Merge branch 'master' into develop 2015-10-09 16:40:27 +01:00
David Baker
7296cbfd5b Spellig 2015-10-09 16:38:37 +01:00
David Baker
023034ce4f Check for existence of content.size. Fixes #201. 2015-10-09 16:28:51 +01:00
David Baker
c68ef38399 Use ChangeDisplayNname / ChangeAvatar widgets to prompt for display name & avatar at signup.
Fixes #7.
2015-10-09 11:56:16 +01:00
David Baker
ccc5f30c9b Get the vector 'ongoing conference' bar back (vector now needs a custom RoomView for this: it would be nice it it didn't) 2015-10-08 15:22:16 +01:00
David Baker
c22442f6d1 Add ChangeDisplayName component and use it 2015-10-07 18:44:07 +01:00
David Baker
fca65a8cdb Show invited members separately.
May not be the final look.

Fixes #6
2015-10-06 15:09:42 +01:00
David Baker
807e947146 Add spinner for inviting. Fixes #13. 2015-10-06 14:12:45 +01:00
David Baker
85636ccdad Show end call button in states other than connected and ringback: it's perfectly valid to want to end the call at other times.
Fixes #9
2015-10-05 16:29:07 +01:00
David Baker
490e56bfbb Improved url / hash change handling 2015-10-05 15:32:34 +01:00
David Baker
df39c3a281 Changes from PR feedback 2015-10-02 16:44:35 +01:00
David Baker
2247d951d6 Add config file for default hs/is urls 2015-10-02 11:48:52 +01:00
David Baker
c687f32f39 Port over custom vector roomlist controller with mini callview 2015-10-01 10:46:42 +01:00
David Baker
3845a989f6 Get conf calling working, apart from the end call button showing in the right room. 2015-09-30 18:22:15 +01:00
David Baker
94a6f856d1 Use the new interface for providing conf call functionality. Doesn't shoe it in the right room yet. 2015-09-30 16:52:45 +01:00
David Baker
fd6e7663cb Fix notifications 2015-09-28 17:52:34 +01:00
David Baker
7d540572fd Update for new default avatar API. 2015-09-28 17:06:39 +01:00
David Baker
c3f32b74e4 Some missed '/' / '.' replacemement 2015-09-28 14:48:07 +01:00
David Baker
588dbf5693 reskindex 2015-09-28 11:34:11 +01:00
David Baker
91c0df4450 Merge branch 'master' into reactsdk-unfork 2015-09-28 11:32:40 +01:00
David Baker
f778f6adf9 Remove unused stuff 2015-09-25 15:33:38 +01:00
David Baker
409697b35b Oops, these were just at the wrong scope 2015-09-25 11:46:06 +01:00
David Baker
f020f4397c Switch to webpack
Webapck actually supports loading input source maps and generally seems a lot
more solid then browserify (even if their website has an annoying animated
logo).
2015-09-25 11:43:28 +01:00
Matthew Hodgson
5fe41e28d7 make presence work better on the memberlist. kludges around lack of syjs-28. is about as good as angular was now. 2015-09-24 01:58:21 +02:00
David Baker
b11abae8e8 More fixing up of paths, requires etc 2015-09-22 19:09:23 +01:00
David Baker
7e72ee891a More fixing up of vector skin 2015-09-22 18:49:04 +01:00
David Baker
40594fc5fa Fix up controller requires 2015-09-22 18:17:19 +01:00
David Baker
148dbc23ed Rename base skin to vector 2015-09-22 18:05:55 +01:00
David Baker
682392d02a Move skins dir to src 2015-09-22 18:05:31 +01:00
David Baker
09b81f46b0 Remove controllers that all come from react-sdk 2015-09-22 17:20:22 +01:00
David Baker
616b4fe0f1 Merge pull request #175 from vector-im/matthew/userlist
Reskin the userlist as per the design
2015-09-22 15:27:21 +01:00
Matthew Hodgson
ef3603cd1a oops, rogue debugging stmt 2015-09-22 01:25:58 +02:00
Matthew Hodgson
61c94d63e7 make the new userlist UI actually work 2015-09-22 01:16:45 +02:00
Matthew Hodgson
260e22186b WIP at turning MemberInfo into a ContextualMenu 2015-09-21 19:23:04 +02:00
Matthew Hodgson
048260bb1b WIP at turning MemberInfo into a ContextualMenu 2015-09-21 19:22:29 +02:00
David Baker
81db1b2360 Merge pull request #160 from vector-im/conferencing
Add conferencing support
2015-09-18 10:03:02 +01:00
Kegan Dougal
240d5502fe Add a FIXME explaining the situation around alternative FS ASes 2015-09-17 11:47:42 +01:00
Kegan Dougal
7a50166dc6 Move the 'thumbnail' video to the top-left of the screen
This was originally laid out at the MatrixChat level which could then be
CSSified, but Matthew suggests this looks a lot better being at the
RoomList level above recents. Move the rendering logic to RoomList.
2015-09-17 11:37:56 +01:00
Matthew Hodgson
01d3f2f119 implement /part, /j, and error rather than pass-through unrecognised commands 2015-09-16 01:09:32 +01:00
Kegan Dougal
f89fbffe89 Auto-place a video call if the conf notification is clicked 2015-09-15 15:55:02 +01:00
Kegan Dougal
2b65b4c2dc Hide the local video when in a conf call 2015-09-15 15:49:33 +01:00
Kegan Dougal
370310bf82 Use better variable names 2015-09-15 15:02:02 +01:00
Kegan Dougal
f384aa7d9e Add notification to group chat rooms with ongoing conf calls
This notification disappears when in the conf call / when the call is over.
CSS stolen from the desktop notification bar.
2015-09-15 14:18:17 +01:00
Kegan Dougal
353269370f Wire up the "room" CallView for conferencing
This also separates out concerns better - UI elements just need to poke
getCallForRoom rather than care if the thing they are displaying is a
true 1:1 for this room ID or actually a conf room.
2015-09-15 13:19:07 +01:00
Kegan Dougal
7866979c79 Show/hide the Hangup button depending on the state of the conf call. 2015-09-15 13:04:09 +01:00
Kegan Dougal
5e3698de64 Actually enforce 1 call semantics. 2015-09-15 11:43:51 +01:00
Kegan Dougal
59986d8b72 Pass the call around different CallViews to keep media flowing
Previously, the CallView was attached to the RoomView, so you would get
a new CallView each time you changed the room and the one you changed
from would be destroyed. This would destroy media capture/playback as
the element was no longer in the DOM.

This is now fixed by having a "global" CallView which is attached at
the MatrixChat "page" level in the DOM hierarchy. This CallView isn't
scoped to a particular room; it will render any "active" call it can
find that *isn't the current room being displayed*. This has the side
effect of enforcing 1 call per app semantics as only the first active
call found is returned.

This fixes https://github.com/vector-im/vector-web/issues/31
This is unfinished (CSS for the global call view isn't done)
2015-09-15 11:05:53 +01:00
Kegan Dougal
fc892b3580 Hide 1:1 conference rooms 2015-09-11 16:55:48 +01:00
Kegan Dougal
e3b02a295c Check conf user/rooms a bit more efficiently 2015-09-11 16:14:30 +01:00
Kegan Dougal
77401e215e First working outbound conference calling
This has a number of failings currently: 1) It needs to hide the 1:1 conference
room, 2) Swapping tabs on the outbound call mutes audio (this just seems to be
a vector bug since I can repro this on a normal 1:1 voip call), 3) Needs a big
plinth/etc to say the conf call is in progress.
2015-09-11 15:49:47 +01:00
Matthew Hodgson
737fc74756 Merge branch 'matthew/login' into matthew/userlist 2015-09-01 02:13:52 +03:00
Matthew Hodgson
ab068cc372 improve login, including checkbox fix for advanced options, rechecking when you change server, avoiding flickering when you change HS, better error/spinner layout, and trimming whitespace 2015-08-31 19:30:24 +01:00
Matthew Hodgson
e3798e1b85 WIP fixing up the member list - just needs CSS and testing 2015-08-15 03:06:21 +01:00
Matthew Hodgson
cb7f1aa916 ctrl-alt-num to change rooms 2015-08-14 16:30:19 +01:00
Matthew Hodgson
316a28838f let's wrap when you go off the beginning 2015-08-14 15:51:57 +01:00
David Baker
960a38fe43 Don't try loading -ve room indices 2015-08-14 15:44:21 +01:00
David Baker
87feb6b076 Revert accidental commit 2015-08-14 15:37:41 +01:00
David Baker
c5e33352b0 You can't just use React classes as normal static classes :( 2015-08-14 15:25:05 +01:00
Matthew Hodgson
9ed5ca3ccb implement a pretty droptarget when uploading files 2015-08-14 13:20:39 +01:00
David Baker
7bdf612ad5 argh 2 2015-08-14 11:25:54 +01:00
David Baker
6d390ebd2f Argh 2015-08-14 11:24:41 +01:00
David Baker
e5099ce3b7 Don't clobber the ready state if the sdk isn't ready yet 2015-08-14 10:31:09 +01:00
David Baker
a3879b507a Fix default avatars 2015-08-14 10:30:47 +01:00
Matthew Hodgson
001d1c50ef factor out MRoomMemberTile, MCallInviteTile, MCallAnswerTile and MCallHangupTile to just use EventAsTextTile and thus reduce duplication enormously 2015-08-14 00:28:37 +01:00
David Baker
fec266f1c0 Move avatars into their own components so I can add functionality like custom default avatars and onerror sources without having to add it in 13 separate places. Add the aforementioned features. 2015-08-13 19:30:02 +01:00
David Baker
b580fba7db Rooms with notifs turned off should still go bold. 2015-08-13 16:43:59 +01:00
David Baker
8bb836ad49 Assuming this was meant to be temporary 2015-08-12 18:26:43 +01:00
David Baker
eb36a2b242 If we were loaded with a room alias, don't lose that alias when we try to load the corresponding room. 2015-08-12 17:06:45 +01:00
Matthew Hodgson
18be8530fe put key='' on the right element 2015-08-12 01:45:04 +01:00
Matthew Hodgson
566c0437c0 provide a way to hide the notification nag toolbar 2015-08-12 00:42:04 +01:00
David Baker
a20b4d2d2c If we have a current room on load, we should display it! 2015-08-11 17:24:12 +01:00
David Baker
be5aaeaad7 Don't try to fill space if we don't have a message wrapper 2015-08-11 17:20:31 +01:00
David Baker
18c56a171e Focus composer on alt-up/down 2015-08-11 14:43:52 +01:00
David Baker
a45785fe1a Fix blank page on login 2015-08-10 17:12:31 +01:00
David Baker
19d350e876 Merge branch 'email_login' 2015-08-10 16:25:04 +01:00
David Baker
7a1796870a Handle old server that don't support login using email address 2015-08-10 16:22:33 +01:00
David Baker
96cedc237e Actually change to vector IS 2015-08-10 15:50:26 +01:00
David Baker
6ab993f1a9 Change default IS to vector 2015-08-10 15:27:36 +01:00
David Baker
efcc2061b8 Hopefully port over ndarilek's accessibility changes to Vector (albeit with list elements contained within RoomView) 2015-08-10 15:17:15 +01:00
David Baker
711bf583ab missed a file 2015-08-06 16:04:22 +01:00
David Baker
2771907573 Support room aliases in url bar and show them for rooms that have them 2015-08-06 14:58:52 +01:00
David Baker
cdbbf4bfef Don't re-set savedParams, we did it earlier 2015-08-04 18:04:56 +01:00
David Baker
5cffee7ce6 stop matrix client on logout please 2015-08-04 16:45:39 +01:00
David Baker
9d8d4e4896 Support email login 2015-08-04 16:30:41 +01:00
David Baker
259d9dc3a2 Handle THREEPID_IN_USE error 2015-08-04 14:49:01 +01:00
David Baker
674f90f27f If no Notifications, we essentially don't have permission (should fix on iOS) 2015-07-23 19:33:37 -07:00
David Baker
6f62211465 Return to root URL on log out. 2015-07-22 21:40:13 -07:00
David Baker
c2e92045d0 Don't announce that we've entered the null room on login if there are no rooms. 2015-07-22 21:37:46 -07:00
David Baker
9847383ba6 Commit imageview files 2015-07-22 20:37:08 -07:00
David Baker
772053713a lightbox image viewing (that needs CSS) 2015-07-22 16:04:29 -07:00
Erik Johnston
51d2677525 Prompt if a user really wants to leave the room 2015-07-22 17:53:18 +01:00
Kegan Dougal
fbb6775523 Implement unread message status when scrolled up. 2015-07-22 14:49:32 +01:00
Kegan Dougal
8b0db49b8b Bugfix: Accepting an invite no longer results in a stale membership list. 2015-07-22 14:10:06 +01:00
Erik Johnston
431c93fc29 Fix invites so they display in room list 2015-07-22 13:57:48 +01:00
Erik Johnston
0016c2ad83 Also change URL when going to next/prev room 2015-07-22 13:47:08 +01:00
Erik Johnston
ed1cb44deb Show Loader while leaving 2015-07-22 13:39:36 +01:00
Erik Johnston
b9fd174f72 Merge branch 'master' of github.com:vector-im/vector-web into leave_room_button 2015-07-22 13:30:34 +01:00
Kegan Dougal
d4147c1315 Don't allow blank messages to be sent. 2015-07-22 13:15:12 +01:00
Kegan Dougal
7e42072952 Scroll to bottom when there are live call updates.
This keeps the latest messages visible when you place or receive a call.
2015-07-22 13:04:18 +01:00
Erik Johnston
6bfc566d9a Switch to another room when we succesfully leave a room 2015-07-22 11:41:32 +01:00
Erik Johnston
5835ea0a97 Only display rooms you're currently joined to in recents 2015-07-22 11:33:46 +01:00
Kegan Dougal
e80cf8a133 Bugfix: Scroll to the bottom more reliably on new incoming messages.
Added some padding to the calculation which means the scrollbar can
be scrolled up a bit and still get bumped down. Scroll a lot though
and it will not keep bumping you down (parity with Angular)
2015-07-22 11:12:45 +01:00
Mark Haines
e1aca588b5 Clear local storage *before* creating the client, Otherwise we will blow away anything that the client tried to persist after it was created 2015-07-22 09:43:40 +01:00
David Baker
2eba2280d8 Don't barf if we we can't get a given room ID 2015-07-21 20:34:55 -07:00
Matthew Hodgson
a2f5933417 make aux panel behave vaguely intelligently 2015-07-21 15:43:54 -07:00
David Baker
9af09de7d4 Dispatch notifier_enabled when permission given if we don't already have it. 2015-07-21 15:35:30 -07:00
Matthew Hodgson
aaa96f1ac1 vicious rewrite of the CSS to support the notifications toolbar, removing all height: 100%'s and letting the flexbox stuff calculate auto-height instead. may have slowed down the rendering, especially when the toolbar is visible 2015-07-21 15:03:05 -07:00
David Baker
e03809b224 Merge pull request #16 from matrix-org/markjh/end-to-end
Add basic support for end-to-end crypto using olm.
2015-07-21 13:21:43 -07:00
David Baker
6fc910a259 Don't try to set page_type if not logged in 2015-07-21 11:12:59 -07:00
David Baker
959c0f0669 Order room members by lastActiveAgo 2015-07-21 11:05:54 -07:00
Kegan Dougal
2160440ff1 Add and impl resend button. Update UI when failing to send messages. 2015-07-21 18:05:22 +01:00
Mark Haines
f036a10a7d Add missing src/encryption.js file 2015-07-21 17:00:57 +01:00
Mark Haines
6bb6eafdc0 Hook up slash commands to enable and disable encryption for a room so that we can experiment with encryption while we wait for the rest of the UI to exist 2015-07-21 16:46:17 +01:00
Kegan Dougal
e0496305aa Log when presence is set. 2015-07-21 16:23:21 +01:00
Kegan Dougal
2698405e2f Add MatrixToolbar CSS. Make the toolbar part of RoomView and don't cover the UI (shift it instead) 2015-07-21 16:17:50 +01:00
Kegan Dougal
c1de5e9e95 Factor out logic from EnableNotificationsButton(!) and reuse MatrixToolbar.
Added notification logic to Notifier; dispatch notifier_enabled when toggled
so the toolbar can be shown/hidden and the button text can be kept in sync.
Add MatrixToolbar back into MatrixChat for notification nagging.
2015-07-21 16:17:50 +01:00
Erik Johnston
c5d84562ba Move logic from view to controller 2015-07-21 15:24:10 +01:00
Erik Johnston
89f6459915 Merge branch 'vector' of github.com:matrix-org/matrix-react-sdk into erikj/room_editing 2015-07-21 14:14:48 +01:00
Erik Johnston
b8e1927e82 Use getDefaultProps instead of setting porps 2015-07-21 14:14:15 +01:00
Erik Johnston
d81260c92a Use getDefaultProps instead of setting porps 2015-07-21 14:13:59 +01:00
Kegan Dougal
2454a71b38 Implement create/remove mod button. 2015-07-21 13:24:59 +01:00
Mark Haines
726ee7b50b Hook up the encrypt button when creating rooms 2015-07-21 12:03:15 +01:00
Kegan Dougal
13f04f77dc Tidy up power level logic. Add 'Moderator' label to members. 2015-07-21 11:43:18 +01:00
Kegan Dougal
2e2cecdd4f Implement kick/ban/[un]mute buttons on member list dialogs. 2015-07-21 11:26:02 +01:00
Erik Johnston
2bec7ec981 Add spinner while uploading state 2015-07-21 11:02:36 +01:00
Erik Johnston
0b1b6057d6 Merge branch 'vector' of github.com:matrix-org/matrix-react-sdk into erikj/room_editing 2015-07-21 10:39:46 +01:00
Matthew Hodgson
12c824323d rename DirectoryMenu as BottomLeftMenu and implement a really really really basic RoomDirectory 2015-07-20 20:11:33 -07:00
Matthew Hodgson
fe71f69f0a rename EditableText's placeHolder parameter to be 'label' to avoid colliding with the HTML5 placeholder parameter 2015-07-20 20:11:33 -07:00
David Baker
e0673eee29 Don't go & load the first room if we've already been told to load a different one. 2015-07-20 14:09:41 -07:00
David Baker
36b1280f0c Bookmarkable room URLs 2015-07-20 12:20:35 -07:00
Erik Johnston
813cf0481e Merge branch 'vector' of github.com:matrix-org/matrix-react-sdk into erikj/room_editing 2015-07-20 18:18:04 +01:00
David Baker
0a3cddbd89 Merge pull request #13 from matrix-org/markjh/vector-cleanup-client-peg
Markjh/vector cleanup client peg
2015-07-20 10:12:16 -07:00
David Baker
e9b2cd1364 Allow input history to go forwards again to the empty field 2015-07-20 10:05:53 -07:00
Kegan Dougal
5d59a5b297 Change opacity of member list entries when their presence changes.
This is done by attaching a single room listener at the member list level and
then forceUpdate()ing the individual tiles as presence changes come in from
the JS SDK. This is more efficient than having hundreds of listeners attached
directly to the JS SDK (if we were to add a listener per tile).
2015-07-20 17:42:19 +01:00
Erik Johnston
3a7ebf73eb Wire up changing of power levels 2015-07-20 17:31:40 +01:00
Kegan Dougal
9d110d58e5 Manage presence of the client (same semantics as angular) 2015-07-20 17:14:29 +01:00
Kegan Dougal
bcab2f231a Add error dialogs for invites and call timeouts. 2015-07-20 16:40:00 +01:00
Erik Johnston
1b6ca2b0ee Merge branch 'vector' of github.com:matrix-org/matrix-react-sdk into erikj/room_editing 2015-07-20 16:31:02 +01:00