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 #include "chrome/browser/ui/ash/launcher/chrome_launcher_app_menu_item_v2app.h"
6
7 #include "chrome/browser/ui/ash/launcher/chrome_launcher_controller.h"
8
ChromeLauncherAppMenuItemV2App(const base::string16 title,const gfx::Image * icon,const std::string & app_id,ChromeLauncherController * launcher_controller,int app_index,bool has_leading_separator)9 ChromeLauncherAppMenuItemV2App::ChromeLauncherAppMenuItemV2App(
10 const base::string16 title,
11 const gfx::Image* icon,
12 const std::string& app_id,
13 ChromeLauncherController* launcher_controller,
14 int app_index,
15 bool has_leading_separator)
16 : ChromeLauncherAppMenuItem(title, icon, has_leading_separator),
17 launcher_controller_(launcher_controller),
18 app_id_(app_id),
19 app_index_(app_index) {
20 }
21
IsEnabled() const22 bool ChromeLauncherAppMenuItemV2App::IsEnabled() const {
23 return true;
24 }
25
Execute(int event_flags)26 void ChromeLauncherAppMenuItemV2App::Execute(int event_flags) {
27 // Note: At this time there is only a single app running at any point. as
28 // such we will never come here with usable |event_flags|. If that ever
29 // changes we should add some special close code here.
30 // Note: If the application item did go away since the menu was created,
31 // The controller will take care of it.
32 launcher_controller_->ActivateShellApp(app_id_, app_index_);
33 }
34