// 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. #include "ui/aura/client/capture_client.h" #include "ui/aura/window_event_dispatcher.h" #include "ui/aura/window_property.h" DECLARE_WINDOW_PROPERTY_TYPE(aura::client::CaptureClient*) namespace aura { namespace client { DEFINE_WINDOW_PROPERTY_KEY( CaptureClient*, kRootWindowCaptureClientKey, NULL); void SetCaptureClient(Window* root_window, CaptureClient* client) { root_window->SetProperty(kRootWindowCaptureClientKey, client); } CaptureClient* GetCaptureClient(Window* root_window) { return root_window ? root_window->GetProperty(kRootWindowCaptureClientKey) : NULL; } Window* GetCaptureWindow(Window* window) { Window* root_window = window->GetRootWindow(); if (!root_window) return NULL; CaptureClient* capture_client = GetCaptureClient(root_window); return capture_client ? capture_client->GetCaptureWindow() : NULL; } } // namespace client } // namespace aura