Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(474)

Side by Side Diff: chromecast/graphics/cast_window_manager_aura.h

Issue 2636303002: [Chromecast] Add support for z-order and window focus. (Closed)
Patch Set: Simplifications and unit tests. Created 3 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2017 The Chromium Authors. All rights reserved. 1 // Copyright 2017 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CHROMECAST_GRAPHICS_CAST_WINDOW_MANAGER_AURA_H_ 5 #ifndef CHROMECAST_GRAPHICS_CAST_WINDOW_MANAGER_AURA_H_
6 #define CHROMECAST_GRAPHICS_CAST_WINDOW_MANAGER_AURA_H_ 6 #define CHROMECAST_GRAPHICS_CAST_WINDOW_MANAGER_AURA_H_
7 7
8 #include <memory> 8 #include <memory>
9 9
10 #include "base/macros.h" 10 #include "base/macros.h"
11 #include "base/observer_list.h" 11 #include "chromecast/graphics/cast_focus_client_aura.h"
12 #include "chromecast/graphics/cast_vsync_settings.h" 12 #include "chromecast/graphics/cast_vsync_settings.h"
13 #include "chromecast/graphics/cast_window_manager.h" 13 #include "chromecast/graphics/cast_window_manager.h"
14 14
15 namespace aura { 15 namespace aura {
16 class Window;
17 namespace client { 16 namespace client {
18 class DefaultCaptureClient; 17 class DefaultCaptureClient;
19 } // namespace client 18 } // namespace client
20 } // namespace aura 19 } // namespace aura
21 20
22 namespace chromecast { 21 namespace chromecast {
23 22
23 class CastFocusClientAura;
halliwell 2017/01/24 00:54:46 nit, unnecessary
Joshua LeVasseur 2017/01/24 03:39:50 I keep this and toss the include file above.
24 class CastWindowTreeHost; 24 class CastWindowTreeHost;
25 25
26 class CastWindowManagerAura : public CastWindowManager, 26 class CastWindowManagerAura : public CastWindowManager,
27 private CastVSyncSettings::Observer { 27 private CastVSyncSettings::Observer {
28 public: 28 public:
29 ~CastWindowManagerAura() override; 29 ~CastWindowManagerAura() override;
30 30
31 // CastWindowManager implementation: 31 // CastWindowManager implementation:
32 void TearDown() override; 32 void TearDown() override;
33 void AddWindow(gfx::NativeView window) override; 33 void AddWindow(gfx::NativeView window) override;
34 34
35 private: 35 private:
36 friend class CastWindowManager; 36 friend class CastWindowManager;
37 37
38 // This class should only be instantiated by CastWindowManager::Create. 38 // This class should only be instantiated by CastWindowManager::Create.
39 explicit CastWindowManagerAura(bool enable_input); 39 explicit CastWindowManagerAura(bool enable_input);
40 40
41 // CastVSyncSettings::Observer implementation: 41 // CastVSyncSettings::Observer implementation:
42 void OnVSyncIntervalChanged(base::TimeDelta interval) override; 42 void OnVSyncIntervalChanged(base::TimeDelta interval) override;
43 43
44 void Setup(); 44 void Setup();
45 45
46 const bool enable_input_; 46 const bool enable_input_;
47 std::unique_ptr<CastWindowTreeHost> window_tree_host_; 47 std::unique_ptr<CastWindowTreeHost> window_tree_host_;
48 std::unique_ptr<aura::client::DefaultCaptureClient> capture_client_; 48 std::unique_ptr<aura::client::DefaultCaptureClient> capture_client_;
49 CastFocusClientAura focus_client_;
49 50
50 DISALLOW_COPY_AND_ASSIGN(CastWindowManagerAura); 51 DISALLOW_COPY_AND_ASSIGN(CastWindowManagerAura);
51 }; 52 };
52 53
53 } // namespace chromecast 54 } // namespace chromecast
54 55
55 #endif // CHROMECAST_GRAPHICS_CAST_WINDOW_MANAGER_AURA_H_ 56 #endif // CHROMECAST_GRAPHICS_CAST_WINDOW_MANAGER_AURA_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698