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

Side by Side Diff: chrome/browser/cocoa/tab_contents_controller.h

Issue 155099: Don't install the RWHVMac into the view hierarchy until everything has been p... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 11 years, 5 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2009 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CHROME_BROWSER_COCOA_TAB_CONTENTS_CONTROLLER_H_ 5 #ifndef CHROME_BROWSER_COCOA_TAB_CONTENTS_CONTROLLER_H_
6 #define CHROME_BROWSER_COCOA_TAB_CONTENTS_CONTROLLER_H_ 6 #define CHROME_BROWSER_COCOA_TAB_CONTENTS_CONTROLLER_H_
7 7
8 #include <Cocoa/Cocoa.h> 8 #include <Cocoa/Cocoa.h>
9 9
10 class TabContents; 10 class TabContents;
11 class TabContentsCommandObserver; 11 class TabContentsCommandObserver;
12 class TabStripModel; 12 class TabStripModel;
13 13
14 // A class that controls the web contents of a tab. It manages displaying the 14 // A class that controls the web contents of a tab. It manages displaying the
15 // native view for a given TabContents in |contentsBox_|. 15 // native view for a given TabContents in |contentsBox_|. Note that just
16 // creating the class does not display the view in |contentsBox_|. We defer
17 // inserting it until the box is the correct size to avoid multiple resize
18 // messages to the renderer. You must call |-ensureContentsVisible| to display
19 // the render widget host view.
16 20
17 @interface TabContentsController : NSViewController { 21 @interface TabContentsController : NSViewController {
18 @private 22 @private
19 TabContentsCommandObserver* observer_; // nil if |commands_| is nil 23 TabContentsCommandObserver* observer_; // nil if |commands_| is nil
20 TabContents* contents_; // weak 24 TabContents* contents_; // weak
21 25
22 IBOutlet NSBox* contentsBox_; 26 IBOutlet NSBox* contentsBox_;
23 } 27 }
24 28
25 // Create the contents of a tab represented by |contents| and loaded from the 29 // Create the contents of a tab represented by |contents| and loaded from the
26 // nib given by |name|. 30 // nib given by |name|.
27 - (id)initWithNibName:(NSString*)name 31 - (id)initWithNibName:(NSString*)name
28 contents:(TabContents*)contents; 32 contents:(TabContents*)contents;
29 33
30 // Called when the tab contents is about to be put into the view hierarchy as 34 // Called when the tab contents is about to be put into the view hierarchy as
31 // the selected tab. Handles things such as ensuring the toolbar is correctly 35 // the selected tab. Handles things such as ensuring the toolbar is correctly
32 // enabled. 36 // enabled.
33 - (void)willBecomeSelectedTab; 37 - (void)willBecomeSelectedTab;
34 38
39 // Call when the tab view is properly sized and the render widget host view
40 // should be put into the view hierarchy.
41 - (void)ensureContentsVisible;
42
35 // Called when the tab contents is updated in some non-descript way (the 43 // Called when the tab contents is updated in some non-descript way (the
36 // notification from the model isn't specific). |updatedContents| could reflect 44 // notification from the model isn't specific). |updatedContents| could reflect
37 // an entirely new tab contents object. 45 // an entirely new tab contents object.
38 - (void)tabDidChange:(TabContents*)updatedContents; 46 - (void)tabDidChange:(TabContents*)updatedContents;
39 47
40 @end 48 @end
41 49
42 #endif // CHROME_BROWSER_COCOA_TAB_CONTENTS_CONTROLLER_H_ 50 #endif // CHROME_BROWSER_COCOA_TAB_CONTENTS_CONTROLLER_H_
OLDNEW
« no previous file with comments | « no previous file | chrome/browser/cocoa/tab_contents_controller.mm » ('j') | chrome/browser/cocoa/tab_strip_controller.mm » ('J')

Powered by Google App Engine
This is Rietveld 408576698