#include "chrome/browser/ui/views/media_router/cast_dialog_metrics.h"
#include "base/metrics/histogram_macros.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/ui/media_router/ui_media_sink.h"
#include "chrome/common/pref_names.h"
#include "components/media_router/common/mojom/media_route_provider_id.mojom-shared.h"
#include "components/media_router/common/pref_names.h"
#include "components/prefs/pref_service.h"
namespace media_router {
MediaRouteProviderId;
namespace {
DialogActivationLocationAndCastMode GetActivationLocationAndCastMode(
MediaRouterDialogActivationLocation activation_location,
MediaCastMode cast_mode,
bool is_icon_pinned) { … }
}
CastDialogMetrics::CastDialogMetrics(
const base::Time& initialization_time,
MediaRouterDialogActivationLocation activation_location,
Profile* profile)
: … { … }
CastDialogMetrics::~CastDialogMetrics() = default;
void CastDialogMetrics::OnSinksLoaded(const base::Time& sinks_load_time) { … }
void CastDialogMetrics::OnStartCasting(MediaCastMode cast_mode,
SinkIconType icon_type) { … }
void CastDialogMetrics::OnRecordSinkCount(
const std::vector<CastDialogSinkButton*>& sink_buttons) { … }
void CastDialogMetrics::OnRecordSinkCount(
const std::vector<raw_ptr<CastDialogSinkView, DanglingUntriaged>>&
sink_views) { … }
void CastDialogMetrics::MaybeRecordActivationLocationAndCastMode(
MediaCastMode cast_mode) { … }
}