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

Side by Side Diff: ui/views/controls/native/native_view_host_test_base.h

Issue 530933002: MacViews: Implement NativeViewHostMac (take 3) (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: acceptsFirstResponder, cleanup strays Created 6 years, 3 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
(Empty)
1 // Copyright 2014 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 "base/macros.h"
6 #include "base/memory/scoped_ptr.h"
7 #include "ui/views/test/views_test_base.h"
8
9 namespace views {
10
11 class NativeViewHost;
12 class NativeViewHostWrapper;
13 class Widget;
14
15 namespace test {
16
17 // Base class for NativeViewHost tests on different platforms.
18 class NativeViewHostTestBase : public ViewsTestBase {
19 public:
20 NativeViewHostTestBase();
21 virtual ~NativeViewHostTestBase();
22
23 // Create the |toplevel_| widget.
24 void CreateTopLevel();
25
26 // Create a testing |host_| that tracks destructor calls.
27 void CreateTestingHost();
28
29 // The number of times a host created by CreateHost() has been destroyed.
30 int host_destroyed_count() { return host_destroyed_count_; }
31 void ResetHostDestroyedCount() { host_destroyed_count_ = 0; }
32
33 // Create a child widget whose native parent is |native_parent_view|, uses
34 // |contents_view|, and is attached to |host| which is added as a child to
35 // |parent_view|. This effectively borrows the native content view from a
36 // newly created child Widget, and attaches it to |host|.
37 Widget* CreateChildForHost(gfx::NativeView native_parent_view,
38 View* parent_view,
39 View* contents_view,
40 NativeViewHost* host);
41
42 Widget* toplevel() { return toplevel_.get(); }
43 void DestroyTopLevel();
44
45 NativeViewHost* host() { return host_.get(); }
46 void DestroyHost();
47 NativeViewHost* ReleaseHost();
48
49 NativeViewHostWrapper* GetNativeWrapper();
50
51 private:
52 class NativeViewHostTesting;
53
54 scoped_ptr<Widget> toplevel_;
55 scoped_ptr<NativeViewHost> host_;
56 int host_destroyed_count_;
57
58 DISALLOW_COPY_AND_ASSIGN(NativeViewHostTestBase);
59 };
60
61 } // namespace test
62 } // namespace views
OLDNEW
« no previous file with comments | « ui/views/controls/native/native_view_host_mac_unittest.mm ('k') | ui/views/controls/native/native_view_host_test_base.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698