blob: cc69d87c904b813395052ed05afb0050213c16d3 [file] [log] [blame]
// Copyright 2020 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "weblayer/browser/tts_environment_android_impl.h"
#include "base/callback.h"
namespace weblayer {
TtsEnvironmentAndroidImpl::TtsEnvironmentAndroidImpl() = default;
TtsEnvironmentAndroidImpl::~TtsEnvironmentAndroidImpl() = default;
bool TtsEnvironmentAndroidImpl::CanSpeakUtterancesFromHiddenWebContents() {
// For simplicity's sake, disallow playing utterances in hidden WebContents.
// Other options are to allow this, and instead cancel any utterances when
// all browsers are paused.
return false;
}
bool TtsEnvironmentAndroidImpl::CanSpeakNow() {
// Always return true, as by the time we get here we know the WebContents
// is visible (because CanSpeakUtterancesFromHiddenWebContents() returns
// false). Further, when the fragment is paused/stopped the WebContents is
// hidden, which triggers the utterance to stop (because
// CanSpeakUtterancesFromHiddenWebContents() returns false).
return true;
}
void TtsEnvironmentAndroidImpl::SetCanSpeakNowChangedCallback(
base::RepeatingClosure callback) {
// As CanSpeakNow() always returns true, there is nothing to do here.
}
} // namespace weblayer