7e99e812dd
This slightly changes the API when interacting from the FFI layer: - instead of `mark_as_unread` and `mark_as_read`, there's now a single method `set_unread_flag(bool)`, which callers may call with true (i.e. unread) or false (i.e. not unread). - there's a new method `mark_as_read` which sends a read receipt to the latest event in the timeline, using other commits from the same PR, - forcing a room as read requires calling first `set_unread_flag(false)` then `mark_as_read()`