Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Various CallKit and ElementCall fixes #2975

Merged
merged 3 commits into from
Jul 17, 2024

Conversation

stefanceriu
Copy link
Member

@stefanceriu stefanceriu commented Jun 27, 2024

  • fixes video stream problems
  • hooks up muting to call kit but keeps it disabled for now as EC doesn't expose a way to forward the events yet
  • infers remote hangups and cancels local ringing

@stefanceriu stefanceriu added the pr-feature for a new feature label Jun 27, 2024
Copy link

github-actions bot commented Jun 27, 2024

Fails
🚫

Please add a pr- label to categorise the changelog entry.

Warnings
⚠️ Some of the commits are missing ticket numbers. Please consider squashing all commits that don't have a tracking number.
⚠️ You seem to have made changes to views. Please consider adding screenshots.

Generated by 🚫 Danger Swift against 8c1f4a7

Copy link

codecov bot commented Jun 27, 2024

Codecov Report

Attention: Patch coverage is 0% with 122 lines in your changes missing coverage. Please review.

Project coverage is 77.77%. Comparing base (d295a1e) to head (f1dd27d).

Files Patch % Lines
...rces/Services/ElementCall/ElementCallService.swift 0.00% 78 Missing ⚠️
...urces/Screens/CallScreen/CallScreenViewModel.swift 0.00% 29 Missing ⚠️
ElementX/Sources/Application/AppCoordinator.swift 0.00% 10 Missing ⚠️
...X/Sources/Screens/CallScreen/View/CallScreen.swift 0.00% 3 Missing ⚠️
.../FlowCoordinators/UserSessionFlowCoordinator.swift 0.00% 2 Missing ⚠️
Additional details and impacted files
@@             Coverage Diff             @@
##           develop    #2975      +/-   ##
===========================================
- Coverage    77.96%   77.77%   -0.20%     
===========================================
  Files          695      695              
  Lines        54001    54107     +106     
===========================================
- Hits         42103    42081      -22     
- Misses       11898    12026     +128     
Flag Coverage Δ
unittests 68.63% <0.00%> (-0.18%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@stefanceriu stefanceriu force-pushed the stefan/callKitElementCallMuting branch 5 times, most recently from 897b806 to 6ee7cda Compare July 16, 2024 14:13
@stefanceriu stefanceriu changed the title Hook up CallKit lock screen muting controls to the ElementCall widget Various CallKit and ElementCall fixes Jul 16, 2024
@stefanceriu stefanceriu force-pushed the stefan/callKitElementCallMuting branch from 6ee7cda to 670c4b2 Compare July 16, 2024 14:15
@stefanceriu stefanceriu added the pr-bugfix for bug fix label Jul 16, 2024
@stefanceriu stefanceriu marked this pull request as ready for review July 16, 2024 14:21
@stefanceriu stefanceriu requested a review from a team as a code owner July 16, 2024 14:21
@stefanceriu stefanceriu requested review from pixlwave and removed request for a team July 16, 2024 14:21
- not completely sure why this happens but `reportOutgoingCall` interferes with how the WebView gets access to video streams
- the call itself isn't really necessary so removing it is the simplest way forward
Copy link
Member

@pixlwave pixlwave left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM 👍

@@ -155,6 +155,13 @@ class RoomProxy: RoomProxyProtocol {
subscribeToTypingNotifications()
}

func subscribeToRoomInfoUpdates() {
roomInfoObservationToken = room.subscribeToRoomInfoUpdates(listener: RoomInfoUpdateListener { [weak self] in
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe this should guard that roomInfoObservationToken == nil or similar before continuing?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I initially figured this should really do anything if not guarded but now that you mentioned it it might produce unwanted side effects on the rust side.

On the other hand I'm wondering, should we always subscribe to this as soon as the RoomProxy is created? It's really weird to hook into that publisher and have nothing coming in because you forgot to call this 🤔

@stefanceriu stefanceriu force-pushed the stefan/callKitElementCallMuting branch from f1dd27d to 8c1f4a7 Compare July 17, 2024 07:21
@stefanceriu stefanceriu merged commit 239afeb into develop Jul 17, 2024
4 of 5 checks passed
@stefanceriu stefanceriu deleted the stefan/callKitElementCallMuting branch July 17, 2024 07:24
Copy link

sonarcloud bot commented Jul 17, 2024

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
pr-bugfix for bug fix pr-feature for a new feature
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants