root/chrome/browser/ui/cocoa/tab_contents/overlayable_contents_controller.h

/* [<][>][^][v][top][bottom][index][help] */
// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef CHROME_BROWSER_UI_COCOA_TAB_CONTENTS_OVERLAYABLE_CONTENTS_CONTROLLER_H_
#define CHROME_BROWSER_UI_COCOA_TAB_CONTENTS_OVERLAYABLE_CONTENTS_CONTROLLER_H_

#import <Cocoa/Cocoa.h>

#include "base/mac/scoped_nsobject.h"
#include "base/memory/scoped_ptr.h"

class Browser;

namespace content {
class WebContents;
}

// OverlayableContentsController is an obsolete wrapper holding the view where a
// tab's WebContents is displayed. In the old Chrome Instant implementation it
// multiplexed between the tab's contents and an overlay's contents. Now there
// is no overlay, but ripping this class out entirely is hard.
//
// TODO(sail): Remove this class and replace it with something saner.
@interface OverlayableContentsController : NSViewController {
 @private
  // Container view for the "active" contents.
  base::scoped_nsobject<NSView> activeContainer_;
}

@property(readonly, nonatomic) NSView* activeContainer;

// Initialization.
- (id)initWithBrowser:(Browser*)browser;

@end

#endif  // CHROME_BROWSER_UI_COCOA_TAB_CONTENTS_OVERLAYABLE_CONTENTS_CONTROLLER_H_

/* [<][>][^][v][top][bottom][index][help] */