Fix#4799
For every call was created new connection. First call was success. The second
call leaded to double answer: after the second core removes 'friendNum' from
'calls' list and cancels call. The third call leaded to triple answer, where the
first two same as before and the last one - tried to answer on call with removed
'friendNum' => assert failed.
Fix#4800.
In old implementation after Core title change notification, Group
updates self name and emit signal, core as subscribed on this signal and try to
change title twice.
In new implementation was added new signal to Group:
1. To notify core about user changes.
2. To notify views about core changes.
Brief list of changes:
- changed way of getting count of formatting symbols for captured
string: patternSignsCount() function replaced with constant index
which points to regex group that captures formatting symbols.
Regexes updated accordingly;
- updated docs for applyMarkdown() function;
- applyMarkdown() function refactored:
* changed var names;
* logic is more strict: get captured string -> crop formatting symbols
if necessary -> wrap captured string into HTML and replace in result.
Brief list of changes:
- removed several headers;
- added single array of pairs for direct mapping regexes to HTML
wrapper strings;
- COMMON_PATTERN splitted into two regexes;
- wrapper for hrefs is a single constant.
Brief list of changes:
- removed workarounds while applying markdown;
- URL highlighting now is independent for markdown support;
- URL patterns reverted to the state they were before.
-inverted call active booleans
-audio subscription leak on move assignment
-NullVideoBitrate check
-return peers list by reference so that adding audio source in GroupCallCallback is persisted
-fix output muting for friend calls