summaryrefslogtreecommitdiffstats
path: root/ash/screenshot_delegate.h
blob: 96e67bbd28343d153ae390fca755fa4fcb42ad43 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
// Copyright (c) 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef ASH_SCREENSHOT_DELEGATE_H_
#define ASH_SCREENSHOT_DELEGATE_H_
#pragma once

namespace aura {
class Window;
}  // namespace aura

namespace gfx {
class Rect;
}  // namespace gfx

namespace ash {

// Delegate for taking screenshots.
class ScreenshotDelegate {
 public:
  virtual ~ScreenshotDelegate() {}

  // The actual task of taking a screenshot for the given window.
  // This method is called when the user wants to take a screenshot
  // manually.
  virtual void HandleTakeScreenshot(aura::Window* window) = 0;

  // The actual task of taking a partial screenshot for the given
  // window.
  virtual void HandleTakePartialScreenshot(
      aura::Window* window, const gfx::Rect& rect) = 0;
};
}  // namespace ash

#endif  // ASH_SCREENSHOT_DELEGATE_H_