Merge Chromium + Blink git repositories
[chromium-blink-merge.git] / ash / display / root_window_transformers.h
blob61ccea7f7a622505a8cdc17c3567eaba9ed07be4
1 // Copyright (c) 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.
5 #ifndef ASH_DISPLAY_ROOT_WINDOW_TRANSFORMERS_H_
6 #define ASH_DISPLAY_ROOT_WINDOW_TRANSFORMERS_H_
8 #include "ash/ash_export.h"
10 namespace aura {
11 class Window;
14 namespace gfx {
15 class Display;
16 class Rect;
17 class Transform;
20 namespace ash {
21 class DisplayInfo;
22 class RootWindowTransformer;
24 ASH_EXPORT RootWindowTransformer* CreateRootWindowTransformerForDisplay(
25 aura::Window* root,
26 const gfx::Display& display);
28 // Creates a RootWindowTransformers for mirror root window.
29 // |source_display_info| specifies the display being mirrored,
30 // and |mirror_display_info| specifies the display used to
31 // mirror the content.
32 ASH_EXPORT RootWindowTransformer* CreateRootWindowTransformerForMirroredDisplay(
33 const DisplayInfo& source_display_info,
34 const DisplayInfo& mirror_display_info);
36 // Creates a RootWindowTransformers for unified desktop mode.
37 // |screen_bounds| specifies the unified desktop's bounds and
38 // |display| specifies the display used to mirror the unified desktop.
39 ASH_EXPORT RootWindowTransformer* CreateRootWindowTransformerForUnifiedDesktop(
40 const gfx::Rect& screen_bounds,
41 const gfx::Display& display);
43 } // namespace ash
45 #endif // ASH_DISPLAY_ROOT_WINDOW_TRANSFORMERS_H_