[Presentation API] Change controller connection to 'terminated' when receiver connection terminates
When calling receiver connection.terminate(), we rely on MRP to change controller connection to 'terminated'. If receiver page goes away before MRP finishes setting up mirroring, MPR will signal 'closed' instead of 'terminated'. Fix this by making receiver connection proxy signal 'terminated' to controller connection when receiver frame goes away at browser side.
BUG=712858
Review-Url: https://codereview.chromium.org/2863903002
Cr-Commit-Position: refs/heads/master@{#472860}
Committed: https://chromium.googlesource.com/chromium/src/+/265357c7a152a62f98e998111f8b77c3779a234a
3 years, 7 months ago
(2017-05-05 17:43:27 UTC)
#2
mark a. foltz
On 2017/05/05 at 17:43:27, zhaobin wrote: > I need a little time to sort through ...
3 years, 7 months ago
(2017-05-09 22:47:54 UTC)
#3
On 2017/05/05 at 17:43:27, zhaobin wrote:
>
I need a little time to sort through this patch, since this state change logic
is spread between Blink and content/renderer.
I didn't like seeing a duplicate list of receiver connections maintained in
content/renderer when there is already one in PresentationConnectionList.
Would the following design be possible?
1. Have PresentationReceiver to get a call from WebPresentationReceiver that the
presentation has been terminated
2. Have it set the terminated state on all members of PresentationConnectionList
without firing events
3. Call didChangeState() to update embedder connection objects (proxies)
zhaobin
- Removed receiver_connection_proxy list from PresentationDispatcher - Added NotifyTargetConnection() function to PresentationConnection and PresentationConnectionProxy. - ...
3 years, 7 months ago
(2017-05-10 22:05:58 UTC)
#4
- Removed receiver_connection_proxy list from PresentationDispatcher
- Added NotifyTargetConnection() function to PresentationConnection and
PresentationConnectionProxy.
- Call didChangeState() to update embedder connection objects (proxies) when
presentation receiver terminates connections
mark a. foltz
LGTM, this looks much simpler and in line with the existing proxy design. Thanks :-) ...
3 years, 7 months ago
(2017-05-12 22:10:19 UTC)
#5
LGTM, this looks much simpler and in line with the existing proxy design.
Thanks :-)
Can a layout test be written for this change?
zhaobin
The CQ bit was checked by zhaobin@chromium.org to run a CQ dry run
3 years, 7 months ago
(2017-05-15 23:19:02 UTC)
#6
Dry run: Try jobs failed on following builders: linux_chromium_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_rel_ng/builds/455092)
3 years, 7 months ago
(2017-05-16 00:16:43 UTC)
#9
Dry run: Try jobs failed on following builders: linux_chromium_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_rel_ng/builds/456162)
3 years, 7 months ago
(2017-05-16 19:58:26 UTC)
#13
Dry run: Try jobs failed on following builders: mac_chromium_rel_ng on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_rel_ng/builds/455221)
3 years, 7 months ago
(2017-05-16 22:17:06 UTC)
#17
Dry run: Try jobs failed on following builders: linux_chromium_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_rel_ng/builds/456572)
3 years, 7 months ago
(2017-05-16 23:17:29 UTC)
#21
Dry run: Try jobs failed on following builders: linux_chromium_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_rel_ng/builds/457663)
3 years, 7 months ago
(2017-05-17 19:43:43 UTC)
#25
CQ is committing da patch. Bot data: {"patchset_id": 60001, "attempt_start_ts": 1495128591819490, "parent_rev": "15cfdc4408fe45fea2657592c9bd3dbf6ade27af", "commit_rev": "265357c7a152a62f98e998111f8b77c3779a234a"}
3 years, 7 months ago
(2017-05-18 17:40:16 UTC)
#35
CQ is committing da patch.
Bot data: {"patchset_id": 60001, "attempt_start_ts": 1495128591819490,
"parent_rev": "15cfdc4408fe45fea2657592c9bd3dbf6ade27af", "commit_rev":
"265357c7a152a62f98e998111f8b77c3779a234a"}
commit-bot: I haz the power
Description was changed from ========== [Presentation API] Change controller connection to 'terminated' when receiver connection ...
3 years, 7 months ago
(2017-05-18 17:40:27 UTC)
#36
Message was sent while issue was closed.
Description was changed from
==========
[Presentation API] Change controller connection to 'terminated' when receiver
connection terminates
When calling receiver connection.terminate(), we rely on MRP to change
controller connection to 'terminated'. If receiver page goes away before MRP
finishes setting up mirroring, MPR will signal 'closed' instead of 'terminated'.
Fix this by making receiver connection proxy signal 'terminated' to controller
connection when receiver frame goes away at browser side.
BUG=712858
==========
to
==========
[Presentation API] Change controller connection to 'terminated' when receiver
connection terminates
When calling receiver connection.terminate(), we rely on MRP to change
controller connection to 'terminated'. If receiver page goes away before MRP
finishes setting up mirroring, MPR will signal 'closed' instead of 'terminated'.
Fix this by making receiver connection proxy signal 'terminated' to controller
connection when receiver frame goes away at browser side.
BUG=712858
Review-Url: https://codereview.chromium.org/2863903002
Cr-Commit-Position: refs/heads/master@{#472860}
Committed:
https://chromium.googlesource.com/chromium/src/+/265357c7a152a62f98e998111f8b...
==========
commit-bot: I haz the power
Committed patchset #4 (id:60001) as https://chromium.googlesource.com/chromium/src/+/265357c7a152a62f98e998111f8b77c3779a234a
3 years, 7 months ago
(2017-05-18 17:40:28 UTC)
#37
Issue 2863903002: [Presentation API] Change controller connection to 'terminated' when receiver connection terminates
(Closed)
Created 3 years, 7 months ago by zhaobin
Modified 3 years, 7 months ago
Reviewers: mark a. foltz, imcheng
Base URL:
Comments: 0