blob: 4c133d891a4424d4231d71998fb3c44eee413891 [file] [log] [blame]
[email protected]f8e6aad2013-08-30 21:49:111// 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
[email protected]fa781ec2013-09-05 20:13:555#ifndef ASH_ROOT_WINDOW_SETTINGS_H_
6#define ASH_ROOT_WINDOW_SETTINGS_H_
[email protected]f8e6aad2013-08-30 21:49:117
avidb567a8a2015-12-20 17:07:248#include <stdint.h>
9
[email protected]f8e6aad2013-08-30 21:49:1110#include "ash/ash_export.h"
[email protected]f8e6aad2013-08-30 21:49:1111
12namespace aura {
[email protected]bf9cdb362013-10-25 19:22:4513class Window;
[email protected]f8e6aad2013-08-30 21:49:1114}
15
16namespace ash {
[email protected]f8e6aad2013-08-30 21:49:1117
18class RootWindowController;
19
20// Per root window information should be stored here
21// instead of using plain aura root window property because
22// it can prevent mis-using on non root window.
23struct RootWindowSettings {
24 RootWindowSettings();
25
[email protected]f8e6aad2013-08-30 21:49:1126 // ID of the display associated with the root window.
avidb567a8a2015-12-20 17:07:2427 int64_t display_id;
[email protected]f8e6aad2013-08-30 21:49:1128
29 // RootWindowController for the root window. This may be NULL
30 // for the root window used for mirroring.
31 RootWindowController* controller;
32};
33
[email protected]fa781ec2013-09-05 20:13:5534// Initializes and returns RootWindowSettings for |root|.
35// It is owned by the |root|.
sadrulffeadfa2016-02-10 00:59:0236ASH_EXPORT RootWindowSettings* InitRootWindowSettings(aura::Window* root);
[email protected]f8e6aad2013-08-30 21:49:1137
38// Returns the RootWindowSettings for |root|.
[email protected]bf9cdb362013-10-25 19:22:4539ASH_EXPORT RootWindowSettings* GetRootWindowSettings(aura::Window* root);
[email protected]f8e6aad2013-08-30 21:49:1140
41// const version of GetRootWindowSettings.
jamescookb8dcef522016-06-25 14:42:5542ASH_EXPORT const RootWindowSettings* GetRootWindowSettings(
43 const aura::Window* root);
[email protected]f8e6aad2013-08-30 21:49:1144
[email protected]f8e6aad2013-08-30 21:49:1145} // namespace ash
46
[email protected]fa781ec2013-09-05 20:13:5547#endif // ASH_ROOT_WINDOW_SETTINGS_H_