David Baker
14a48c1182
Synthesize implicit read receipts in recalculateRoom to make them correct when the room is first loaded.
2015-11-06 15:13:30 +00:00
Kegsay
455ce26741
Merge pull request #40 from matrix-org/kegan/syncing
...
Syncing bugs/fixes
2015-11-05 14:53:47 +00:00
David Baker
d34f8eda1a
Merge pull request #41 from matrix-org/implicit_read_receipts
...
Implicit read receipts
2015-11-05 14:42:48 +00:00
David Baker
483095c3da
Fix PR comments
2015-11-05 14:41:35 +00:00
David Baker
856c34016d
Fix event removal
2015-11-05 14:13:52 +00:00
David Baker
ad80d4f059
fix lint errors
2015-11-05 13:57:21 +00:00
David Baker
0da547a239
Implicit read receipts
...
* Inject implicit read receipts into the timeline
* Twiddle local echo a bit to make the implicit receipts match the various different stages of local echo.
2015-11-05 13:39:03 +00:00
David Baker
bc512a6e4c
Check m.room.name event actually has a name in the content before using it. This should fix the recent disasters with #android being shown as 'undefined' (or crashing vector).
2015-11-04 15:20:25 +00:00
David Baker
904539df58
Fix c+p fail & add unit test
2015-11-04 12:02:02 +00:00
David Baker
142ee81e66
Emit events for read receipts
2015-11-03 11:43:52 +00:00
Kegan Dougal
0fb307d09b
Use the history length specified in startClient() for room initial syncs.
2015-11-03 10:15:30 +00:00
David Baker
c6aac8cbd9
Merge pull request #35 from matrix-org/event_read_up_to
...
Add event to get last read receipt for a user.
2015-11-02 16:04:16 +00:00
David Baker
1b43bc78d0
Remove unnecessary null check & s/"/'/
2015-11-02 16:02:48 +00:00
David Baker
083dde3557
Fix doc
2015-11-02 16:00:40 +00:00
David Baker
4adc5f2c85
Also need to check if the event is null
2015-11-02 15:19:29 +00:00
Daniel Wagner-Hall
0b42d85c5b
Use double-quotes for consistency
2015-11-02 15:07:47 +00:00
David Baker
c4a35020f1
Add event to get last read receipt for a user.
2015-11-02 14:39:10 +00:00
Daniel Wagner-Hall
11f052bcc6
Simplify logic and layout
2015-10-30 14:58:59 +00:00
Matthew Hodgson
4c051202af
s/getMembersWithMemership/getMembersWithMembership/g
2015-10-24 01:45:02 +01:00
Kegan Dougal
02b836698c
More clarity on cache updating
2015-10-21 14:07:14 +01:00
Kegan Dougal
5888c8a56c
Commenting on splice
2015-10-21 13:47:23 +01:00
Kegan Dougal
1cee7bf397
JSDoc
2015-10-21 13:30:32 +01:00
Kegan Dougal
cab7a71a94
Change calculating display names from O(n^2) to O(n)
...
Reduces initial sync times from ~30s to ~1s on accounts with heavily
populated rooms.
The problem was that f.e. RoomMember it would try to calculate the
display name, which involved looping each RoomMember to get their
display name to check for disambiguation. We now cache display names
to user IDs so we don't need to loop every member when disambiguating.
2015-10-21 13:25:23 +01:00
Kegan Dougal
343d63a28a
Merge branch 'develop' into room-avatars
2015-10-19 15:33:42 +01:00
Kegsay
0a28d6e950
Merge pull request #26 from matrix-org/invite-room-state
...
Invite room state
2015-10-19 15:31:45 +01:00
Kegsay
37a8c9bd72
Merge pull request #23 from matrix-org/read_receipts
...
Receipts
2015-10-19 15:30:23 +01:00
Kegan Dougal
2c213f88d9
Units! Tests! Linting!
2015-10-19 15:24:24 +01:00
Kegan Dougal
a236219111
ContentRepo unit tests
2015-10-19 15:00:06 +01:00
Kegan Dougal
2f9958cca9
JSDoc linkify
2015-10-19 14:37:17 +01:00
Kegan Dougal
f26154d0ac
Add support for m.room.avatar: refactor avatar URLs
...
BREAKING CHANGE.
Scope each "getAvatarUrl" to be instance methods on the entity it
relates to (Room and RoomMember respectively). By doing this, we
can actually pull out specific state such as the `m.room.avatar`
event more easily rather than keeping it in the global cesspit
of `MatrixClient`.
This was complicated by `getHttpUriForMxc` and `getIdenticonUri`
which were attached to the HTTP API to pull out the `baseUrl` when
crafting the URL. Pull out this dependency out and explicitly pass
it in when crafting the URL. This is trivial to get from
`MatrixClient.getHomeserverUrl()`.
2015-10-19 14:14:34 +01:00
Kegan Dougal
5ae87b7c95
Bug fixes and unit tests
2015-10-16 17:27:05 +01:00
Kegan Dougal
219103a4e2
Yank out invite event from initialSync. Set stripped state events when recalculating invited rooms.
2015-10-16 17:07:04 +01:00
Kegan Dougal
bad8b7fb76
Look for a canonical alias when determining the room name
2015-10-16 14:30:21 +01:00
Kegan Dougal
7ec8421d19
Fix linting errors
2015-10-16 11:38:49 +01:00
Kegan Dougal
9048efeb65
Implement receipt handling and expose new Room functions
...
Add polyfills for Array.map/filter according to MDN because it looks much
better than the utils format.
Add stub tests for edge cases and implement test for the common case.
2015-10-16 11:32:27 +01:00
Kegan Dougal
cde948814a
Linting (jsdoc)
2015-10-13 10:20:38 +01:00
Kegan Dougal
2bb65fe644
Add RoomState.getLastModifiedTime() and JSDoc
2015-10-13 10:18:01 +01:00
Kegan Dougal
1260dcee76
Add User.getLastModifiedTime()
2015-10-13 10:11:22 +01:00
Kegan Dougal
3baab40bdb
Add RoomMember.getLastModifiedTime()
2015-10-13 10:09:38 +01:00
Kegan Dougal
6d6868df73
Mention the user_id of the inviter for invited room names
2015-08-14 17:09:21 +01:00
Mark Haines
ae8e01839e
Add flag for indicating if an event was encrypted
2015-07-22 11:57:34 +01:00
David Baker
348d3f4ce1
Merge pull request #17 from matrix-org/markjh/end_to_end
...
Add support for end-to-end using olm
2015-07-21 13:12:01 -07:00
Kegan Dougal
358cdaf167
Fix linting errors
2015-07-21 17:20:35 +01:00
Kegan Dougal
90e778cb84
Handle redactions (both live and historic).
2015-07-21 17:14:11 +01:00
Kegan Dougal
6653d294d9
Re-apply metadata after setStateEvents to correctly apply sender/target props for m.room.member events.
2015-07-21 16:58:14 +01:00
Erik Johnston
f716431f65
Make getJoinedUsers call getMembersWithMembership
2015-07-21 15:41:33 +01:00
Erik Johnston
86e73bdd35
Add getMembersWithMembership to get all members with given membership state
2015-07-21 15:31:58 +01:00
Mark Haines
6dae0ef327
Fix the local echo for encrypted events by sending a single event with different content and event type for the wire vs local display
2015-07-21 14:19:24 +01:00
Kegan Dougal
93a104fe4c
Fire presence first time if presence event unset.
2015-07-20 11:28:13 +01:00
Matthew Hodgson
beb8bff084
placeholder code for defaulting displaynames to userids, except it needs disambiguation logic
2015-07-18 15:40:19 +01:00