Commit Graph

5701 Commits (122d4d3503d08f79d6a3b26c26b78ea012b77ee4)

Author SHA1 Message Date
David Baker e1f3c80f19 Display who's typing 2015-07-19 16:38:56 +01:00
David Baker 73c8eb7738 Send typing notifs 2015-07-19 15:29:16 +01:00
David Baker 85748c09cf Linkify emote tiles 2015-07-19 10:43:16 +01:00
Matthew Hodgson 1e1f7492d8 basic skin of incomingCallBox 2015-07-19 01:58:04 +01:00
Matthew Hodgson 919e1cf84f unbreak voice calls 2015-07-19 00:36:23 +01:00
Matthew Hodgson c83ff1c623 hide events with no text equiv 2015-07-18 19:06:36 +01:00
Matthew Hodgson 5a12a4a1a3 don't break the layout with unrecognised join events 2015-07-18 02:17:10 +01:00
Matthew Hodgson 10cdf46c2c s/that/self/g 2015-07-17 21:59:48 +01:00
Matthew Hodgson 348aa3e5e1 fix up memberlist a bit more 2015-07-17 21:29:41 +01:00
David Baker 5f367f7c75 missing event listener remove 2015-07-17 19:01:11 +01:00
David Baker 5c7bef3107 Add topic changes to timeline by adding a tile that just uses TextForEvent 2015-07-17 18:49:48 +01:00
Matthew Hodgson ddb426095e /topic 2015-07-17 18:14:05 +01:00
David Baker 214ef4b4ce Tidy up profile picture setting & fix notification bug 2015-07-17 17:13:51 +01:00
Kegan Dougal 812eb66ed5 Play ringback/busy/callend audio at the right times. 2015-07-17 17:05:11 +01:00
Kegan Dougal 827e777079 Implement ringing audio. Add other audio tags. 2015-07-17 16:42:26 +01:00
David Baker ff567faeaa Profile picture setting and notifdications thereof. 2015-07-17 16:41:46 +01:00
David Baker a730804943 there is no content.target - it's state_key. Also, warn if no target 2015-07-17 15:55:36 +01:00
David Baker 1df8e65cdf argh javascript 2015-07-17 14:42:36 +01:00
David Baker 383a958abe Merge branch 'vector' of github.com:matrix-org/matrix-react-sdk into vector 2015-07-17 14:36:15 +01:00
David Baker 9a79539978 missed removeventlistener 2015-07-17 14:35:33 +01:00
Kegan Dougal 5c6b8a4cf9 Merge branch 'irc-style-commands' into vector 2015-07-17 14:26:58 +01:00
Kegan Dougal b6f9ca0f95 When accepting calls, go to the right room. Relink video elements when CallView loads. 2015-07-17 14:25:51 +01:00
David Baker 6a76d8ace8 Update room header when room name changes 2015-07-17 13:48:24 +01:00
David Baker b53640f892 Just return nothing for unknown events 2015-07-17 12:23:24 +01:00
David Baker 00c45e48a9 Merge branch 'vector' into irc-style-commands 2015-07-17 12:03:10 +01:00
David Baker 37108ac56c Make notifications sensible again and have information once and only once. 2015-07-17 11:57:26 +01:00
David Baker 1b03aa8119 Display nick changes and factor out getting text for events into a common place. 2015-07-17 11:57:26 +01:00
Kegan Dougal 2bb2295499 Implement /join 2015-07-17 11:48:40 +01:00
Kegan Dougal 001372ec39 Fix nick changes 2015-07-17 11:13:05 +01:00
Kegan Dougal c8caf34777 Merge branch 'vector' into irc-style-commands 2015-07-17 09:17:58 +01:00
Matthew Hodgson 1a95148dae basic date separator support 2015-07-17 00:12:53 +01:00
David Baker 0f39ec580f Slightly improve error messages 2015-07-16 22:06:00 +01:00
David Baker d08c47a328 Fix npe 2015-07-16 21:45:59 +01:00
David Baker cfbef0177e Fix custom server or registration & do some of new login UI 2015-07-16 19:30:27 +01:00
Kegan Dougal 1126769686 Merge branch 'vector' into irc-style-commands 2015-07-16 18:08:30 +01:00
Erik Johnston df999fb2f8 Remove deleted atoms 2015-07-16 18:03:29 +01:00
Kegan Dougal 91943d8a45 Merge branch 'vector' into irc-style-commands 2015-07-16 17:41:30 +01:00
Kegan Dougal 9aa66c1d8b Add SlashCommands to functionally process /commands. 2015-07-16 17:41:12 +01:00
David Baker 03733e6a0f Merge pull request #9 from matrix-org/create_room
Wire in create room.
2015-07-16 17:37:48 +01:00
Erik Johnston 98160c3947 Add ability to remove people from invite list 2015-07-16 17:30:10 +01:00
Erik Johnston 68d60aadd1 Make Presets stateless 2015-07-16 17:24:33 +01:00
Erik Johnston aa1b763518 Make CreateRoom remember what the values of its fields were. Remove some fairly pointless atoms 2015-07-16 17:20:03 +01:00
David Baker 75f8363be0 Merge branch 'master' into vector 2015-07-16 16:53:27 +01:00
David Baker e6260987cc some s/then/done/ 2015-07-16 16:53:08 +01:00
David Baker 3a6423dd0a Merge branch 'master' into vector 2015-07-16 16:52:19 +01:00
David Baker 9b6060a363 Decouple login view & controller 2015-07-16 16:49:40 +01:00
Kegan Dougal 6b81022e28 Move position of incoming call buttons. 2015-07-16 16:32:21 +01:00
Erik Johnston ebedf0b907 Add comment about RoomAlias magic 2015-07-16 16:17:29 +01:00
Erik Johnston 95968bf619 Make server_name magix in RoomAlias optional 2015-07-16 16:14:55 +01:00
David Baker 50edc619af Merge branch 'master' into vector 2015-07-16 16:13:24 +01:00
David Baker 64042c9de8 Handle localstorage exceptions. 2015-07-16 16:12:54 +01:00
David Baker ebe6072225 Make this a done so it doesn't swallow exceptions 2015-07-16 16:04:31 +01:00
Erik Johnston cd26d1323f Wire together checkboxes and presets and use new /createRoom api 2015-07-16 15:55:46 +01:00
David Baker 155dd74a6f Merge pull request #8 from matrix-org/message-history-arrow-keys
Implement sent message history (up/down keys).
2015-07-16 15:41:57 +01:00
Kegan Dougal b043889169 Implement sent message history (up/down keys).
This includes preserving and restoring partially entered text per room. This
is mostly ported straight from Angular.
2015-07-16 15:22:46 +01:00
David Baker dac94d2293 mplement custom registration screen 2015-07-16 15:16:26 +01:00
David Baker 41bab56133 Merge pull request #7 from matrix-org/nick-completion
Implement nick completion (tab-complete).
2015-07-16 14:52:46 +01:00
Kegan Dougal 42c9766203 s/did/will/ 2015-07-16 14:39:15 +01:00
Kegan Dougal 6fbb7d7da4 Implement nick completion (tab-complete).
Including SHIFT+TAB to go backwards and the 'blink' css (which may need to be
factored out of the view). Mostly ported from Angular.
2015-07-16 14:25:57 +01:00
David Baker cf38b8a5bb Merge branch 'master' into vector 2015-07-16 14:19:50 +01:00
David Baker a6df6ca29b Don't forget form values on error 2015-07-16 14:19:13 +01:00
David Baker 7aa4d50560 Handle registration errors. 2015-07-16 14:08:52 +01:00
Erik Johnston c708976635 Wire up CreateRoom to UI. 2015-07-16 13:49:34 +01:00
Kegan Dougal 0a3a3dac1a Display call logs in the UI.
Display placed/incoming calls, answers and hangups.
2015-07-16 13:30:14 +01:00
Kegan Dougal c4379e4827 Remove 'status' from payload; unused. 2015-07-16 12:57:59 +01:00
David Baker 41f659db4c Merge branch 'master' into vector 2015-07-16 12:44:42 +01:00
David Baker df790c1b54 Refactor view/controller logic between files, fix syntax & silly bugs. 2015-07-16 12:44:04 +01:00
David Baker a6f857e9d8 Merge pull request #6 from matrix-org/voip
VoIP addition
2015-07-16 12:31:36 +01:00
Kegan Dougal 5f3721f471 Tidying up 2015-07-16 11:54:53 +01:00
Kegan Dougal c056bdf104 Only allow calls to be placed if there are 2 joined members. 2015-07-16 11:34:39 +01:00
Kegan Dougal 50f9d34211 Only display video elements in video calls. 2015-07-16 11:30:34 +01:00
Kegan Dougal eedd437ca7 Minimal CSS bodge so the video actually dies when the call ends. 2015-07-16 11:21:43 +01:00
Kegan Dougal 7ffd97b5dc Implement call FSM. All works. 2015-07-16 11:05:09 +01:00
Erik Johnston f17a9b14c2 Merge branch 'vector' of github.com:matrix-org/matrix-react-sdk into user_settings 2015-07-16 10:46:40 +01:00
Erik Johnston ca593b8544 Remove commented out code 2015-07-16 10:39:58 +01:00
Erik Johnston 5d99abf18c Correctly pull in client version from package.json 2015-07-16 10:38:00 +01:00
David Baker 139b92fcd6 Merge branch 'master' into vector 2015-07-16 10:33:53 +01:00
Kegan Dougal ecd1f09095 Glue in video elements. 2015-07-16 10:26:41 +01:00
Erik Johnston 02045858f7 Wire up change password 2015-07-16 10:23:31 +01:00
David Baker e2757b3587 Merge pull request #4 from matrix-org/registration
Registration
2015-07-16 09:58:53 +01:00
David Baker 931a4f29c8 Argh, accidentally committed again 2015-07-16 09:57:14 +01:00
Erik Johnston bc93aeb50e Flesh out the user_settings page 2015-07-16 09:37:58 +01:00
Erik Johnston 1b4358624f Add a basic modal dialog implementation 2015-07-16 09:37:14 +01:00
David Baker 77114e0081 Improve registration so the container page can pick what URL it's going to route through to registration. 2015-07-15 20:33:12 +01:00
David Baker 23d9cee299 didn't mean to commit that 2015-07-15 19:30:10 +01:00
David Baker 4756427e61 First cut working regisatration 2015-07-15 19:25:36 +01:00
Kegan Dougal 4f132c418f Fix a couple state bugs. 2015-07-15 17:48:26 +01:00
Kegan Dougal 14a4da54f8 Wire up hangup/answer buttons. 2015-07-15 17:36:47 +01:00
Kegan Dougal 37c9c8fbb4 Add CallHandler singleton and add CallView.
CallView is the container for either VideoViews or WaveformViews. All UI
elements listen for 'call_state' payloads and then call
CallHandler.getCall(roomId) to extract the current MatrixCall for that room.
We can't do this via stateful dispatches because dispatching does not preserve
ordering empirically (probably due to setTimeout).
2015-07-15 16:52:23 +01:00
Kegan Dougal 6316f1b195 Add call handling logic. Outbound voice calls work! 2015-07-15 15:36:45 +01:00
Erik Johnston 2b81f46030 Add placeHolder prop for EditableText 2015-07-15 15:04:39 +01:00
Erik Johnston dfd54f3b95 Basic structure of user settings 2015-07-15 15:04:24 +01:00
Kegan Dougal 7e30c0f47b Add CallHandler to handle call logic and make VideoViews/WaveformViews. 2015-07-15 14:57:52 +01:00
Kegan Dougal 28cebab9a3 Add voip subdirectory. 2015-07-15 14:35:04 +01:00
Kegan Dougal 7cbb43fddb Merge branch 'vector' into voip
Conflicts:
	src/ComponentBroker.js
2015-07-15 14:21:58 +01:00
Kegan Dougal 78bea916e1 Dispatch events when calls are made/received. 2015-07-15 14:06:44 +01:00
Erik Johnston 844a883ad8 Merge branch 'master' of github.com:matrix-org/matrix-react-sdk into vector 2015-07-15 13:59:24 +01:00
Erik Johnston 5cd92229eb Add an editable text atom 2015-07-15 13:55:43 +01:00
Kegan Dougal f94a061fda Add onClick listeners. Add getters for refs. 2015-07-15 13:34:11 +01:00
Kegan Dougal aba103b8e0 Add VideoFeed atom and VideoView organism. 2015-07-15 13:09:15 +01:00
Erik Johnston 2fc08aeb12 Merge branch 'master' of github.com:matrix-org/matrix-react-sdk into vector 2015-07-15 10:36:47 +01:00
Matthew Hodgson 9b384e52b5 implement latest skin 2015-07-15 04:16:38 +01:00
David Baker 03d048c06f Get as far as requesting a token 2015-07-14 19:39:18 +01:00
David Baker aacc31b2ce Registration works with recaptcha 2015-07-14 18:46:15 +01:00
Erik Johnston bb06b752b4 Document CreateRoom phases 2015-07-14 17:40:49 +01:00
Erik Johnston c4764af9a2 Add phases to CreateRoom organism 2015-07-14 17:27:22 +01:00
Erik Johnston 03b715b8bf Add onRoomCreated callback to CreateRoom organism 2015-07-14 17:01:06 +01:00
Erik Johnston a748c090fb Move all element specific code into skins/ 2015-07-14 16:59:11 +01:00
Erik Johnston b53e710d20 Add invite selection to create room dialog 2015-07-14 16:53:49 +01:00
Erik Johnston ed52cdf6df Add basic CreateRoom organism. Supports setting room name and selecting preset 2015-07-14 15:17:49 +01:00
Matthew Hodgson dff9353339 tabs->spaces everywhere; sorry folks - \!blame sublime 2015-07-14 12:11:01 +01:00
Matthew Hodgson 69d1844773 fix NPE for invites 2015-07-14 12:10:15 +01:00
Matthew Hodgson 6b0167375c badges and broken avatars 2015-07-14 02:13:00 +01:00
Matthew Hodgson 341fe868e4 group messages together from the same user 2015-07-14 00:25:51 +01:00
David Baker a7e4a2847e Start of registration support. 2015-07-13 19:14:02 +01:00
Matthew Hodgson bfe0cdcfd1 vector wireframes 2015-07-13 01:51:24 +01:00
David Baker ed2cc33616 Linkify user IDs and room aliases (to nothing at the moment because we don't have anything to do with them) 2015-07-10 14:37:13 +01:00
David Baker a00510c1ca Linkify URLs 2015-07-09 15:41:19 +01:00
David Baker 12566c0c9c Separate with space too 2015-07-08 19:57:58 +01:00
David Baker 6a92fdc5e6 Fix file size display 2015-07-08 19:52:44 +01:00
David Baker 03451d8c7d Sort rooms for prev/next purposes 2015-07-08 19:47:58 +01:00
David Baker bdfef5eedd damn you javascript 2015-07-08 18:28:30 +01:00
David Baker c14886a1ee rename to mostRecentActivityFirst to disambiguate from sorting by when you joined a room, which this is not. 2015-07-08 18:21:57 +01:00
David Baker d58fdef362 Order room list by most recent activity 2015-07-08 18:18:03 +01:00
David Baker a591b66732 Don't barf if no info in m.file content 2015-07-08 16:50:49 +01:00
David Baker 5bed0b7275 typo 2015-07-08 16:32:03 +01:00
David Baker 53e9d030b7 See uploaded files 2015-07-08 16:25:27 +01:00
David Baker 36ecbfc87f Upload files and images 2015-07-08 14:34:53 +01:00
David Baker 00dd1e180a focus message composer when window gets focus 2015-07-07 13:30:38 +01:00
David Baker 9f37196eb7 Fix infinite scrolling 2015-07-07 11:00:02 +01:00
Matthew Hodgson 205ed54ec7 merge in matthew-css 2015-07-07 03:44:57 +01:00
David Baker 3e87e043d6 Fix docs 2015-07-06 18:29:24 +01:00
David Baker b4abe870cf Image displaying! 2015-07-06 18:09:19 +01:00
David Baker dcb4b5f912 Add room membership messages 2015-07-06 16:04:09 +01:00
David Baker 6c35908949 Add example shwing how to customise, make customising work and document all the ways in which browserify will break and how to work around it being dumb. 2015-07-06 14:13:02 +01:00
David Baker 1c03eabadb Not all events have a sender 2015-07-03 16:46:30 +01:00
David Baker b8f9cb44b8 argh, javascript 2015-07-03 16:35:06 +01:00
David Baker 1baaf39c48 update notification button when permission granted 2015-07-03 16:29:41 +01:00
David Baker 196ee3f6d4 Only highlight room list for messages where we notify - this may want to be an option in the react client potentially. 2015-07-03 11:36:44 +01:00
David Baker 53b0ba56db add license header 2015-07-03 11:24:04 +01:00
David Baker fd20e82123 Add desktop notifications, overridable in the same way as other components (although it's not a react component). Also extend the flux dispatcher a little to be less dumb about dispatching while something else is already dispatching. 2015-07-03 11:12:54 +01:00
David Baker 947f389e51 be more consistent with naming 2015-07-02 13:18:03 +01:00
David Baker acfe05db9d Use new push actions method on client 2015-07-01 14:11:23 +01:00
David Baker 898737d806 or is not and 2015-06-29 16:50:26 +01:00
David Baker 46646cbd87 Highlight room tiles on bing 2015-06-29 16:48:13 +01:00
David Baker 57ba816919 Highlight messages using new push rules support in js sdk 2015-06-29 16:24:02 +01:00
David Baker 9aa9a60333 Some checks to see whether stuff is still mounted when adding things. 2015-06-25 17:52:40 +01:00
David Baker 30a9436485 Room List should ignore paginated events 2015-06-25 17:44:27 +01:00
David Baker dd0d6159ce Make alt+up/down change rooms 2015-06-25 17:41:55 +01:00
David Baker fae629ea65 Use the pagination token to see when we've reached the room's birth 2015-06-25 15:58:51 +01:00
David Baker 5d44de9e08 Load limited number of room members when we first switch to a room, loading the rest a little later: makes switchign to large rooms much more responsive. 2015-06-25 14:57:35 +01:00
David Baker 209e052025 Limit the number of messages we load into a chat room when we switch to it (or more accurately, switch back to it). 2015-06-25 14:36:24 +01:00
David Baker 2355d5e6b5 Fix the permagrey local-echo bug 2015-06-24 18:15:34 +01:00
David Baker c54bed02c1 Argh, javascript 2015-06-24 14:09:38 +01:00
David Baker a54a7f80aa Apparently Object.keys is kinda slow 2015-06-24 14:01:59 +01:00
David Baker 52f6fa89a1 Only show joined and invited members 2015-06-24 13:48:39 +01:00
David Baker 8f1258b6cc Infinite scrolling 2015-06-24 13:28:44 +01:00
Matthew Hodgson aaa38d95ba s/themes/skins/g as we are always describing the whole UI layout here, whereas themes can sometimes just be small cosmetic tweaks (light-on-dark, dark-on-light etc) 2015-06-23 18:28:20 +01:00
David Baker 0c26206b88 Copyright headers (and use strict, while we're at it). 2015-06-23 16:41:25 +01:00
David Baker a022a4b9a6 Reshuffle to put "HTML" (JSX) and CSS together as a theme with logic elsewhere. 2015-06-23 14:40:50 +01:00
David Baker cc4fa6140c Fix joining 2015-06-23 11:36:19 +01:00
David Baker d10b1457ba obey room name changes 2015-06-22 15:56:16 +01:00
David Baker c425886a45 handle room invites 2015-06-22 14:48:58 +01:00
David Baker 2ba4ad04d1 Little fixes on member list 2015-06-22 13:15:14 +01:00
David Baker 0424ef07b3 Add member list (that doesn't really update much yet) 2015-06-22 11:42:09 +01:00
David Baker e77e9b7704 Add displayNames so they're not all just 'exports' in the react debugger 2015-06-19 16:21:09 +01:00
David Baker 41014af471 Display new rooms as they arrive 2015-06-19 16:12:22 +01:00
David Baker 1270bc3c62 m.notice 2015-06-19 14:01:17 +01:00
David Baker 2abea931ca Split out render methods into 'views' leaving UI logic in 'controllers'. Hopefully should make it easier to skin / customise. 2015-06-19 12:53:48 +01:00
David Baker 847e816035 grey out sending messages (although they don't go black until you send another message currently: awaiting fix in js sdk). 2015-06-18 15:49:41 +01:00
David Baker b31794cda5 Focus the text box at appropriate times 2015-06-18 15:03:57 +01:00
David Baker 90f6764cbf Fix cleaning unread state on room select & ignore our own messages 2015-06-18 14:40:55 +01:00
David Baker 7c405f673a Highlight rooms with unread messages 2015-06-18 14:35:17 +01:00
David Baker a63299aae0 Message scrolling 2015-06-18 11:23:35 +01:00
David Baker ed58a59f82 Switch everything over to use the component broker. 2015-06-17 16:43:29 +01:00
David Baker b35461f5c0 Unused require 2015-06-16 18:35:37 +01:00
David Baker c9a546b73b Load all components* through a central broker so we can overrride them with different ones
* only one place actually uses it currently
2015-06-16 18:18:55 +01:00
David Baker acaff68748 Oops, commit the emote tile. 2015-06-16 18:18:34 +01:00
David Baker 3a16c8a764 The most important feature 2015-06-16 15:29:13 +01:00
David Baker e2348c50d5 Fix logout 2015-06-16 14:37:15 +01:00
David Baker 1dbc54e172 Oops, put key in the right place 2015-06-16 14:31:35 +01:00
David Baker 2bd5b0fdad Just be a little less ugly 2015-06-16 14:27:13 +01:00
David Baker f25bf58d6d Use JS-SDK recommended way of getting sender name. 2015-06-16 14:19:46 +01:00
David Baker 672258f604 Start rendering messages with something more than the json 2015-06-16 11:58:03 +01:00
David Baker 88e9ab02f9 Yay, message sending. 2015-06-16 11:08:27 +01:00
David Baker b2843b09bc Rest of commit adding messagecomposer, and put li's in ul. 2015-06-16 10:41:05 +01:00
David Baker a0c5fb4a8b Add not-working-yet text box, plus a bit more css 2015-06-15 18:35:28 +01:00
David Baker 2a15b3a98c css tweaking 2015-06-15 15:50:24 +01:00
David Baker 52286b2316 Prevent default otherwise the form will submit and reload the page 2015-06-15 11:00:39 +01:00
David Baker 4bb570c545 messages arrive! 2015-06-12 18:17:54 +01:00
David Baker 0b0e6adce3 Make room changing work 2015-06-12 18:01:38 +01:00
David Baker 125fa78bc6 Something starting to resemble a Matrix Client 2015-06-12 17:34:17 +01:00
David Baker 2f6a123118 more Matrixy naming 2015-06-12 15:01:36 +01:00
David Baker 971a7c1133 Display the room list 2015-06-12 14:59:33 +01:00
David Baker 5f970edac5 strip out cruft 2015-06-12 13:49:23 +01:00
David Baker ffb0dc78b8 Fixes to login, and change to not use the dispatcher because it's just unnecessary here 2015-06-12 13:45:22 +01:00
David Baker e28fde7ae1 Save creds to localstorage 2015-06-12 13:12:39 +01:00
David Baker add78c6e92 Oops: the file modifications for making it log in. 2015-06-11 18:25:29 +01:00
David Baker f487b9ba04 Make it log in 2015-06-11 18:23:02 +01:00
David Baker eeb2dfd1fc uglify at the end so we can also mangle names, and don't bother uglifying individual modules with -g as it doesn't seem to make any difference 2015-06-11 17:46:25 +01:00
David Baker c42733ec95 Basic structure of a react SDK and start of an implementation. 2015-06-09 17:40:42 +01:00