Commit Graph

561 Commits

Author SHA1 Message Date
giomfo cf1feee21d HandleRoomMember: handle correctly prev_content 2014-10-27 14:17:16 +01:00
Kegan Dougal 6603e39e6a Fix SYWEB-109 : No error if HS rejects the username in registration.
Display all error messages from the server when registering, rather
than just the types of errors the client recognises.
2014-10-27 11:58:23 +00:00
Matthew Hodgson 1342bcedaf switch from the deprecated msg.content.prev to msg.prev_content.membership, and fix the bug where kicks of unjoined users aren't displayed sensibly in the history 2014-10-24 16:14:47 +01:00
Matthew Hodgson e9abbe89f3 more timestamp fixes 2014-10-17 23:53:24 +01:00
Matthew Hodgson 514e0fd4b6 fix webclient to know about right timestamps 2014-10-17 23:11:55 +01:00
Kegan Dougal 79bd6e77b8 Remove warning since the end result is still $sanitize'd 2014-10-15 14:45:38 +01:00
Kegan Dougal da19fd0d1a Add unsanitizedLinky filter to fix links in formatted messages.
This filter is identical to ngSanitize's linky but instead of
sanitizing text which isn't linkified in the addText function,
it doesn't.
2014-10-15 14:42:14 +01:00
Kegan Dougal 07890b43ca Remove org.matrix.custom.text.html event type and replace it with 'format' and 'formatted_body' keys on m.text messages 2014-10-15 13:57:19 +01:00
Kegan Dougal f4667f86af Add support for org.matrix.custom.text.html
This format will remain undocumented as it is not yet suitable for
introduction into the specification.
2014-10-15 09:32:02 +01:00
Emmanuel ROHEE d170fbdb9f BF: Do a pagination when opening a room from an invitation 2014-09-25 14:46:11 +02:00
David Baker c58eb0d5a3 Merge branch 'turn' into develop 2014-09-25 13:09:56 +01:00
David Baker c0936b103c Add stun server fallback and I-told-you-so message if we get no TURN server and the connection fails. 2014-09-25 11:14:29 +01:00
Emmanuel ROHEE 9d3246ed12 Fixed SYWEB-36: use getUserDisplayName for disambiguating display name in member list and message sender name. This method is robust when disambiguation is no more required 2014-09-25 11:49:43 +02:00
Emmanuel ROHEE ef99a5d972 getUserDisplayName: Disambiguate users who have the same displayname in the room.
Displayname are then disambiguate where it is necessary
2014-09-25 11:45:01 +02:00
David Baker 6806caffc7 Refresh turn server before the ttl runs out. Support firefox. 2014-09-24 17:57:34 +01:00
Emmanuel ROHEE 2b4736afcd Fixed getUserDisplayname when the user has a null displayname 2014-09-24 17:42:40 +02:00
David Baker 7dc7c53029 The REST API spec only alows for returning a single server so name the
endpoint appropriately.
2014-09-24 17:28:47 +02:00
David Baker 7679ee7321 Hopefully implement turn in the web client (probably wrong for Firefox because Firefox is a special snowflake) 2014-09-24 16:08:31 +01:00
Emmanuel ROHEE 432e8ef2bc Fixed SYWEB-74: Emote desktop notifications sometimes lack a name: "undefined waves" 2014-09-24 16:52:48 +02:00
Emmanuel ROHEE c7620cca6f SYWEB-27: Public rooms with 2 users must not considered as 1:1 chat room and so, they must no be renamed 2014-09-24 13:17:47 +02:00
Emmanuel ROHEE b02bb18a70 Fixed SYWEB-28: show displayname changes in recents 2014-09-24 12:48:24 +02:00
Emmanuel ROHEE 6f5970a2e1 Added hasOwnProperty tests when required to be robust to random properties added to he Object prototype 2014-09-24 12:22:40 +02:00
Emmanuel ROHEE ef5b39c410 State data now provides up-to-date users displaynames. So use it first.
Continue to use presence data as fallback solution which is required when users do not join the room yet.
Created eventHandlerService.getUserDisplayName() as a single point to compute display name.
2014-09-24 11:04:27 +02:00
Matthew Hodgson 7b8e24a588 close buttons on recents (SYWEB-68) 2014-09-24 01:12:59 +01:00
Matthew Hodgson 53841642a8 close buttons on recents (SYWEB-68) 2014-09-24 01:12:45 +01:00
Matthew Hodgson b08112f936 on safari at least keypress's event.which returns ASCII rather than keycodes, so 38 & 40 was swallowing ( and & rather than up-arrow and down-arrow(!) 2014-09-23 23:35:17 +01:00
Matthew Hodgson 53ae5bce13 comment-convo with kegan 2014-09-23 23:25:56 +01:00
Matthew Hodgson e8e80fe6b5 fix yet more room id leak disasters 2014-09-23 20:27:09 +01:00
Matthew Hodgson 0e848d73f9 oops, stupid bug on room/$room/state 2014-09-23 20:01:32 +01:00
Matthew Hodgson cbea225d97 manu: what's going on here? 2014-09-23 20:01:32 +01:00
Matthew Hodgson 437969eac9 use all new /rooms/<room id>/state to actually gather the state for rooms whenever join them. a bit ugly, as we don't currently have a nice place to gather housekeeping after joining a room, so horrible code duplication... 2014-09-23 18:50:39 +01:00
Matthew Hodgson 284fac379c patch over another scenario whe we leak room IDs. i have *zero* idea why or where the webclient is overriding message.membership to be "join" though, when it comes down the events pipe as "invite" (which was causing this failure mode) 2014-09-23 17:31:13 +01:00
Matthew Hodgson 5aa13b9084 fix a case of rampaging SYWEB-78 2014-09-23 17:31:13 +01:00
Kegan Dougal a7420ff2b5 Fix SYWEB-72 : Improve performance when typing.
Swapped ng-keydown to a directive, which does the same thing (check if up/down
arrow then call history.goUp/goDown). This has *dramatically* improved
performance when typing in rooms which have lots (>100) of messages loaded.
2014-09-23 16:56:54 +01:00
Emmanuel ROHEE e4e8ad6780 SYWEB-28: Fixed weird members list ordering: sort members on their last activity absolute time 2014-09-23 17:33:16 +02:00
Matthew Hodgson 7d94913efb remove old commented-out code 2014-09-23 16:12:25 +01:00
Matthew Hodgson c9f73bd325 fix one cause of SYWEB-53 2014-09-23 16:12:25 +01:00
Emmanuel ROHEE e9c88ae4f4 Partial fix of SYWEB-28: If members do not have last_active_ago, compare their presence state to order them 2014-09-23 15:19:03 +02:00
Matthew Hodgson 4847045259 send messages to users from the home page (SYWEB-19) 2014-09-23 13:36:58 +01:00
Matthew Hodgson 997a016122 fix NPE 2014-09-23 13:01:12 +01:00
Kegan Dougal 512f2cc9c4 Fix SYWEB-8 : Buggy tab-complete.
The first red blink was caused by an uninitialised search index. There is no
caching of entries, since this then wouldn't update if someone joined/left
during the tab. Instead, set to search index to MAX_VALUE then fix it to a
valid index AFTER the search is complete. Also ditched trailing space on ": ".
2014-09-23 12:22:14 +01:00
Kegan Dougal b5c9d99424 Show display name changes in the message list. 2014-09-22 17:46:53 +01:00
Kegan Dougal 95acf63ea3 Add working protractor e2e test.
This uses the ignoreSynchronization flag because of the longpoll on the event
stream. It would be better to use $interval, but couldn't get that to
*reliably* work when testing. I suspect that $interval won't help us here,
since there is genuinely an open $http connection, as we're doing a long
poll. https://github.com/angular/protractor/issues/49 for more info.
2014-09-22 16:50:12 +01:00
Kegan Dougal 90f5eb1270 Set required environment variables for e2e testing.
Added an 'id' to the login button so it can be automatically triggered.
Also, added an onPrepare section to protractor.conf to do the login.
2014-09-22 15:00:23 +01:00
Kegan Dougal 7dfcba1649 Updated test README to include a section on environment-protractor.js
The environment file is .gitignored so random selenium servers aren't accidentally pushed.
2014-09-22 14:36:06 +01:00
Kegan Dougal e3152188ef Added boilerplate for running end-to-end tests.\nThis is done using Protractor, which looks for a .gitignored file environment-protractor.js which contains the selenium endpoint url. 2014-09-22 14:29:12 +01:00
Erik Johnston e68dc04900 Merge branch 'master' of github.com:matrix-org/synapse into develop 2014-09-22 13:02:47 +01:00
David Baker 4696622b0a Propagate failure reason to the other party. 2014-09-22 11:44:15 +01:00
David Baker 83ea3c96ec Better logging of ICE candidates and fail the call when ICE fails. 2014-09-22 10:55:01 +01:00
Kegan Dougal 333e63156e Fixed unit test; it all actually works. Added a README for running the tests with karma/jasmine. 2014-09-22 10:27:03 +01:00
Matthew Hodgson a0c3da17b4 go back to the original behaviour of only notifying if we think the app is backgrounded or idle... 2014-09-20 01:40:29 +01:00
Matthew Hodgson 4c7a1abd39 remove insanely busy logging which is killing CPU 2014-09-20 01:14:01 +01:00
Matthew Hodgson 9fda37158a remove the ng-model attribute from mainInput textarea to stop the digest being run every time you press a key (SYWEB-4) 2014-09-20 00:49:45 +01:00
David Baker 648fd2a622 Notify a callee that their browser doesn't support VoIP too.
SYWEB-14 #resolved
2014-09-19 18:22:14 +01:00
David Baker 99b0c9900e Move video background element up as it was causing the page to scroll. 2014-09-19 17:40:00 +01:00
David Baker f6258221c1 Join rooms if we're not already in them when accepting a call coming from that room.
SYWEB-55 #resolve
2014-09-19 17:23:55 +01:00
Emmanuel ROHEE 68e534777c SYWEB-32: made all input/textearea inherit the font of their parent 2014-09-19 18:00:16 +02:00
David Baker 29686f63ac Fix the "is webrtc supported" titles on buttons and make the video / voice call buttons appear in multi-user rooms but be greyed out with approriate titles. 2014-09-19 16:52:45 +01:00
David Baker 03ac0c91ae Merge branch 'videocalls' into develop
Conflicts:
	webclient/room/room.html
2014-09-19 16:26:46 +01:00
Emmanuel ROHEE 709b8ac2b7 SYWEB-13 SYWEB-14: disabled "Call" button if the browser does not support all required WebRTC features 2014-09-19 17:20:33 +02:00
Emmanuel ROHEE e9670fd144 SYWEB-13: disabled "Send image" button if the browser does not support HTML5 file API 2014-09-19 17:20:33 +02:00
Emmanuel ROHEE f9688d7519 SYWEB-13: Do not start the app if the browser does not support WEBStorage.
Internet Explorer case: Launch the app only for versions 9 and higher.
2014-09-19 17:20:33 +02:00
David Baker da8b5a5367 First working version of UI chrome for video calls. 2014-09-19 16:18:15 +01:00
David Baker 270825ab2a Fix undefined variable error 2014-09-19 11:41:49 +01:00
Emmanuel ROHEE 008515c844 A kind of the typo in the fix of SYWEB-44 2014-09-19 09:25:51 +02:00
Emmanuel ROHEE 301ef1bdc6 Room id leaks: log them when then happens. Plus log the conditions that made them happen 2014-09-19 09:17:18 +02:00
Emmanuel ROHEE cf1e167034 Fixed SYWEB-16: When sending an invite over federation, the remote user sees the name of the resulting invite room as *their* name rather than the inviters 2014-09-19 09:07:16 +02:00
Matthew Hodgson 2ab7e23790 fix SYWEB-41 (hopefully) 2014-09-18 18:18:30 +01:00
Emmanuel ROHEE 0dac2f7a8d Fixed missing component dependency which created a crash 2014-09-18 19:12:21 +02:00
Kegan Dougal 6a6a718898 Added test directory, karma conf, and angular-mocks. Expect it to work? Pah, not yet. 2014-09-18 17:59:15 +01:00
Emmanuel ROHEE faec6f7f31 Oops. Removed dev logs 2014-09-18 17:48:20 +02:00
Emmanuel ROHEE 26dda48e50 SYWEB-14: BF: rooms invitations were not visible in recents after launching/refreshing the web page 2014-09-18 17:34:26 +02:00
Erik Johnston e0f060d89b Merge branch 'master' of github.com:matrix-org/synapse into develop 2014-09-18 16:22:14 +01:00
Kegan Dougal 3dea0d2806 undefined is empty. Fixed bug where empty bingWords with old accounts which hadn't logged in didn't send notifications. 2014-09-18 16:17:29 +01:00
David Baker 0505014152 add unprefixed filter css as well 2014-09-18 16:15:48 +01:00
David Baker 3bd8cbc62f Prettier and stabler video with basic support for viewing mode. For now, transition into 'large' mode is disabled. 2014-09-18 15:51:30 +01:00
Matthew Hodgson d583aaa0c3 fix wordwrap 2014-09-18 15:25:25 +01:00
Matthew Hodgson 3a7375f15e fix binger description 2014-09-18 15:25:11 +01:00
Emmanuel ROHEE b7d42c1e93 SYWEB-40: Only local rooms are shown in the recents list.
Removed an old patch that deduplicated join events. This patch is now useless. Plus it is buggy since it compared event.content and event.prev_content only on the membership field whereas these objects contain more data now like displayname...
2014-09-18 15:28:52 +02:00
Emmanuel ROHEE 0db0528e8e Reverted patches done for SYWEB-40 2014-09-18 15:19:35 +02:00
Kegan Dougal a64ff63a41 SYWEB-3 : Boldify if the join_rule is public, rather than visibility so it plays nicer with federation. 2014-09-18 12:02:52 +01:00
Kegan Dougal ac8d73b258 Patch for SYWEB-40 : isStateEvent is not being set correctly, and really shouldn't be a configurable arg in the first place. As a result of being undefined, the events.rooms[rid].members object was not being updated in some cases, which combined with the recents-filter bug (32808e4), caused federated rooms to not appear in the recents list. 2014-09-18 12:02:52 +01:00
Kegan Dougal a6f5c88b47 Still add the room to the filtered list even if you can't work out the number of users in the room. 2014-09-18 12:02:51 +01:00
David Baker 1c0408de08 unbreak calls in firefox 2014-09-18 11:59:27 +01:00
David Baker e932e5237e WIP video chat layout 2014-09-18 11:04:45 +01:00
Kegan Dougal aeaeceb92c Create room entries for public rooms too so their public state is transferred over correctly when you join it. 2014-09-17 16:38:40 +01:00
Kegan Dougal 16f55d4275 webclient SYWEB-3 : Public rooms are bold. Can't think of a nicer way which doesn't clutter the recents list. 2014-09-17 16:38:40 +01:00
David Baker 1fb2c831e8 Video calling (in a tiny box at the moment) 2014-09-17 16:26:35 +01:00
Emmanuel ROHEE 246f5d2e20 SYWEB-30: BF: When switching between rooms, pagination flickered between the top of the room before jumping to the bottom of the page 2014-09-17 17:13:07 +02:00
Emmanuel ROHEE 65c37cc852 SYWEB-22: Format emote('/me') messages correctly in desktop notification 2014-09-17 16:13:09 +02:00
Emmanuel ROHEE fe7af80198 BF: edit the actual room name not the displayed room name (which has been computed) 2014-09-17 15:46:12 +02:00
Emmanuel ROHEE 9aed6a06cf SYWEB-15: Always show the room alias as well as its name in the UI 2014-09-17 15:38:20 +02:00
Emmanuel ROHEE b3a0961c6c SYWEB-7: Use sessionStorage to make per-room history survives when the user navigates through rooms 2014-09-17 14:38:33 +02:00
Emmanuel ROHEE d9a9a47075 SYWEB-7: Up & down keys let user step through the history as per readline or xchat 2014-09-17 14:18:39 +02:00
Emmanuel ROHEE f9bb000ccf WEB-35: joins/parts should trigger desktop notifications 2014-09-17 09:41:21 +02:00
Kegan Dougal d6c0cff3bd Bugfix when content isn't a string. 2014-09-16 16:31:16 +01:00
Kegan Dougal 95e171e19a Don't bing for sent messages. Handle cases where the member is unknown rather than erroring out. 2014-09-16 16:23:20 +01:00
Kegan Dougal d7b206cc93 Added basic RegExp support. 2014-09-16 16:10:48 +01:00
Emmanuel ROHEE 06dfbdf7c8 WEB-27: We don't need to show the user-count in Recents in the room sidepanel - takes up too much room 2014-09-16 17:07:47 +02:00
Kegan Dougal 3395a3305f Bing on all the things if there are 0 bing words. 2014-09-16 15:47:29 +01:00