New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 693309 link

Starred by 3 users

Issue metadata

Status: Fixed
Owner:
Last visit > 30 days ago
Closed: Apr 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 2
Type: Bug

Blocking:
issue 705170


Participants' hotlists:
presentation-api-1ua


Sign in to add a comment

[Presentation API] Connection state is always 'connecting' if start a presentation with url "https://www.google.com"

Project Member Reported by zhaobin@chromium.org, Feb 17 2017

Issue description

Start a presentation with url "https://www.google.com".

Expect:
  connection state becomes 'connected' after presentation starts

Actual:
  connection state is always 'connecting' even if presentation starts successfully

Cause: We do not create PresentationReceiver object if presentation.receiver property is not accessed.
 
presentation.html
565 bytes View Download
Components: Blink>PresentationAPI
Owner: zhaobin@chromium.org
Status: Assigned (was: Untriaged)
Bin, we seem to think there's already another bug about there about this (that's been fixed).  Can you verify whether this still an issue?

Comment 3 by mfo...@chromium.org, Mar 23 2017

Labels: -Pri-3 Pri-2
Per discussion it's a bug.  The connection should be connected independent of access via presentation.receiver.

Comment 4 by mfo...@chromium.org, Mar 23 2017

Labels: M-59

Comment 5 by mfo...@chromium.org, Mar 27 2017

Cc: imch...@chromium.org fbeaufort@chromium.org zhaobin@chromium.org
 Issue 705610  has been merged into this issue.
Tried to create PresentationReceiver object in ChromeClientImpl. It fixed this bug but broke pages accessing navigator.presentation.receiver. ChromeClientImpl creates PresentationReceiver earlier than Presentation::receiver(), and may fire connectionavailable and message events before event handlers are registered...

Comment 7 by mfo...@chromium.org, Mar 29 2017

Blocking: 705170
Cc: mlamouri@chromium.org
+mlamouri@

we would like to fix this by creating navigator.presentation.receiver object by default (even if page does not access this attribute) if presentationReceiver flag is set. Any suggestion about how to do this? 

(Tried to create PresentationReceiver in LocalFrameClientImpl::dispatchDidClearWindowObjectInMainWorld(), it functionally works but breaks presentation receiver related layout tests and not sure how to fix them)
zhabin@, so sorry for missing your comment here. Sounds like you found the solution to your problem though :)

Note that we are trying to avoid setting up things in dispatchDidClearWindowObjectInMainWorld. If you look at modules/ModulesInitializer.cpp you will see that we are registering some callbacks to be run when a LocalFrame is initialised. It might not work fully for what you need but maybe something to look at if you are interested to clean this up :)
Status: Fixed (was: Assigned)

Sign in to add a comment