1 // Copyright (c) 2012 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 #include "ui/aura/client/capture_client.h"
7 #include "ui/aura/window_event_dispatcher.h"
8 #include "ui/aura/window_property.h"
10 DECLARE_WINDOW_PROPERTY_TYPE(aura::client::CaptureClient
*)
15 DEFINE_WINDOW_PROPERTY_KEY(
16 CaptureClient
*, kRootWindowCaptureClientKey
, NULL
);
18 void SetCaptureClient(Window
* root_window
, CaptureClient
* client
) {
19 root_window
->SetProperty(kRootWindowCaptureClientKey
, client
);
22 CaptureClient
* GetCaptureClient(Window
* root_window
) {
24 root_window
->GetProperty(kRootWindowCaptureClientKey
) : NULL
;
27 Window
* GetCaptureWindow(Window
* window
) {
28 Window
* root_window
= window
->GetRootWindow();
31 CaptureClient
* capture_client
= GetCaptureClient(root_window
);
32 return capture_client
? capture_client
->GetCaptureWindow() : NULL
;