1
0
mirror of https://github.com/matrix-org/matrix-js-sdk.git synced 2025-09-01 21:21:58 +03:00
Commit Graph

61 Commits

Author SHA1 Message Date
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
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
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
6d6868df73 Mention the user_id of the inviter for invited room names 2015-08-14 17:09:21 +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
Matthew Hodgson
3a344a0138 turn off alias disambiguation, and add a method to grab room avatar urls 2015-07-15 03:53:51 +01:00
Kegan Dougal
8cb973e605 Fix SYJS-16: event.sender is sometimes null for locally sent events. 2015-07-14 12:00:19 +01:00
Matthew Hodgson
f75453d5d5 ignore parted users when naming rooms 2015-07-08 14:55:08 +01:00
Kegan Dougal
82de3b6f19 Begin scrollback implementation.
Add Room.storageToken to docs. Add unit test stubs for scrollback function.
Add a basic common-case implementation.
2015-07-01 18:04:59 +01:00
Kegan Dougal
fd0eb0c674 Finish timline integration tests. 2015-06-26 13:53:01 +01:00
Kegan Dougal
21df000604 Add Room.addEvents UT 2015-06-25 14:00:52 +01:00
Kegan Dougal
bc0e2ad504 Sync room state when joining via client.joinRoom
Does not currently sync state when another device joins.
Update node example app to refresh room list.
2015-06-22 17:50:49 +01:00
Kegan Dougal
8e6eb35dfe Implement local echo.
Mark events being sent via the status property. Update CHANGELOG.
2015-06-17 17:42:12 +01:00
Kegan Dougal
c6b11fc382 Make Room.calculateRoomName private to avoid confusion with Room.name. 2015-06-15 09:31:46 +01:00
Kegan Dougal
7a02c5d167 Add concept of 'sentinel' RoomMembers which watch state at a particular point in time.
New sentinels are only created when the RoomMember state changes, so we don't
needlessly deep copy RoomMembers f.e. MatrixEvent. Sentinels co-exist with
RoomState.members which are single instances to which listeners can be attached.
This gets the best of both worlds (don't have to keep re-attaching listeners on
member changes, don't have needless memory consumption).
2015-06-12 15:38:02 +01:00
Kegan Dougal
8a844d59ec Get historical display names working on messages.
Accessed via MatrixEvent.sender property. Deep copy the list of state events
from initial sync for old/current RoomState so updating the .sender property
doesn't affect both of them. Reverse the insertion of initial sync MatrixEvents
so state diverges to *earlier* points in time. Add a 'forwardLooking' property
to MatrixEvent to determine which out of 'content' and 'prev_content' entities
should take into account e.g. when determining display names. Finally, always
create new RoomMembers when they are updated in order to prevent corrupting
(read: sharing the same member object) the MatrixEvent.sender property of
existing events in the timeline.
2015-06-12 14:21:24 +01:00
Kegan Dougal
71dacb14b1 Add MatrixEvent.sender and .target to pull the right name per message. 2015-06-12 11:05:57 +01:00
Kegan Dougal
da7b31cb7e Add Room.getJoinedMembers helper. UX tweaks to example. 2015-06-12 10:49:13 +01:00
Kegan Dougal
8aefad221a Add client.getRooms. Add 'syncComplete' event. Display room invites. 2015-06-11 17:52:52 +01:00