1868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)// Copyright 2013 The Chromium Authors. All rights reserved. 2868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 3868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)// found in the LICENSE file. 4868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) 5868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)#ifndef ASH_SYSTEM_CHROMEOS_SCREEN_CAPTURE_SCREEN_CAPTURE_TRAY_ITEM_H_ 6868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)#define ASH_SYSTEM_CHROMEOS_SCREEN_CAPTURE_SCREEN_CAPTURE_TRAY_ITEM_H_ 7868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) 8868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)#include "ash/system/chromeos/screen_security/screen_capture_observer.h" 9868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)#include "ash/system/chromeos/screen_security/screen_tray_item.h" 10868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) 11868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)namespace views { 12868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)class View; 13868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)} 14868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) 15868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)namespace ash { 16868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) 17eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdochclass ASH_EXPORT ScreenCaptureTrayItem : public ScreenTrayItem, 18eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch public ScreenCaptureObserver { 19868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) public: 20868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) explicit ScreenCaptureTrayItem(SystemTray* system_tray); 21868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) virtual ~ScreenCaptureTrayItem(); 22868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) 23868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) private: 24bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch // Overridden from SystemTrayItem. 25868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) virtual views::View* CreateTrayView(user::LoginStatus status) OVERRIDE; 26868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) virtual views::View* CreateDefaultView(user::LoginStatus status) OVERRIDE; 27bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch 28bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch // Overridden from ScreenTrayItem. 29bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch virtual void CreateOrUpdateNotification() OVERRIDE; 30bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch virtual std::string GetNotificationId() OVERRIDE; 31868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) 32868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) // Overridden from ScreenCaptureObserver. 33868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) virtual void OnScreenCaptureStart( 34868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) const base::Closure& stop_callback, 35868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) const base::string16& screen_capture_status) OVERRIDE; 36868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) virtual void OnScreenCaptureStop() OVERRIDE; 37868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) 38868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) base::string16 screen_capture_status_; 39868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) 40868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) DISALLOW_COPY_AND_ASSIGN(ScreenCaptureTrayItem); 41868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)}; 42868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) 43868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)} // namespace ash 44868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) 45868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)#endif // ASH_SYSTEM_CHROMEOS_SCREEN_CAPTURE_SCREEN_CAPTURE_TRAY_ITEM_H_ 46