Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Adjusted webclient to use new state paths. Updated membership msg template ↵ | Kegan Dougal | 2014-08-26 | 5 | -46/+22 |
| | | | | to actually show the person invited. Factored out common membership functions in matrix service. | ||||
* | The landing URL is now '#/' which actually points to homeController | Emmanuel ROHEE | 2014-08-25 | 1 | -2/+2 |
| | |||||
* | Merge remote-tracking branch 'origin/hotfixes-0.0.1' into develop | Emmanuel ROHEE | 2014-08-25 | 5 | -30/+109 |
|\ | |||||
| * | oops | Matthew Hodgson | 2014-08-23 | 1 | -1/+1 |
| | | |||||
| * | very quick and dirty responsive design for iPhones | Matthew Hodgson | 2014-08-23 | 6 | -30/+110 |
| | | |||||
| * | avatar url | root | 2014-08-22 | 1 | -1/+1 |
| | | |||||
* | | Oops. Removed my NetBeans private folders | Emmanuel ROHEE | 2014-08-25 | 3 | -39/+0 |
| | | |||||
* | | Added "Your name" as placeholder to help user understand what is this alone ↵ | Emmanuel ROHEE | 2014-08-22 | 1 | -1/+1 |
| | | | | | | | | input box | ||||
* | | Merge branch 'settings-page' into develop | Emmanuel ROHEE | 2014-08-22 | 15 | -452/+503 |
|\ \ | |/ |/| | |||||
| * | Use /home everywhere | Emmanuel ROHEE | 2014-08-22 | 6 | -12/+12 |
| | | |||||
| * | renamed rooms to home - renamed files | Emmanuel ROHEE | 2014-08-22 | 4 | -0/+23 |
| | | |||||
| * | renamed rooms to home | Emmanuel ROHEE | 2014-08-22 | 3 | -0/+16 |
| | | |||||
| * | Move profile parts of the rooms page and the config content into a new page: ↵ | Emmanuel ROHEE | 2014-08-22 | 8 | -201/+237 |
| | | | | | | | | settings | ||||
* | | Merge branch 'develop' of github.com:matrix-org/synapse into release-v0.0.1 | Erik Johnston | 2014-08-22 | 3 | -24/+58 |
|\ \ | |||||
| * | | Update web client to use new IS API. | David Baker | 2014-08-22 | 3 | -24/+58 |
| | | | |||||
* | | | Check if the membership message was for the room we were in before updating ↵ | Erik Johnston | 2014-08-22 | 1 | -0/+2 |
| | | | | | | | | | | | | the membership list | ||||
* | | | Keep track of people's presence and query that when we update the members list. | Erik Johnston | 2014-08-22 | 2 | -3/+10 |
| | | | |||||
* | | | Reinitialize room when creating a RoomController so that we start off with a ↵ | Erik Johnston | 2014-08-22 | 2 | -1/+13 |
| |/ |/| | | | | | clean slate, as it expects/ | ||||
* | | Use $location.url instead of $location.path to get clean page URL without ↵ | Emmanuel ROHEE | 2014-08-22 | 4 | -10/+10 |
| | | | | | | | | | | | | hash arguments of the previous page. This happpens with room URL like http://127.0.0.1:8080/matrix/client/#/room/#public:localhost. The second hash part is transferred to the next page when using $location.path. | ||||
* | | Make the content repo work with in daemon mode. Return the full url on ↵ | Erik Johnston | 2014-08-22 | 1 | -1/+1 |
| | | | | | | | | upload. Update the webclient to use new content repo api. | ||||
* | | resizeImage: generate an image in the format of the original image. (Tested ↵ | Emmanuel ROHEE | 2014-08-22 | 1 | -1/+3 |
| | | | | | | | | with tranparent PNG, transparent GIF, BMP, JPEG) | ||||
* | | Safari needs the img.onload event before actually working on the img | Emmanuel ROHEE | 2014-08-22 | 2 | -27/+39 |
| | | |||||
* | | improve leftBlock css | Matthew Hodgson | 2014-08-22 | 1 | -1/+6 |
| | | |||||
* | | fix mainInput retaining focus between sending consecutive messages by ↵ | Matthew Hodgson | 2014-08-22 | 2 | -4/+4 |
| | | | | | | | | disabling commit 955662d6 | ||||
* | | fix weird fontsizes on iOS | Matthew Hodgson | 2014-08-22 | 1 | -0/+1 |
| | | |||||
* | | sacrifice a goat or two to make wordwrap actually work properly | Matthew Hodgson | 2014-08-22 | 2 | -28/+21 |
| | | |||||
* | | rename autoComplete directive as tabComplete to avoid confusion with the ↵ | Matthew Hodgson | 2014-08-22 | 1 | -15/+15 |
| | | | | | | | | autocomplete html attribute | ||||
* | | add fixme pointing out name disambiguation is a bit flakey | Matthew Hodgson | 2014-08-22 | 1 | -1/+4 |
| | | |||||
* | | actually display room metadata based on m.room.membe events | Matthew Hodgson | 2014-08-21 | 3 | -2/+23 |
| | | |||||
* | | Add a var. | Erik Johnston | 2014-08-21 | 1 | -1/+1 |
| | | |||||
* | | Only start event streaming after having set up the controllers. | Erik Johnston | 2014-08-21 | 5 | -4/+17 |
| | | |||||
* | | Change webclient to always hit the im sync api before streaming so we get ↵ | Erik Johnston | 2014-08-21 | 2 | -7/+41 |
| | | | | | | | | current presence state | ||||
* | | stop hammering the HS for displayname and avatar URLs | Matthew Hodgson | 2014-08-21 | 1 | -3/+5 |
| | | |||||
* | | Merge branch 'develop' of github.com:matrix-org/synapse into release-v0.0.1 | Erik Johnston | 2014-08-21 | 6 | -38/+294 |
|\| | |||||
| * | Show image fullscreen when clicking on the thumbnail | Emmanuel ROHEE | 2014-08-21 | 2 | -3/+31 |
| | | |||||
| * | If there are available, show image thumbnails in the messages list | Emmanuel ROHEE | 2014-08-21 | 1 | -3/+7 |
| | | |||||
| * | Generate thumbnail client side and send its URL and info with the image ↵ | Emmanuel ROHEE | 2014-08-21 | 3 | -28/+149 |
| | | | | | | | | message body | ||||
| * | Made uploadContent compatible for sending Blob objects | Emmanuel ROHEE | 2014-08-21 | 1 | -4/+22 |
| | | |||||
| * | Added resizeImage() | Emmanuel ROHEE | 2014-08-21 | 1 | -1/+86 |
| | | |||||
* | | Use the new 'inviter' key from im sync for room display names. | Erik Johnston | 2014-08-21 | 2 | -3/+8 |
| | | |||||
* | | Fixed first pagination detection | Emmanuel ROHEE | 2014-08-21 | 1 | -2/+3 |
| | | |||||
* | | cheer up erik and remove the double-horizontal-border between adjacent text ↵ | Matthew Hodgson | 2014-08-21 | 1 | -0/+1 |
|/ | | | | plinths | ||||
* | Quick fix to support array of room aliases | Emmanuel ROHEE | 2014-08-20 | 1 | -2/+3 |
| | |||||
* | BF: Apply image place holder only if the image message has the height ↵ | Emmanuel ROHEE | 2014-08-20 | 1 | -1/+1 |
| | | | | information | ||||
* | BF: Wait for the room_id being resolved before starting pagination | Emmanuel ROHEE | 2014-08-20 | 1 | -2/+2 |
| | |||||
* | Create a placeholder for each image of the chat thread. The height of this ↵ | Emmanuel ROHEE | 2014-08-20 | 1 | -1/+4 |
| | | | | placeholder is the height of the image so that the scroller position will not be disrupted when the image will be actually loaded and displayed in its full height | ||||
* | Send images with their imageInfo (size, mymetype, width & height) | Emmanuel ROHEE | 2014-08-20 | 5 | -17/+89 |
| | |||||
* | Sanitize message text content only if the type of current message in the ↵ | Emmanuel ROHEE | 2014-08-20 | 1 | -2/+2 |
| | | | | | | ng-repeat loop is "text" In case of image message, the body can be a JSON object (ImageInfo) and ngSanitize does not like that (ie it generates exception in the console) | ||||
* | Replaced the image URL text input by a file selector button: "Send Image" | Emmanuel ROHEE | 2014-08-20 | 2 | -18/+5 |
| | |||||
* | Disabled sending buttons while a message is being sent. Useful on bad ↵ | Emmanuel ROHEE | 2014-08-20 | 2 | -6/+18 |
| | | | | Internet connection. | ||||
* | Merge branch 'master' of github.com:matrix-org/synapse into develop | Erik Johnston | 2014-08-20 | 6 | -170/+254 |
|\ | |||||
| * | File organisation sanity: put directives and filters into dedicated files | Emmanuel ROHEE | 2014-08-20 | 6 | -197/+254 |
| | | |||||
| * | keepScroll: a directive to anchor the scroller position at the bottom when ↵ | Emmanuel ROHEE | 2014-08-19 | 1 | -0/+27 |
| | | | | | | | | the browser is resizing | ||||
* | | Merge branch 'master' of github.com:matrix-org/synapse into sql_refactor | Erik Johnston | 2014-08-19 | 2 | -4/+2 |
|\| | |||||
| * | BF: The enter key in the image URL box called sendImage() with no argument | Emmanuel ROHEE | 2014-08-19 | 1 | -1/+1 |
| | | |||||
| * | Cleaned dead code | Emmanuel ROHEE | 2014-08-19 | 1 | -3/+1 |
| | | |||||
* | | Merge branch 'master' of github.com:matrix-org/synapse into sql_refactor | Erik Johnston | 2014-08-19 | 12 | -34/+207 |
|\| | | | | | | | | | | | | | Conflicts: tests/rest/test_presence.py tests/rest/test_rooms.py tests/utils.py | ||||
| * | Change mouse cursor to pointer on elements user can click on | Emmanuel ROHEE | 2014-08-19 | 2 | -1/+5 |
| | | |||||
| * | Merge remote-tracking branch 'origin/master' into user_page | Emmanuel ROHEE | 2014-08-19 | 3 | -19/+31 |
| |\ | |||||
| | * | show private room_ids rather than nulls in notifs if there is no room_alias | Matthew Hodgson | 2014-08-18 | 1 | -1/+1 |
| | | | |||||
| | * | Implemented GETs for the ContentRepoResource. It all actually appears to be ↵ | Kegan Dougal | 2014-08-18 | 1 | -2/+3 |
| | | | | | | | | | | | | working. | ||||
| | * | Auth content uploads. Added a mapping function from request > filename. ↵ | Kegan Dougal | 2014-08-18 | 2 | -18/+29 |
| | | | | | | | | | | | | Added exception handling for content uploads. webclient: Only prefix the client API path on doRequest, not doBaseRequest (this would've broken the identity server auth too). Added matrixService.uploadContent. May not require mFileUpload anymore. | ||||
| * | | Fill user page with avatar, display name and matrix id | Emmanuel ROHEE | 2014-08-19 | 3 | -5/+44 |
| | | | |||||
| * | | Made small avatar image center | Emmanuel ROHEE | 2014-08-19 | 1 | -0/+1 |
| | | | |||||
| * | | Use $location.url to open the user profile page. The user page URL is then ↵ | Emmanuel ROHEE | 2014-08-19 | 1 | -1/+1 |
| | | | | | | | | | | | | | | | | | | the one expected: http://127.0.0.1:8000/#/user/@Manu:localhost:8080 insteaf of http://127.0.0.1:8000/#/user/@Manu:localhost:8080#public:localhost:8080 | ||||
| * | | Added link to user profile pages | Emmanuel ROHEE | 2014-08-19 | 2 | -1/+6 |
| | | | |||||
| * | | Created boilerplate for user profile page | Emmanuel ROHEE | 2014-08-18 | 4 | -0/+43 |
| |/ | |||||
| * | In members list, on avatar mouseover, show a tooltip with the user matrix id | Emmanuel ROHEE | 2014-08-18 | 1 | -2/+6 |
| | | |||||
| * | Join room: open the room URL with the room alias in it | Emmanuel ROHEE | 2014-08-18 | 1 | -6/+2 |
| | | |||||
| * | Support urlencoded room aliases in room URL | Emmanuel ROHEE | 2014-08-18 | 2 | -17/+29 |
| | | |||||
| * | If possible, use href with room alias in rooms list | Emmanuel ROHEE | 2014-08-18 | 1 | -2/+2 |
| | | |||||
| * | Support room alias in rooms URL (ex: ↵ | Emmanuel ROHEE | 2014-08-18 | 3 | -1/+58 |
| | | | | | | | | http://127.0.0.1:8000/#/room/#public:localhost:8080) | ||||
* | | Change the way pagination works to support out of order events. | Erik Johnston | 2014-08-19 | 2 | -3/+2 |
|/ | |||||
* | Increase /events timeout to 30 secs. We don't need it so low anymore to get ↵ | Kegan Dougal | 2014-08-18 | 1 | -1/+1 |
| | | | | around request suppression when changing rooms, since there is just a single event stream now. | ||||
* | webclient: Tweak namespace of auto-complete directive. ng- should really ↵ | Kegan Dougal | 2014-08-18 | 2 | -2/+2 |
| | | | | only be used for official ng directives. | ||||
* | Disabled image upload UIs | Emmanuel ROHEE | 2014-08-18 | 2 | -2/+6 |
| | |||||
* | Do not start the event stream if the user is not logged in (=if he does not ↵ | Emmanuel ROHEE | 2014-08-18 | 3 | -9/+17 |
| | | | | | | has an access token yet) Add isUserLoggedIn to check this. | ||||
* | Added another button to upload and send an image. | Emmanuel ROHEE | 2014-08-18 | 2 | -2/+20 |
| | | | | The text input and its send button for sending an image URL will be removed once we have a true upload image service | ||||
* | make my emotes white again | Matthew Hodgson | 2014-08-18 | 1 | -0/+4 |
| | |||||
* | make text font sizes consistent | Matthew Hodgson | 2014-08-17 | 2 | -13/+26 |
| | | | | | | | add a gap between bubble-blocks from different users make sent-text lighter than received-text wrap the memberslist text more sensibly fix height of bubbles to match that of avatars (32px) | ||||
* | implement html5 notifications. (have to be explicitly requested under Config) | Matthew Hodgson | 2014-08-17 | 4 | -3/+37 |
| | |||||
* | unbreak login sequence (which spuriously required a sydent server to be ↵ | Matthew Hodgson | 2014-08-17 | 1 | -2/+2 |
| | | | | specified, which login.html was no longer doing...) | ||||
* | oops, debugging crept in | Matthew Hodgson | 2014-08-17 | 1 | -1/+0 |
| | |||||
* | dial down logging | Matthew Hodgson | 2014-08-17 | 1 | -5/+5 |
| | |||||
* | - use css3 to make avatars always the right aspect ratio | Matthew Hodgson | 2014-08-17 | 3 | -4/+105 |
| | | | | - implement slightly overengineered tab/shift-tab autocomplete function | ||||
* | autohyperlink messages using linky | Matthew Hodgson | 2014-08-16 | 4 | -3/+581 |
| | |||||
* | use minified angular by default | Matthew Hodgson | 2014-08-16 | 1 | -2/+2 |
| | |||||
* | minified angularjs stuff to speed things up | Matthew Hodgson | 2014-08-16 | 4 | -0/+249 |
| | |||||
* | improve infinite scrolling so it keeps paginating until you have a scrollbar ↵ | Matthew Hodgson | 2014-08-16 | 1 | -17/+28 |
| | | | | (if it can) | ||||
* | remove log spam | Matthew Hodgson | 2014-08-16 | 1 | -2/+2 |
| | |||||
* | disambiguate identical displaynames | Matthew Hodgson | 2014-08-16 | 1 | -1/+23 |
| | |||||
* | make presence timestamps less verbose | Matthew Hodgson | 2014-08-16 | 1 | -3/+3 |
| | |||||
* | roll back b602834 as it made a bizarre subset of avatars go awol | Matthew Hodgson | 2014-08-16 | 1 | -6/+5 |
| | |||||
* | order the members list by most recently active | Matthew Hodgson | 2014-08-16 | 2 | -7/+19 |
| | |||||
* | don't hammer a new hit for every displayname and avatar_url when we already ↵ | Matthew Hodgson | 2014-08-16 | 1 | -1/+14 |
| | | | | have them in the members list... | ||||
* | merge weirdness | Matthew Hodgson | 2014-08-16 | 1 | -1/+1 |
| | |||||
* | display mtime_age in webclient | Matthew Hodgson | 2014-08-16 | 3 | -10/+33 |
| | |||||
* | slightly hacky but more functional infinite scrolling | Matthew Hodgson | 2014-08-16 | 1 | -30/+36 |
| | |||||
* | switch some elements from being styled by class to styled by id | Matthew Hodgson | 2014-08-15 | 5 | -36/+36 |
| | |||||
* | Formatting | Kegan Dougal | 2014-08-15 | 2 | -21/+22 |
| | |||||
* | Get presence for members when you enter a room (it was coming down but ↵ | Kegan Dougal | 2014-08-15 | 1 | -0/+4 |
| | | | | wasn't being stored in the right place) | ||||
* | Added infinite scrolling. It's sliiiightly buggy in that it jumps down the ↵ | Kegan Dougal | 2014-08-15 | 7 | -9/+115 |
| | | | | list a bit, but it is overall working pretty well. Added ng-infinite-scroll-matrix.js and jquery-1.8.3 as deps. | ||||
* | When new invites come down, update the My Rooms list. Added hacks to make ↵ | Kegan Dougal | 2014-08-15 | 3 | -16/+32 |
| | | | | the display name a bit nicer (/im/sync needs to return room aliases / membership events better) | ||||
* | Remove old polling stuff from RoomController. Added service comments. Do not ↵ | Kegan Dougal | 2014-08-15 | 4 | -45/+20 |
| | | | | start the event stream on startup unless you have credentials. | ||||
* | Event streaming now happens on an app level, rather than a per-room level. ↵ | Kegan Dougal | 2014-08-15 | 5 | -19/+76 |
| | | | | Make eventStreamService manage it's own repolling provided no one calls stop() on it. Couple the stream with eventHandlerService so any controller can just blithely call eventStreamService.resume() and expect to 'get stuff' without having to handle promises (though resume() still returns a promise for that request and proxies it through $q). Kill and reset the stream if you logout. | ||||
* | Store messages in $rootScope so they can be accessed from multiple ↵ | Kegan Dougal | 2014-08-15 | 3 | -12/+29 |
| | | | | controllers without duplicated storage for each. This also gives updates. | ||||
* | Added event handler service which.. handles events. More specifically, it ↵ | Kegan Dougal | 2014-08-15 | 5 | -32/+124 |
| | | | | $broadcasts events depending on their type, and does processing on events (shuffling keys, adding events to $rootScope so displays will automatically update, sending delivery receipts, and so on). Some of this logic was previously contained in the RoomController, which fails the moment you add >1 room into the mix, hence requiring a Service to handle events, rather than having each individual controller maintain their part of the world. | ||||
* | Added event stream service which neatly blobs together requests / state for ↵ | Kegan Dougal | 2014-08-15 | 5 | -14/+91 |
| | | | | the event stream. This depends on matrix service to do the actual hit. Currently this has exactly the same behaviour as before. | ||||
* | More helpful display when the event stream fails, wiping it when the ↵ | Kegan Dougal | 2014-08-14 | 2 | -5/+10 |
| | | | | connection is regained. | ||||
* | We can now upload avatar image somewhere | Emmanuel ROHEE | 2014-08-14 | 1 | -4/+13 |
| | |||||
* | Create a temporary upload service server side (by hacking ↵ | Emmanuel ROHEE | 2014-08-14 | 1 | -0/+1 |
| | | | | demos/webserver.py) and client side with an angularjs service component. | ||||
* | Create a temporary upload service server side (by hacking ↵ | Emmanuel ROHEE | 2014-08-14 | 1 | -0/+47 |
| | | | | demos/webserver.py) and client side with an angularjs service component. | ||||
* | webclient: You can now paginate in rooms. Defaults to 10 messages, with a ↵ | Kegan Dougal | 2014-08-14 | 3 | -21/+71 |
| | | | | button to get more (needs to be hooked into infini-scrolling). | ||||
* | Pass back the user_id in the response to /login in case it has changed. ↵ | Kegan Dougal | 2014-08-14 | 2 | -2/+2 |
| | | | | Store and use that on the webclient rather than the input field. | ||||
* | hs: Make /login accept full user IDs or just local parts. webclient: Only ↵ | Kegan Dougal | 2014-08-14 | 2 | -7/+1 |
| | | | | enable Register button when both password fields match. | ||||
* | Auto-correct the username when logging in if there isn't an @ | Kegan Dougal | 2014-08-14 | 1 | -0/+6 |
| | |||||
* | Be more helpful when failing to register/login, stating why (communication ↵ | Kegan Dougal | 2014-08-14 | 1 | -4/+16 |
| | | | | error, user in user, wrong credentials, etc). Make the HS send M_USER_IN_USE. | ||||
* | Finish up room controller too. May have missed one or two, but testing ↵ | Kegan Dougal | 2014-08-14 | 1 | -14/+14 |
| | | | | didn't pick anything up. | ||||
* | Added extra nesting .data and rename callback to be response not data | Kegan Dougal | 2014-08-14 | 2 | -31/+31 |
| | |||||
* | Move the unknown token broadcast to the interceptor. Return the $http ↵ | Kegan Dougal | 2014-08-14 | 4 | -30/+16 |
| | | | | promise and not a wrapped one via $q. Everything now needs a level deeper nesting. Fixed registration and login. | ||||
* | Added an access token interceptor to check unknown tokens. | Kegan Dougal | 2014-08-14 | 1 | -3/+19 |
| | |||||
* | Detect when the user access token is no more valid and log the user out in ↵ | Emmanuel ROHEE | 2014-08-14 | 2 | -4/+20 |
| | | | | this case | ||||
* | Guess the home server URL on the login screen by inspecting the URL of the ↵ | Kegan Dougal | 2014-08-14 | 1 | -1/+9 |
| | | | | web client. | ||||
* | BF: Use ng-src | Emmanuel ROHEE | 2014-08-14 | 1 | -1/+1 |
| | |||||
* | Use ng-src | Emmanuel ROHEE | 2014-08-14 | 1 | -1/+1 |
| | |||||
* | Show avatar in profile section and added a button to select a file (not yet ↵ | Emmanuel ROHEE | 2014-08-14 | 3 | -6/+45 |
| | | | | wired to upload service) | ||||
* | Created m-file-input. A directive to open a file selection dialog on ↵ | Emmanuel ROHEE | 2014-08-14 | 2 | -0/+44 |
| | | | | whatever HTML element | ||||
* | fix emote presentation | Matthew Hodgson | 2014-08-14 | 1 | -1/+1 |
| | |||||
* | config css | Matthew Hodgson | 2014-08-14 | 1 | -0/+12 |
| | |||||
* | completely change the CSS to be an entirely 'position: absolute' layout ↵ | Matthew Hodgson | 2014-08-14 | 6 | -29/+46 |
| | | | | rather than top-to-bottom. makes the overscroll much more predictable and sane and not dependent on CSS expressions. | ||||
* | don't hammer after 403 | Matthew Hodgson | 2014-08-13 | 1 | -1/+4 |
| | |||||
* | Store public room id > alias mappings. | Kegan Dougal | 2014-08-13 | 1 | -0/+6 |
| | |||||
* | Merge branch 'master' of git+ssh://github.com/matrix-org/synapse | Matthew Hodgson | 2014-08-13 | 7 | -13/+133 |
|\ | |||||
| * | Use strings instead of opaque magic-number constants for presence states; ↵ | Paul "LeoNerd" Evans | 2014-08-13 | 3 | -9/+6 |
| | | | | | | | | rename AWAY to UNAVAILABLE | ||||
| * | Room: Added a text input to type an image URL in order to send an image message | Emmanuel ROHEE | 2014-08-13 | 4 | -3/+37 |
| | | |||||
| * | Display image messages from the stream | Emmanuel ROHEE | 2014-08-13 | 2 | -1/+10 |
| | | |||||
| * | add in copyrights to everything, not just the synapse subdir, and add a ↵ | Matthew Hodgson | 2014-08-13 | 5 | -0/+80 |
| | | | | | | | | copyrighter.pl whilst we're at it | ||||
* | | timestamps | Matthew Hodgson | 2014-08-13 | 1 | -1/+1 |
|/ | |||||
* | remove the png profile image for now | Matthew Hodgson | 2014-08-12 | 1 | -0/+0 |
| | |||||
* | Fix the 'Go to room' button to use the correct room alias api | Erik Johnston | 2014-08-12 | 3 | -2/+31 |
| | |||||
* | Make messages list and room users list scroll-overflow | Emmanuel ROHEE | 2014-08-12 | 3 | -13/+32 |
| | |||||
* | Reference Matrix Home Server | matrix.org | 2014-08-12 | 19 | -0/+25826 |