This consolidates the logic for reporting stopped playback to the server so it is only reported when MEDIA_FINISHED event is fired. In addition, the current position reported to the server will be the current time reported by the Cast player which will be the most accurate representation. If this is not available, it will fall back to the existing logic of checking the current playback position from the receiver's playback state.
This PR also fixes an issue that occurs when changing audio or subtitle streams. The Cast view would show the "waiting" view after a request to change subtitle or audio streams. Now, the player remains visible when changing streams.
This consolidates the logic for reporting stopped playback to the server so it is only reported when MEDIA_FINISHED event is fired. In addition, the current position reported to the server will be the current time reported by the Cast player which will be the most accurate representation. If this is not available, it will fall back to the existing logic of checking the current playback position from the receiver's playback state.
This PR also fixes an issue that occurs when changing audio or subtitle streams. The Cast view would show the "waiting" view after a request to change subtitle or audio streams. Now, the player remains visible when changing streams.