#include "chrome/browser/ui/views/global_media_controls/media_toolbar_button_contextual_menu.h"
#include "base/strings/strcat.h"
#include "chrome/app/chrome_command_ids.h"
#include "chrome/browser/media/router/media_router_feature.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/ui/browser.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/singleton_tabs.h"
#include "chrome/common/pref_names.h"
#include "chrome/common/url_constants.h"
#include "chrome/grit/generated_resources.h"
#include "components/global_media_controls/public/media_item_manager.h"
#include "components/media_router/common/pref_names.h"
#include "components/prefs/pref_service.h"
namespace {
global_media_controls::MediaItemManager* GetItemManagerFromBrowser(
Browser* browser) { … }
}
std::unique_ptr<MediaToolbarButtonContextualMenu>
MediaToolbarButtonContextualMenu::Create(Browser* browser) { … }
MediaToolbarButtonContextualMenu::MediaToolbarButtonContextualMenu(
Browser* browser)
: … { … }
MediaToolbarButtonContextualMenu::~MediaToolbarButtonContextualMenu() = default;
std::unique_ptr<ui::SimpleMenuModel>
MediaToolbarButtonContextualMenu::CreateMenuModel() { … }
bool MediaToolbarButtonContextualMenu::IsCommandIdChecked(
int command_id) const { … }
bool MediaToolbarButtonContextualMenu::IsCommandIdEnabled(
int command_id) const { … }
void MediaToolbarButtonContextualMenu::ExecuteCommand(int command_id,
int event_flags) { … }
void MediaToolbarButtonContextualMenu::MenuClosed(ui::SimpleMenuModel* source) { … }
void MediaToolbarButtonContextualMenu::ToggleShowOtherSessions() { … }
#if BUILDFLAG(GOOGLE_CHROME_BRANDING)
void MediaToolbarButtonContextualMenu::ReportIssue() {
ShowSingletonTab(
browser_,
GURL(base::StrCat({"chrome://", chrome::kChromeUICastFeedbackHost})));
}
#endif