nextcloud / talk-ios

📱😀 Video & audio calls through Nextcloud on iOS
GNU General Public License v3.0
146 stars 88 forks source link

Fix race condition on setting remote video size #1753

Closed SystemKeeper closed 1 month ago

SystemKeeper commented 1 month ago

This seems to be an issue especially with external signaling, but might in theory be also possible with internal signaling.

It is possible that our delegate didChangeVideoSize is called before the cell is visible. Therefore, we are unable to update the cells remote video size at that point. Later, when the cell is added/updated, we never try to set the video size again, therefore a remote video size is never set. This basically disables the cell resize on double tap (to show the original video size, instead of the aspect fitted size).