• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright 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.
4 
5 #ifndef CHROME_BROWSER_UI_COCOA_TAB_CONTENTS_OVERLAYABLE_CONTENTS_CONTROLLER_H_
6 #define CHROME_BROWSER_UI_COCOA_TAB_CONTENTS_OVERLAYABLE_CONTENTS_CONTROLLER_H_
7 
8 #import <Cocoa/Cocoa.h>
9 
10 #include "base/mac/scoped_nsobject.h"
11 #include "base/memory/scoped_ptr.h"
12 
13 class Browser;
14 
15 namespace content {
16 class WebContents;
17 }
18 
19 // OverlayableContentsController is an obsolete wrapper holding the view where a
20 // tab's WebContents is displayed. In the old Chrome Instant implementation it
21 // multiplexed between the tab's contents and an overlay's contents. Now there
22 // is no overlay, but ripping this class out entirely is hard.
23 //
24 // TODO(sail): Remove this class and replace it with something saner.
25 @interface OverlayableContentsController : NSViewController {
26  @private
27   // Container view for the "active" contents.
28   base::scoped_nsobject<NSView> activeContainer_;
29 }
30 
31 @property(readonly, nonatomic) NSView* activeContainer;
32 
33 // Initialization.
34 - (id)initWithBrowser:(Browser*)browser;
35 
36 @end
37 
38 #endif  // CHROME_BROWSER_UI_COCOA_TAB_CONTENTS_OVERLAYABLE_CONTENTS_CONTROLLER_H_
39