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