1// Copyright 2013 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_TEST_TEST_SCREENSHOT_DELEGATE_H_ 6#define ASH_TEST_TEST_SCREENSHOT_DELEGATE_H_ 7 8#include "ash/screenshot_delegate.h" 9#include "base/basictypes.h" 10#include "base/compiler_specific.h" 11#include "ui/gfx/rect.h" 12 13namespace ash { 14namespace test { 15 16class TestScreenshotDelegate : public ScreenshotDelegate { 17 public: 18 TestScreenshotDelegate(); 19 virtual ~TestScreenshotDelegate(); 20 21 // Overridden from ScreenshotDelegate: 22 virtual void HandleTakeScreenshotForAllRootWindows() OVERRIDE; 23 virtual void HandleTakePartialScreenshot( 24 aura::Window* window, const gfx::Rect& rect) OVERRIDE; 25 virtual bool CanTakeScreenshot() OVERRIDE; 26 27 int handle_take_screenshot_count() const { 28 return handle_take_screenshot_count_; 29 } 30 31 int handle_take_partial_screenshot_count() const { 32 return handle_take_partial_screenshot_count_; 33 } 34 35 const gfx::Rect& last_rect() const { return last_rect_; } 36 37 void set_can_take_screenshot(bool can_take_screenshot) { 38 can_take_screenshot_ = can_take_screenshot; 39 } 40 41 private: 42 int handle_take_screenshot_count_; 43 int handle_take_partial_screenshot_count_; 44 gfx::Rect last_rect_; 45 bool can_take_screenshot_; 46 47 DISALLOW_COPY_AND_ASSIGN(TestScreenshotDelegate); 48}; 49 50} // namespace test 51} // namespace ash 52 53#endif // ASH_TEST_TEST_SCREENSHOT_DELEGATE_H_ 54