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#include "ash/root_window_settings.h"
6
7#include "ui/aura/window_event_dispatcher.h"
8#include "ui/aura/window_property.h"
9#include "ui/gfx/display.h"
10
11DECLARE_WINDOW_PROPERTY_TYPE(ash::RootWindowSettings*);
12
13namespace ash {
14
15DEFINE_OWNED_WINDOW_PROPERTY_KEY(RootWindowSettings,
16                                 kRootWindowSettingsKey, NULL);
17
18RootWindowSettings::RootWindowSettings()
19    : display_id(gfx::Display::kInvalidDisplayID),
20      controller(NULL) {
21}
22
23RootWindowSettings* InitRootWindowSettings(aura::Window* root) {
24  RootWindowSettings* settings = new RootWindowSettings();
25  root->SetProperty(kRootWindowSettingsKey, settings);
26  return settings;
27}
28
29RootWindowSettings* GetRootWindowSettings(aura::Window* root) {
30  return root->GetProperty(kRootWindowSettingsKey);
31}
32
33const RootWindowSettings* GetRootWindowSettings(const aura::Window* root) {
34  return root->GetProperty(kRootWindowSettingsKey);
35}
36
37}  // namespace ash
38