| Index: content/renderer/presentation/presentation_dispatcher.cc
|
| diff --git a/content/renderer/presentation/presentation_dispatcher.cc b/content/renderer/presentation/presentation_dispatcher.cc
|
| index c1cf36ea8cd2df4ca77c15dc42a9bf21aa086ca4..6c68708facb2d4b85d98e37d647ac582eec2f465 100644
|
| --- a/content/renderer/presentation/presentation_dispatcher.cc
|
| +++ b/content/renderer/presentation/presentation_dispatcher.cc
|
| @@ -355,6 +355,23 @@ void PresentationDispatcher::OnScreenAvailabilityUpdated(bool available) {
|
| UpdateListeningState();
|
| }
|
|
|
| +void PresentationDispatcher::OnScreenAvailabilityNotSupported() {
|
| + DCHECK(listening_state_ == ListeningState::Waiting);
|
| +
|
| + for (AvailabilityCallbacksMap::iterator iter(&availability_callbacks_);
|
| + !iter.IsAtEnd(); iter.Advance()) {
|
| + iter.GetCurrentValue()->onError(new blink::WebPresentationError(
|
| + blink::WebPresentationError::ErrorTypeAvailabilityNotSupported,
|
| + blink::WebString::fromUTF8(
|
| + "getAvailability() isn't supported at the moment. It can be due to"
|
| + "a permanent or temporary system limitation. It is recommended to"
|
| + "try to blindly start a session in that case.")));
|
| + }
|
| + availability_callbacks_.Clear();
|
| +
|
| + UpdateListeningState();
|
| +}
|
| +
|
| void PresentationDispatcher::OnDefaultSessionStarted(
|
| presentation::PresentationSessionInfoPtr session_info) {
|
| if (!controller_)
|
|
|