Updating trunk VERSION from 2139.0 to 2140.0
[chromium-blink-merge.git] / ui / wm / public / activation_delegate.h
blob3c5b3aeb87c31bb51dc76a9fcf6f0e1113bff83c
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 #ifndef UI_WM_PUBLIC_ACTIVATION_DELEGATE_H_
6 #define UI_WM_PUBLIC_ACTIVATION_DELEGATE_H_
8 #include "ui/aura/aura_export.h"
10 namespace ui {
11 class Event;
14 namespace aura {
15 class Window;
16 namespace client {
18 // An interface implemented by an object that configures and responds to changes
19 // to a window's activation state.
20 class AURA_EXPORT ActivationDelegate {
21 public:
22 // Returns true if the window should be activated.
23 virtual bool ShouldActivate() const = 0;
25 protected:
26 virtual ~ActivationDelegate() {}
29 // Sets/Gets the ActivationDelegate on the Window. No ownership changes.
30 AURA_EXPORT void SetActivationDelegate(Window* window,
31 ActivationDelegate* delegate);
32 AURA_EXPORT ActivationDelegate* GetActivationDelegate(Window* window);
34 } // namespace client
35 } // namespace aura
37 #endif // UI_WM_PUBLIC_ACTIVATION_DELEGATE_H_