Commit Graph

5823 Commits (15cadd864c9bcb91b4308e297abe1673c5c6cc6b)

Author SHA1 Message Date
Kegan Dougal 659fc8fcfb Point to new Spinner location 2015-11-26 14:24:21 +00:00
Kegan Dougal 1dc4e14606 Import things at the right levels 2015-11-26 13:49:39 +00:00
Kegan Dougal 7846d49403 Add missing deps; Move stuff in 'views' to have functional descriptors 2015-11-26 13:45:04 +00:00
Kegan Dougal 776369299d Move login components to views 2015-11-26 13:27:52 +00:00
Kegan Dougal b69fff5b01 Define component directories. Merge MemberAvatar and RoomAvatar to new-style components.
Spoken to @ara4n about names/conventions. Settled on the following layout:

  src/components
      |_____________views
      |               |____ tiles
      |               |       |___ MTextTile.js
      |               |       |___ MNoticeTile.js
      |               |       |___ ...
      |               |
      |               |____ avatars
      |               |       |____ RoomAvatar.js
      |               |       |____ MemberAvatar.js
      |               |       |____ ...
      |               |
      |               |____ ...
      |
      |_____________structures
                      |____ RoomView.js
                      |____ UserSettings.js
                      |____ CreateRoom.js
                      |____ ...

Views are the "pure UI" components which can be reused. Structures are the
wire components which give important contextual information to the views e.g.
a view may be MemberList, but it's where it is in the structure that defines
that it is a *Room* MemberList.
2015-11-26 12:02:31 +00:00
Kegan Dougal f5e2a54603 Only send HTML if we need to. 2015-11-20 17:30:14 +00:00
Matthew Hodgson 2e32383570 fix up the textbox after hitting enter 2015-11-20 17:09:28 +00:00
Kegan Dougal b12fc67a63 Add markdown support (enabled by default) 2015-11-20 16:08:57 +00:00
Kegan Dougal 032fdc0abc Remove diff clutter 2015-11-20 14:32:00 +00:00
Kegan Dougal 1a72cb56c6 Log an error for unknown screens 2015-11-20 14:26:49 +00:00
Kegan Dougal d46e42f8e7 Have a post-registration screen. Fix race in ChangeAvatar where if you hadn't got an initial avatar downloaded yet you couldn't update it after the component loaded. 2015-11-20 11:57:04 +00:00
Kegan Dougal ad60e23459 Correctly display an error if a bad IS URL is entered. 2015-11-20 10:37:46 +00:00
Kegan Dougal 05a7d76785 Remove old Register files 2015-11-20 10:15:18 +00:00
Kegan Dougal 030e2f0979 Move CaptchaForm from Vector to React SDK 2015-11-20 10:14:00 +00:00
Kegan Dougal cad3afc7a4 Remove unhelpful log lines 2015-11-20 10:11:51 +00:00
Kegan Dougal 23467de016 Remove missed debug log 2015-11-19 16:47:28 +00:00
Kegan Dougal b12f0f1df7 Minor refactoring; remove debug logging; add comments 2015-11-19 16:07:58 +00:00
Kegan Dougal cc74676718 Mostly fix 2nd step email registration
- Don't send u/p: null
- Remove unused functions
- Moar logging

Still doesn't work yet though.
2015-11-19 15:19:30 +00:00
Kegan Dougal 7568a3b2d3 Hookup 2nd stage email registration; not finished as we aren't storing u/p 2015-11-19 14:16:49 +00:00
Kegan Dougal 8d7d338f44 Pass the right session ID 2015-11-19 13:58:34 +00:00
Kegan Dougal f2f5496b78 Get email auth sending working (not the link back though) 2015-11-19 11:41:49 +00:00
Kegan Dougal e800d3d477 Merge branch 'develop' into kegan/reg-refactor 2015-11-19 09:50:32 +00:00
Kegan Dougal 3e903be73d Get Recaptcha working again. Add a backchannel for stage prodding.
Recaptcha is a special snowflake because it dynamically loads the script
and THEN renders with info from the registration request. This means we
need a back-channel for the UI component to 'tell' the stage that everything
is loaded. This Just Works which is nice.
2015-11-18 17:43:38 +00:00
Kegan Dougal 991a96cfc5 Get dummy registrations working
This means you can now register on localhost without needing an email. Email
and Recaptcha are still broken.
2015-11-18 17:13:43 +00:00
David Baker caabe02fca Merge pull request #32 from matrix-org/read_receipts
Read receipts
2015-11-18 14:53:25 +00:00
David Baker 31b083d93e new Date() syntax & units on var name 2015-11-18 14:51:06 +00:00
David Baker 0df0935b9c Fix presence exception. Yay, javascript. 2015-11-18 09:57:14 +00:00
Kegan Dougal 1fca3f6606 Better const name 2015-11-17 17:38:37 +00:00
Matthew Hodgson 95cdbe3a48 stop launch from wedging solid for 5 minutes >:( 2015-11-17 17:36:15 +00:00
Kegan Dougal 0f34f8b494 Extend from a Signup class to keep hs/is URL logic together 2015-11-17 17:25:14 +00:00
Kegan Dougal 257a65de14 Fix path resolution 2015-11-17 13:26:07 +00:00
Kegsay 9f7a504a20 Merge pull request #31 from matrix-org/kegan/login-refactor
Refactor login page
2015-11-17 10:47:47 +00:00
Matthew Hodgson e9132a873b experiment with turning the UserSettings controller into a UserSettingsStore logic class 2015-11-17 02:13:42 +00:00
Matthew Hodgson 0d1c06d586 relayout whenever the input textarea's scrollheight increases 2015-11-15 21:37:22 +00:00
Matthew Hodgson 152872b342 don't clobber the initial room to roomdirectory 2015-11-15 03:58:05 +00:00
Matthew Hodgson 999bb9a206 implement multiline input 2015-11-15 03:36:59 +00:00
Kegan Dougal 900b7dd94a Guard onLoggedIn since registration uses it too and that isn't done yet 2015-11-12 16:14:01 +00:00
Kegan Dougal b8d579ac5c Remove old login code 2015-11-12 15:53:50 +00:00
Kegan Dougal ccd24dd3ea Move Cas/PasswordLogin to a new directory so it isn't confused with existing stuff 2015-11-12 15:28:57 +00:00
Kegan Dougal b127c30436 Implement logging in via password 2015-11-12 15:15:00 +00:00
Kegan Dougal f4dd88ed64 Remove ServerConfig; Add Signup logic class
- ServerConfig seems too specific to Vector, but we can always add it back later.
- Signup.js contains all the logic for determining what to show which was
  previously in UI components.
2015-11-12 11:54:35 +00:00
Matthew Hodgson a082a24f9a fix previous commit to allow deep-linking to specific pages better 2015-11-11 02:32:16 +01:00
Matthew Hodgson 6ad210cde3 support tracking URLs for settings, new & directory 2015-11-11 02:01:48 +01:00
Matthew Hodgson ab10f1d6b0 fix warning 2015-11-11 02:01:37 +01:00
Matthew Hodgson a4968ca967 don't break if the user misses out an email address 2015-11-11 00:05:14 +01:00
Matthew Hodgson b669f587de be less shouty 2015-11-11 00:05:00 +01:00
Matthew Hodgson e7be1ae832 you don't have to pass a description, and if you do, it could be JSX or a string 2015-11-11 00:04:50 +01:00
Matthew Hodgson d0a4f908cf fix nightmarish underscore-versus-camelcase confusion in propTypes, and track default URLs for placeholder content 2015-11-11 00:04:30 +01:00
Matthew Hodgson 368c24e146 s/React/ReactDOM 2015-11-10 19:53:29 +00:00
Matthew Hodgson 5fea3c2673 store the custom HS/IS URL in local storage, add some review commentary 2015-11-10 19:10:30 +00:00
Matthew Hodgson 02ad2b5152 remove react-loader (not that the controller should be rendering spinners in the first place :( 2015-11-10 18:25:10 +00:00
David Baker 2f783a7ba9 Merge remote-tracking branch 'origin/develop' into read_receipts 2015-11-10 11:27:43 +00:00
Kegsay d4549e60cc Merge pull request #30 from matrix-org/kegan/3pid-invites
Support inviting by email address and hit the right API.
2015-11-10 10:57:17 +00:00
Matthew Hodgson b5402d0fa0 port to react 0.14, removing getDOMNode()s for DOM components and turning them into ReactDOM.findDOMNode()s for React components 2015-11-09 23:59:28 +00:00
Matthew Hodgson efd88b9a83 upgrade to react 0.14 2015-11-09 23:13:43 +00:00
Kegan Dougal 143483ec12 Support inviting by email address and hit the right API. 2015-11-09 17:36:14 +00:00
David Baker b556eff492 Merge pull request #28 from stevenhammerton/sh-cas-token-login
SH - CAS / Login Token Login Update
2015-11-06 15:40:56 +00:00
Steven Hammerton fec362c4df JS SDK no longer does redirect for us, get the URL and update browser window location 2015-11-06 12:12:51 +00:00
Steven Hammerton a7c53e99d9 Clear query params from url with a nasty location update 2015-11-06 11:42:13 +00:00
Steven Hammerton de165ea6ad Update CAS login to allow HS to do interaction with CAS and client receives and redeems login token 2015-11-06 11:21:13 +00:00
Kegan Dougal b0e71c9872 Fix bugs from typos from hackathon 2015-11-06 09:57:22 +00:00
David Baker 7882780357 Merge remote-tracking branch 'origin/develop' into read_receipts 2015-11-05 15:33:50 +00:00
David Baker f4e65f8e17 Remove name event listener 2015-11-05 15:07:46 +00:00
David Baker 3114422cb7 Merge remote-tracking branch 'origin/develop' into read_receipts 2015-11-05 15:05:29 +00:00
Kegan Dougal a7c6a923f0 Unbreak everything (JS SDK had breaking API change) 2015-11-05 14:37:05 +00:00
David Baker f9385b455a Don't try to send read receipts if the room is null 2015-11-05 13:27:03 +00:00
David Baker 86ef0e762e Merge code to send read receipts into react-sdk RoomView controller 2015-11-03 14:08:51 +00:00
David Baker 5a72f199e1 listen for read receipts 2015-11-03 11:41:18 +00:00
David Baker 7c9b773bf8 unintentionally comitted logging 2015-11-03 11:22:18 +00:00
Kegan Dougal 3485a74036 Gracefully handle browsers which don't do VoIP
Specifically:
 - Don't show inbound call ringing
 - Don't let users place calls/conf calls
 - Show call records with "not supported by this browser".
2015-11-02 17:39:00 +00:00
Matthew Hodgson e792201cd6 back out ctrl-alt-number room switching as nobody used it and it broke Tor's keyboard 2015-10-31 14:00:23 +00:00
Matthew Hodgson 40da7f500e show m.room.name changes 2015-10-30 02:07:04 +00:00
Matthew Hodgson 9df7337a6d actually commit ability to apply a custom class to modal dialogs, used for lightboxing 2015-10-29 10:17:34 +00:00
David Baker 2365fe8ceb Refresh room & member avatars when a roommember.name event comes in 2015-10-28 15:15:35 +00:00
Kegsay 184af9df76 Merge pull request #25 from matrix-org/246-creating-room-state
Add creatingRoom state to know when to show a spinner.
2015-10-28 11:38:47 +00:00
Kegan Dougal 2a1b9cd716 Add creatingRoom state to know when to show a spinner. 2015-10-27 17:01:03 +00:00
Kegsay 15af44f5fc Merge pull request #24 from matrix-org/linkify
Add callback support for linkified users/aliases
2015-10-27 12:25:20 +00:00
Kegsay e6f9c6e777 Merge pull request #23 from matrix-org/kegan/reg-errors-176
Add missing enum value to registration password complexity check
2015-10-27 11:11:39 +00:00
Kegan Dougal 16ddb47466 Defer entirely to the end app for handling links 2015-10-27 10:44:41 +00:00
Kegsay 66b577dc89 Merge pull request #22 from matrix-org/kegan/delete-empty-files
Remove empty controllers
2015-10-27 10:19:14 +00:00
Kegan Dougal 77d1b9af04 Hook up aliases via listeners too. 2015-10-27 09:58:55 +00:00
Kegan Dougal 24ac801417 Invoke onUserClick to allow impls to do whatever on user clicks. 2015-10-26 17:59:49 +00:00
Kegan Dougal 11ef1ac336 Prevent the url from being butchered when clicking user IDs 2015-10-26 17:36:03 +00:00
Kegan Dougal a1444d3214 Linkify room aliases. Add listener for user ID clicks. 2015-10-26 17:32:31 +00:00
Kegsay a2b77ad5b5 Merge pull request #21 from matrix-org/220-login-error-msgs
Login error messages
2015-10-26 16:58:46 +00:00
David Baker a850f19cd4 Separate out the activity watcher from presence code so I can hook read receipts into it without tangling it into the presence code. 2015-10-26 13:54:54 +00:00
David Baker 5a760b71d0 Make ChangeAvatar support room avatars and tweak RoomAvatar respond to componentWillReceiveProps 2015-10-23 17:34:53 +01:00
Matthew Hodgson 03dfd57a79 really kill mime types as they are ugly (3rd time lucky) 2015-10-22 16:32:27 +01:00
David Baker 7e93b75aa0 API Change: better fallback for room avatars 2015-10-22 13:08:35 +01:00
David Baker 549d992293 API change: Make EventTiles which hold stuff common to all events that appear in a room timeline. 2015-10-21 17:50:40 +01:00
Kegan Dougal ac5111c162 Add missing enum value 2015-10-21 17:44:05 +01:00
Kegan Dougal 0488f03b5a Remove empty controllers 2015-10-21 15:36:59 +01:00
Kegan Dougal d4a5ab11d4 Fix NPE if you cold boot vector on a URL with a room which you were invited to but not yet joined. 2015-10-21 14:45:39 +01:00
Kegan Dougal d1af5a2232 More tweaks on error messages 2015-10-21 14:30:59 +01:00
Matthew Hodgson 3b988b0eac set up remoteAudioElement 2015-10-21 01:21:39 +01:00
Matthew Hodgson 98ea35253a shift-click the video button to screenshare rather than overriding the button entirely. 2015-10-21 01:21:21 +01:00
Kegan Dougal 8ff7d87b38 Bodge to make video = screen sharing 2015-10-20 16:45:26 +01:00
Kegan Dougal 48f162b9df Better error messages 2015-10-20 14:03:37 +01:00
David Baker 3d8d9bac8e Allow the dispatcher to dispatch sync if required. 2015-10-20 11:02:54 +01:00
David Baker 1041ee654e Update for breaking js-sdk RoomAvatar / MemberAvatar changes 2015-10-20 10:31:29 +01:00
Kegan Dougal 78f2f7cfd0 Add in voip mute video/audio code. Needs dev js-sdk 2015-10-20 09:55:00 +01:00
David Baker 6baf405a05 Remove the 'resending' state which was duplicating a property of the event itself for no obvious reason. Remove onResend whose purpose was mostly to manage that state (and really should have been 'onResendClicked'). Listen for action to see when a message is resent. 2015-10-15 14:09:19 +01:00
David Baker 02a2e06d52 unused code 2015-10-13 16:03:24 +01:00
David Baker 9e596ebb75 Merge pull request #19 from stevenhammerton/sh-cas-auth
Add support for CAS login
2015-10-13 14:25:39 +01:00
David Baker f7d3d4f9a9 Remove console.log 2015-10-13 11:44:45 +01:00
David Baker d12ca92ea7 Avoid double updating: setting the state will cause a re-render so forcing an update is redundant. Also bump js sdk dep to newest to match vector. 2015-10-13 11:12:06 +01:00
Steven Hammerton fc333067c2 Rename required var to match convention 2015-10-12 17:38:04 +01:00
David Baker 030124a59a Make state.members always defined 2015-10-12 16:25:49 +01:00
Steven Hammerton 4e0d930014 Pull down some CAS stuff from vector into controller and logic class 2015-10-12 10:20:03 +01:00
Matthew Hodgson f6d577d0c6 track RHS collapse state 2015-10-11 16:07:01 +01:00
Matthew Hodgson 8228a7d485 track whether the LHS is collapsed. (shouldn't this be vector specific too?) 2015-10-11 13:49:44 +01:00
Matthew Hodgson c5e3891a5a shrink default roomavatar size to 36x36. surely this is vector specific... 2015-10-11 02:08:39 +01:00
Steven Hammerton 3f67d8541f Add support for CAS login 2015-10-10 18:54:19 +01:00
David Baker 05d19121d8 Slightly change memberlist api to shift the sorting into the right place (in the skin). 2015-10-09 17:24:48 +01:00
David Baker e158eec94d Unset matrix client first otherwise login sets it, the it gets unset and you can't log in again. 2015-10-09 13:48:17 +01:00
David Baker 53a7f4b3a8 Set state to ready only if the SDK is synced. 2015-10-09 12:05:40 +01:00
David Baker 0791cac572 Add method to Modal to create dialog with instantiated React elements as well as Classes. 2015-10-09 11:54:46 +01:00
David Baker 05f7a3b4d1 Remove now redundant displayname stuff from UserSettings now it's in ChangeDisplayName 2015-10-07 18:44:32 +01:00
David Baker 79e468217a Add button for user settings and a change display name widget 2015-10-07 18:19:29 +01:00
David Baker 27ca7b48f7 Just do all dispatches async: setting the flag obviously does not work for more than 2 nested dispatches. 2015-10-05 18:43:22 +01:00
David Baker b8dd2452db Display correct message for when an invited but not joined user is kicked. 2015-10-05 16:44:50 +01:00
David Baker a1892ee963 Improve url / screen handling
Including taking you to the room you asked for originally after login
2015-10-05 15:31:08 +01:00
David Baker 2d3b87d56d Don't set empty mime types on metadata. 2015-10-02 18:37:15 +01:00
David Baker 2bce4e4d62 Merge c62d97ca04 from vector-im
The hack is *evil*. Not dirty.
2015-10-02 14:37:34 +01:00
David Baker 7de136a930 Port over new logic for filtering actions: makes the end call button appear & disappear approriately 2015-10-01 10:19:18 +01:00
David Baker 5004a3a5b3 Make end call button work for conf calls 2015-10-01 09:42:58 +01:00
David Baker cb89d3760a Hacks to make sure we don't end up with multiple split-brain CallHandlers when npm linked. 2015-09-30 18:21:25 +01:00
David Baker b68665ead5 Add support for the basic notion of conference calls and an experimental concept of modules to provide the actual functionality. Rejig Skinner to be simpler. 2015-09-30 16:50:46 +01:00
David Baker 9fb5702c2f make MatrixClientPeg an actual global too otherwise things go very wierd 2015-09-28 17:46:49 +01:00
David Baker 8af6c2275b Make it easier to override default avatar urls 2015-09-28 17:06:13 +01:00
David Baker 3792d5494a Dispatcher should be a global too 2015-09-28 14:48:50 +01:00
David Baker 3be50e327d Manually merge memberlist fix from vector master 2015-09-28 11:32:00 +01:00
David Baker 6348c2cf99 Change how viewing a room alias works to make way for jumping into a room once you've logged in. 2015-09-25 17:22:42 +01:00
David Baker bc2eca16f9 Unused guff 2015-09-25 16:25:20 +01:00
David Baker fe369858b7 Unused variables & redundant stuff 2015-09-25 15:17:46 +01:00
David Baker 5af43dc6a9 Remove unused action dispatch 2015-09-23 09:39:49 +01:00
David Baker 96627d4477 Port membertile fix 2015-09-22 16:51:16 +01:00
David Baker 3838569625 Port memberlist branch fixes 2015-09-22 16:37:39 +01:00
David Baker b32658cfd0 Load fewer events when switching to a room: they take surprisingly long to render. 2015-09-22 15:18:16 +01:00
David Baker 980ce7fdae Remainder of the controllers from vector 2015-09-21 17:23:51 +01:00
David Baker 49c5f7cb95 Use same protocol as client was loaded over for recaptcha to prevent JS origin errors. 2015-09-21 16:53:50 +01:00
David Baker 1b82d92fa1 Port registration fixes 2015-09-21 16:38:12 +01:00
David Baker 65498600de port login fixes 2015-09-21 16:36:17 +01:00
David Baker 28c4a648be Port roomlist fixes 2015-09-21 16:31:31 +01:00
David Baker e2c9afb278 port create room 2015-09-21 16:28:39 +01:00
David Baker 29d2ed7191 Merge userselector changes 2015-09-21 16:17:29 +01:00
David Baker 82aa603596 Merge in resend support 2015-09-21 16:14:19 +01:00
David Baker a8eb93bd6f Member list 2015-09-18 18:39:16 +01:00
David Baker 31ee667102 Room header 2015-09-18 14:34:36 +01:00
David Baker b9538a077c Missed files from last commit 2015-09-18 13:54:20 +01:00
David Baker 343de6245f Port ServerConfig changes 2015-09-18 13:33:51 +01:00
David Baker 08b5888d03 More porting: make sending messages work again! 2015-09-18 10:44:57 +01:00
David Baker abeed92501 Partial porting over of vector controller logic to react sdk. 2015-09-17 18:23:38 +01:00
David Baker d938ba70d3 Port over room leaving 2015-09-17 12:10:01 +01:00
David Baker 88aaf82c88 Backport: linkify emotes 2015-09-16 16:23:35 +01:00
David Baker f3b30477ce Backport: add other presets into room presets 2015-09-16 16:10:39 +01:00
David Baker a4cbbf0d92 Backport Notifier improvements from Vector, including TextForEvent 2015-09-16 14:48:49 +01:00
David Baker 25ab56106a Backport labels & placeholders for Editable text from Vector 2015-09-16 14:18:25 +01:00
David Baker 6cca5f4c05 backport fixes from vector 2015-09-16 13:48:24 +01:00
David Baker 2d0c8ac9ff Working skin stuff, minus css 2015-09-15 13:34:36 +01:00
David Baker f3b9f8c799 WIP reworking of skinning and app integration process 2015-09-11 15:42:11 +01:00
David Baker a06e1f23ea Spurious react-loader require 2015-09-10 15:08:26 +01:00
David Baker 635041470f There is no MatrixChat in the sdk anymore (well, only a controller). Advertise the Component Broker instead. 2015-09-10 15:07:34 +01:00
David Baker a124e53a9a Component broker loading files never really worked very well anyway, and now it can't work because they're all defined elsewhere. 2015-09-10 15:06:42 +01:00
David Baker 8fbce5fce8 de-tab 2015-09-08 16:17:06 +01:00
Mark Haines b66488a783 Fix syntax 2015-07-20 13:48:40 +01:00
Mark Haines 3f5c220993 Move all the calls to createClient inside the MatrixClientPeg 2015-07-20 13:19:47 +01:00
David Baker e6260987cc some s/then/done/ 2015-07-16 16:53:08 +01:00
David Baker 9b6060a363 Decouple login view & controller 2015-07-16 16:49:40 +01:00
David Baker 64042c9de8 Handle localstorage exceptions. 2015-07-16 16:12:54 +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
David Baker df790c1b54 Refactor view/controller logic between files, fix syntax & silly bugs. 2015-07-16 12:44:04 +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
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
Erik Johnston 5cd92229eb Add an editable text atom 2015-07-15 13:55:43 +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
David Baker a7e4a2847e Start of registration support. 2015-07-13 19:14:02 +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