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
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
Kegan Dougal
c289c70f27
SYJS-17: Update the core event dict completely before members.
...
The RoomState needs to be current before higher-level processing as this
processing may depend on the end state rather than the progressive state
(e.g. disambiguating BOTH RoomMember's display names).
2015-07-13 10:53:07 +01:00
Matthew Hodgson
f75453d5d5
ignore parted users when naming rooms
2015-07-08 14:55:08 +01:00
David Baker
f29f2a8115
Move getAvatarUrl into the client because it requires an instantiated client to work. Fix bits of client to use opts rather than credentials which doesn't exist.
2015-07-02 18:22:46 +01:00
Kegan Dougal
5691865035
Linting
2015-07-02 17:23:35 +01:00
Kegan Dougal
abe00deb65
Add getAvatarUrl() to RoomMember
2015-07-02 17:22:44 +01:00
Kegsay
df7bde4257
Merge pull request #10 from matrix-org/push
...
Push
2015-07-01 18:19:43 +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
David Baker
753a11ab7f
Move push actions method to the client
2015-07-01 14:09:34 +01:00
David Baker
c82b2049eb
prefix internal var with underscrore
2015-06-29 16:34:33 +01:00
David Baker
53f2f156ca
Fix linting errors
2015-06-29 16:09:07 +01:00
David Baker
083a0980eb
javascript function syntax #3...
2015-06-29 15:57:20 +01:00
David Baker
1be02a3c3c
Port over push rule eveluator from the angular SDK and make it available on MatrixEvent
2015-06-29 15:53:23 +01:00
Kegan Dougal
fd0eb0c674
Finish timline integration tests.
2015-06-26 13:53:01 +01:00
Kegan Dougal
3c4bda8580
Add MatrixScheduler.removeEventFromQueue/getQueueForEvent and QUEUED state.
...
This is to allow the UI to show "queued" on events as well as allow the
removal of events in the queue.
2015-06-26 09:52:52 +01:00
Kegan Dougal
21df000604
Add Room.addEvents UT
2015-06-25 14:00:52 +01:00
Kegan Dougal
1b665c176a
Add RoomState UTs
2015-06-24 14:57:04 +01:00
Kegan Dougal
d3377e3dea
Add RoomMember UTs. Fix disambiguation bug. Add CHANGELOG.
2015-06-24 13:35:19 +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
d151ac49f2
Mark events which fail to send.
2015-06-18 09:32:04 +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
f77e8e3bf7
Add User.events.presence property for storing the m.presence event for a user.
2015-06-15 10:20:04 +01:00
Kegan Dougal
94931cdc07
Remove broken function; add RoomMember.events.member property.
2015-06-15 09:49:54 +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
3061b95afe
Add getPrevContent function and mark it's situational presence.
2015-06-12 11:26:33 +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
Kegan Dougal
8e45d6b625
Bug fixes on initialSync and RoomMember.userId.
...
Don't assume that .state and .messages exist in /initialSync results.
Use state_key and not user_id when setting the userId of a RoomMember.
2015-06-11 16:29:36 +01:00
Kegan Dougal
19a5b99dea
Add RoomMember and RoomState event emissions with UTs. Hook everything up.
...
Distinguish between inserts and updates to the members dictionary to allow
listeners to add more hooks to the member before it has been given state.
2015-06-11 14:29:32 +01:00
Kegan Dougal
911ca1d5c5
Implement Room event emissions with UTs.
...
Shuffle test groupings into EventEmitter and startClient. Add more jsdoc.
2015-06-11 13:22:21 +01:00
Kegan Dougal
4c3e56ad4c
Add test for event emitting. Fix reEmit function.
2015-06-11 11:58:31 +01:00
Kegan Dougal
eaa02cd2ad
Add utils.inherits. Make User inherit EventEmitter.
...
utils.inherits is the Node.js impl but with the addition of a polyfill for
Object.create().
2015-06-11 11:37:43 +01:00