#include "chrome/browser/ui/views/global_media_controls/media_toolbar_button_view.h"
#include "base/feature_list.h"
#include "base/observer_list.h"
#include "base/strings/pattern.h"
#include "build/build_config.h"
#include "chrome/app/vector_icons/vector_icons.h"
#include "chrome/browser/feature_engagement/tracker_factory.h"
#include "chrome/browser/language/language_model_manager_factory.h"
#include "chrome/browser/media/router/media_router_feature.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/themes/theme_properties.h"
#include "chrome/browser/ui/browser.h"
#include "chrome/browser/ui/browser_element_identifiers.h"
#include "chrome/browser/ui/global_media_controls/media_notification_service.h"
#include "chrome/browser/ui/global_media_controls/media_notification_service_factory.h"
#include "chrome/browser/ui/global_media_controls/media_toolbar_button_controller.h"
#include "chrome/browser/ui/global_media_controls/media_toolbar_button_observer.h"
#include "chrome/browser/ui/views/frame/browser_view.h"
#include "chrome/browser/ui/views/global_media_controls/media_dialog_view.h"
#include "chrome/browser/ui/views/global_media_controls/media_toolbar_button_contextual_menu.h"
#include "chrome/grit/generated_resources.h"
#include "components/feature_engagement/public/feature_constants.h"
#include "components/feature_engagement/public/tracker.h"
#include "components/language/core/browser/language_model.h"
#include "components/language/core/browser/language_model_manager.h"
#include "components/live_caption/caption_util.h"
#include "components/vector_icons/vector_icons.h"
#include "media/base/media_switches.h"
#include "ui/base/l10n/l10n_util.h"
#include "ui/base/metadata/metadata_impl_macros.h"
#include "ui/base/pointer/touch_ui_controller.h"
#include "ui/base/theme_provider.h"
#include "ui/base/ui_base_features.h"
#include "ui/gfx/paint_vector_icon.h"
#include "ui/native_theme/native_theme.h"
#include "ui/views/accessibility/view_accessibility.h"
#include "ui/views/animation/ink_drop.h"
#include "ui/views/controls/button/button_controller.h"
#include "ui/views/view_class_properties.h"
MediaToolbarButtonView::MediaToolbarButtonView(
BrowserView* browser_view,
std::unique_ptr<MediaToolbarButtonContextualMenu> context_menu)
: … { … }
MediaToolbarButtonView::~MediaToolbarButtonView() { … }
void MediaToolbarButtonView::AddObserver(MediaToolbarButtonObserver* observer) { … }
void MediaToolbarButtonView::RemoveObserver(
MediaToolbarButtonObserver* observer) { … }
void MediaToolbarButtonView::Show() { … }
void MediaToolbarButtonView::Hide() { … }
void MediaToolbarButtonView::Enable() { … }
void MediaToolbarButtonView::Disable() { … }
void MediaToolbarButtonView::MaybeShowLocalMediaCastingPromo() { … }
void MediaToolbarButtonView::MaybeShowStopCastingPromo() { … }
void MediaToolbarButtonView::ButtonPressed() { … }
void MediaToolbarButtonView::ClosePromoBubble() { … }
BEGIN_METADATA(…)