shell_delegate_impl.h revision 5821806d5e7f356e8fa4b058a389a808ea183019
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 ASH_SHELL_SHELL_DELEGATE_IMPL_H_ 6#define ASH_SHELL_SHELL_DELEGATE_IMPL_H_ 7 8#include "ash/shell_delegate.h" 9#include "base/compiler_specific.h" 10 11namespace ash { 12namespace shell { 13 14class LauncherDelegateImpl; 15class WindowWatcher; 16 17class ShellDelegateImpl : public ash::ShellDelegate { 18 public: 19 ShellDelegateImpl(); 20 virtual ~ShellDelegateImpl(); 21 22 void SetWatcher(WindowWatcher* watcher); 23 24 virtual bool IsUserLoggedIn() OVERRIDE; 25 virtual bool IsSessionStarted() OVERRIDE; 26 virtual bool IsFirstRunAfterBoot() OVERRIDE; 27 virtual void LockScreen() OVERRIDE; 28 virtual void UnlockScreen() OVERRIDE; 29 virtual bool IsScreenLocked() const OVERRIDE; 30 virtual void Shutdown() OVERRIDE; 31 virtual void Exit() OVERRIDE; 32 virtual void NewTab() OVERRIDE; 33 virtual void NewWindow(bool incognito) OVERRIDE; 34 virtual void ToggleMaximized() OVERRIDE; 35 virtual void OpenFileManager(bool as_dialog) OVERRIDE; 36 virtual void OpenCrosh() OVERRIDE; 37 virtual void OpenMobileSetup(const std::string& service_path) OVERRIDE; 38 virtual void RestoreTab() OVERRIDE; 39 virtual bool RotatePaneFocus(Shell::Direction direction) OVERRIDE; 40 virtual void ShowKeyboardOverlay() OVERRIDE; 41 virtual void ShowTaskManager() OVERRIDE; 42 virtual content::BrowserContext* GetCurrentBrowserContext() OVERRIDE; 43 virtual void ToggleSpokenFeedback() OVERRIDE; 44 virtual bool IsSpokenFeedbackEnabled() const OVERRIDE; 45 virtual app_list::AppListViewDelegate* CreateAppListViewDelegate() OVERRIDE; 46 virtual ash::LauncherDelegate* CreateLauncherDelegate( 47 ash::LauncherModel* model) OVERRIDE; 48 virtual ash::SystemTrayDelegate* CreateSystemTrayDelegate() OVERRIDE; 49 virtual ash::UserWallpaperDelegate* CreateUserWallpaperDelegate() OVERRIDE; 50 virtual ash::CapsLockDelegate* CreateCapsLockDelegate() OVERRIDE; 51 virtual aura::client::UserActionClient* CreateUserActionClient() OVERRIDE; 52 virtual void OpenFeedbackPage() OVERRIDE; 53 virtual void RecordUserMetricsAction(UserMetricsAction action) OVERRIDE; 54 virtual void HandleMediaNextTrack() OVERRIDE; 55 virtual void HandleMediaPlayPause() OVERRIDE; 56 virtual void HandleMediaPrevTrack() OVERRIDE; 57 virtual string16 GetTimeRemainingString(base::TimeDelta delta) OVERRIDE; 58 virtual void SaveScreenMagnifierScale(double scale) OVERRIDE; 59 virtual double GetSavedScreenMagnifierScale() OVERRIDE; 60 virtual ui::MenuModel* CreateContextMenu( 61 aura::RootWindow* root_window) OVERRIDE; 62 63 private: 64 // Used to update Launcher. Owned by main. 65 WindowWatcher* watcher_; 66 67 LauncherDelegateImpl* launcher_delegate_; 68 69 bool locked_; 70 bool spoken_feedback_enabled_; 71 72 DISALLOW_COPY_AND_ASSIGN(ShellDelegateImpl); 73}; 74 75} // namespace shell 76} // namespace ash 77 78#endif // ASH_SHELL_SHELL_DELEGATE_IMPL_H_ 79