Instead of caching pending messages during the handshake and relaying
them afterwards, they are now sent after the handshake has been
completed.
This is possible because the relevant processors (messages and status
changes) are now event handlers which are registered at the event bus,
which means that they can immediately react to pending messages even if
Client#initReceiver has not been fully executed yet.
Because Client#initReceiver exists for that very reason, it is no
longer necessary anymore. ID generator initialization, which was its other part,
is now directly handled in Startup#performHandshake, which is a far more
sensible placement.
Fixes#106
Reviewed-on: https://git.kske.dev/zdm/envoy/pulls/111
Reviewed-by: DieGurke <maxi@kske.dev>
Additionally fixed three bugs/ inconsistencies:
- status changing keyboard shortcuts are present again
- deleted cells no longer show a hand cursor
- any event method in LocalDB needing higher priority now has priority
500
one thing could for whatever reason not be avoided: Even though the
processors of the caches inside WriteProxy are initialized, they somehow
get "de-initialized" and have to be initialized again...
Additionally fixed a small bug in EnvoyLog and envoy.server.Startup,
fixed Receiver not stopping when the server was stopped
and added access token authorization for the server config
- Refactor chatList to userList in ContactSearchScene and
GroupCreationScene
- Narrow contact searches down to users on a datamodel basis
- Refactor ContactSearchRequest and ContactSearchResult to
UserSearchRequest and UserSearchResult