14e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)// Copyright 2013 The Chromium Authors. All rights reserved. 24e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 34e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)// found in the LICENSE file. 44e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) 54e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#ifndef ASH_TEST_TEST_SCREENSHOT_DELEGATE_H_ 64e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#define ASH_TEST_TEST_SCREENSHOT_DELEGATE_H_ 74e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) 84e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#include "ash/screenshot_delegate.h" 94e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#include "base/basictypes.h" 104e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#include "base/compiler_specific.h" 114e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#include "ui/gfx/rect.h" 124e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) 134e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)namespace ash { 144e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)namespace test { 154e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) 164e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)class TestScreenshotDelegate : public ScreenshotDelegate { 174e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) public: 184e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) TestScreenshotDelegate(); 194e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) virtual ~TestScreenshotDelegate(); 204e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) 214e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) // Overridden from ScreenshotDelegate: 224e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) virtual void HandleTakeScreenshotForAllRootWindows() OVERRIDE; 234e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) virtual void HandleTakePartialScreenshot( 244e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) aura::Window* window, const gfx::Rect& rect) OVERRIDE; 254e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) virtual bool CanTakeScreenshot() OVERRIDE; 264e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) 274e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) int handle_take_screenshot_count() const { 284e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) return handle_take_screenshot_count_; 294e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) } 304e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) 314e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) int handle_take_partial_screenshot_count() const { 324e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) return handle_take_partial_screenshot_count_; 334e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) } 344e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) 354e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) const gfx::Rect& last_rect() const { return last_rect_; } 364e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) 374e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) void set_can_take_screenshot(bool can_take_screenshot) { 384e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) can_take_screenshot_ = can_take_screenshot; 394e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) } 404e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) 414e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) private: 424e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) int handle_take_screenshot_count_; 434e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) int handle_take_partial_screenshot_count_; 444e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) gfx::Rect last_rect_; 454e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) bool can_take_screenshot_; 464e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) 474e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) DISALLOW_COPY_AND_ASSIGN(TestScreenshotDelegate); 484e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)}; 494e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) 504e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)} // namespace test 514e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)} // namespace ash 524e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) 534e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#endif // ASH_TEST_TEST_SCREENSHOT_DELEGATE_H_ 54