1// Copyright (c) 2012 The Chromium Authors. All rights reserved. 2// Use of this source code is governed by a BSD-style license that can be 3// found in the LICENSE file. 4 5#ifndef CHROME_BROWSER_UI_ASH_LAUNCHER_CHROME_LAUNCHER_APP_MENU_ITEM_TAB_H_ 6#define CHROME_BROWSER_UI_ASH_LAUNCHER_CHROME_LAUNCHER_APP_MENU_ITEM_TAB_H_ 7 8#include "base/strings/string16.h" 9#include "chrome/browser/ui/ash/launcher/chrome_launcher_app_menu_item.h" 10#include "content/public/browser/web_contents_observer.h" 11 12namespace content{ 13class WebContents; 14} 15 16class TabStripModel; 17 18// A menu item controller for a running browser tab. It gets created when an 19// application/tab list gets created. It's main purpose is to add the 20// activation method to the |ChromeLauncherAppMenuItem| class. 21class ChromeLauncherAppMenuItemTab 22 : public ChromeLauncherAppMenuItem, 23 public content::WebContentsObserver { 24 public: 25 ChromeLauncherAppMenuItemTab(const base::string16 title, 26 const gfx::Image* icon, 27 content::WebContents* content, 28 bool has_leading_separator); 29 virtual bool IsActive() const OVERRIDE; 30 virtual bool IsEnabled() const OVERRIDE; 31 virtual void Execute(int event_flags) OVERRIDE; 32 33 private: 34 DISALLOW_COPY_AND_ASSIGN(ChromeLauncherAppMenuItemTab); 35}; 36 37#endif // CHROME_BROWSER_UI_ASH_LAUNCHER_CHROME_LAUNCHER_APP_MENU_ITEM_TAB_H_ 38