| Index: chrome/browser/cocoa/tab_contents_controller.h
|
| ===================================================================
|
| --- chrome/browser/cocoa/tab_contents_controller.h (revision 65756)
|
| +++ chrome/browser/cocoa/tab_contents_controller.h (working copy)
|
| @@ -8,9 +8,23 @@
|
|
|
| #include <Cocoa/Cocoa.h>
|
|
|
| +#include "base/scoped_ptr.h"
|
| +
|
| class TabContents;
|
| +class TabContentsNotificationBridge;
|
| +@class TabContentsController;
|
|
|
| -// A class that controls the web contents of a tab. It manages displaying the
|
| +// The interface for the tab contents view controller's delegate.
|
| +
|
| +@protocol TabContentsControllerDelegate
|
| +
|
| +// Tells the delegate when the tab contents view's frame is about to change.
|
| +- (void)tabContentsViewFrameWillChange:(TabContentsController*)source
|
| + frameRect:(NSRect)frameRect;
|
| +
|
| +@end
|
| +
|
| +// A class that controls the TabContents view. It manages displaying the
|
| // native view for a given TabContents.
|
| // Note that just creating the class does not display the view. We defer
|
| // inserting it until the box is the correct size to avoid multiple resize
|
| @@ -20,12 +34,28 @@
|
| @interface TabContentsController : NSViewController {
|
| @private
|
| TabContents* contents_; // weak
|
| + // Delegate to be notified about size changes.
|
| + id<TabContentsControllerDelegate> delegate_; // weak
|
| + scoped_ptr<TabContentsNotificationBridge> tabContentsBridge_;
|
| }
|
| @property(readonly, nonatomic) TabContents* tabContents;
|
|
|
| -// Create the contents of a tab represented by |contents|.
|
| -- (id)initWithContents:(TabContents*)contents;
|
| +- (id)initWithContents:(TabContents*)contents
|
| + delegate:(id<TabContentsControllerDelegate>)delegate;
|
|
|
| +// Call when the tab contents is about to be replaced with the currently
|
| +// selected tab contents to do not trigger unnecessary content relayout.
|
| +- (void)ensureContentsSizeDoesNotChange;
|
| +
|
| +// Call when the tab view is properly sized and the render widget host view
|
| +// should be put into the view hierarchy.
|
| +- (void)ensureContentsVisible;
|
| +
|
| +// Call to change the underlying tab contents object. View is not changed,
|
| +// call |-ensureContentsVisible| to display the |newContents|'s render widget
|
| +// host view.
|
| +- (void)changeTabContents:(TabContents*)newContents;
|
| +
|
| // Called when the tab contents is the currently selected tab and is about to be
|
| // removed from the view hierarchy.
|
| - (void)willBecomeUnselectedTab;
|
| @@ -35,14 +65,6 @@
|
| // enabled.
|
| - (void)willBecomeSelectedTab;
|
|
|
| -// Call when the tab contents is about to be replaced with the currently
|
| -// selected tab contents to do not trigger unnecessary content relayout.
|
| -- (void)ensureContentsSizeDoesNotChange;
|
| -
|
| -// Call when the tab view is properly sized and the render widget host view
|
| -// should be put into the view hierarchy.
|
| -- (void)ensureContentsVisible;
|
| -
|
| // Called when the tab contents is updated in some non-descript way (the
|
| // notification from the model isn't specific). |updatedContents| could reflect
|
| // an entirely new tab contents object.
|
|
|