* use simplex.chat relay
* update webrtc settings
* WebRTCView to use command/response types
* compress WebRTC session descriptions, simple web UI for calls
* update webrtc ui
* use webworked in desktop browser
* use RTCRtpScriptTransform in safari
* update android type
* refactor
* add await
* Managing battery optimization on Android 12+ via in-app UI
- in case of battery optimization is enabled a user will be asked to disable it if he wants to have a background service
- when the service is enabled but the user don't want to disable the battery optimization, the service will be disabled with an alert for the user
* update service notice conditions
* android: update notification service logic
* update translations
Co-authored-by: Avently <7953703+avently@users.noreply.github.com>
* mobile: webrtc calls state machine
* android: call api types
* android: call api methods
* ios: connect calls via chat UI (WIP)
* ios: webrtc call connects via UI
* core: update call duration/status when x.call.end is received
* improve call UX/UI
* audio calls
* different overlay for audio calls
* toggle video/audio in the call
* mobile: webrtc calls in webview (typescript WIP)
* typsecript compiles
* fix error messages
* TS works in chrome
* include ICE candidates into offer/answer, report connection state changes to host, end call on disconnection
* refactor, readme for .js file
* initial UI framework
* limited javascrtipt interaction
* run some js
* try to resolve permissions issues
* some initial RTC javascript
* approaching a workable js file
* js fixes
* tidy up js
* add some ui to web call
* fixes
* ready to test
* typo
* refactor for readability
* tidy up before adding encryption
* add transform to video streams
* tidy a little, audio encoding works, video fails
* minor changes
* use variables consistently
* e2ee video calls
git push
* include IV in outgoing message, decrypt fails when trying to read back
* add different prefix retention for differing frame types
* e2ee video calls with iv passed in band
* enforce use of VP8 encoding
* allow plaintext chunk only for video frames
* tidy up kotlin. Android <> browser tested
* minor ios changes
* capture js logs in xcode
* typo
* linting
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com>
* open source qr code scanner
* refined error localisation - todo moved
* tidy up to make picking back up easier
* better errors
* scan images one at a time and once per second to avoid multiple requests being sent
* more sophisticated avoidance of repeat contact requests
* remove format specifier
* refinements
* update QR scanner to use boofcv
* remove dependence on zxing
* attribution
* Update apps/android/app/src/main/java/chat/simplex/app/views/newchat/QRCodeScanner.kt
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com>
* initial implementation of textbox
* paste to connect box implemented (and tested) in android
* first pass at pastebox in iOS
* clean up iOS implementation
* put paste link page in for groups in android
* initial inclusion in iOS UI
* refactor naming
* lint kotlin
* fix typo
* ios: update "connect via link" ui, refactor connecting via link to use the one function
* android: update paste link UI
* add russian translations
* update translations
Co-authored-by: JRoberts <8711996+jr-simplex@users.noreply.github.com>
* update translations
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com>
Co-authored-by: JRoberts <8711996+jr-simplex@users.noreply.github.com>
* update manifest
* autoverify domain
* add path prefix to intent filter
* support contact links
* add android app readme
* only allow a single simplex task at a time to avoid opening simplex 'on top' of app with link