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

Side by Side Diff: chrome/browser/tab_contents/tab_contents_view_mac.h

Issue 8587001: Have ExtensionHost use TabContents instead of RenderViewHost. Try #3. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 9 years, 1 month 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) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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_TAB_CONTENTS_TAB_CONTENTS_VIEW_MAC_H_ 5 #ifndef CHROME_BROWSER_TAB_CONTENTS_TAB_CONTENTS_VIEW_MAC_H_
6 #define CHROME_BROWSER_TAB_CONTENTS_TAB_CONTENTS_VIEW_MAC_H_ 6 #define CHROME_BROWSER_TAB_CONTENTS_TAB_CONTENTS_VIEW_MAC_H_
7 #pragma once 7 #pragma once
8 8
9 #if defined(__OBJC__) 9 #if defined(__OBJC__)
10 10
(...skipping 24 matching lines...) Expand all
35 @interface TabContentsViewCocoa : BaseView { 35 @interface TabContentsViewCocoa : BaseView {
36 @private 36 @private
37 TabContentsViewMac* tabContentsView_; // WEAK; owns us 37 TabContentsViewMac* tabContentsView_; // WEAK; owns us
38 scoped_nsobject<WebDragSource> dragSource_; 38 scoped_nsobject<WebDragSource> dragSource_;
39 scoped_nsobject<WebDragDest> dragDest_; 39 scoped_nsobject<WebDragDest> dragDest_;
40 scoped_ptr<WebDragBookmarkHandlerMac> bookmarkHandler_; 40 scoped_ptr<WebDragBookmarkHandlerMac> bookmarkHandler_;
41 } 41 }
42 42
43 // Expose this, since sometimes one needs both the NSView and the TabContents. 43 // Expose this, since sometimes one needs both the NSView and the TabContents.
44 - (TabContents*)tabContents; 44 - (TabContents*)tabContents;
45
46 // Set frame, then notify the RenderWidgetHost that the frame has been changed,
47 // but do it in a separate task, using |performSelector:withObject:afterDelay:|.
48 // This stops the flickering issue in http://crbug.com/31970
49 - (void)setFrameWithDeferredUpdate:(NSRect)frame;
45 @end 50 @end
46 51
47 // Mac-specific implementation of the TabContentsView. It owns an NSView that 52 // Mac-specific implementation of the TabContentsView. It owns an NSView that
48 // contains all of the contents of the tab and associated child views. 53 // contains all of the contents of the tab and associated child views.
49 class TabContentsViewMac : public TabContentsView { 54 class TabContentsViewMac : public TabContentsView {
50 public: 55 public:
51 // The corresponding TabContents is passed in the constructor, and manages our 56 // The corresponding TabContents is passed in the constructor, and manages our
52 // lifetime. This doesn't need to be the case, but is this way currently 57 // lifetime. This doesn't need to be the case, but is this way currently
53 // because that's what was easiest when they were split. 58 // because that's what was easiest when they were split.
54 explicit TabContentsViewMac(TabContents* web_contents); 59 explicit TabContentsViewMac(TabContents* web_contents);
(...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after
145 150
146 // Functions that may be accessed from non-Objective-C C/C++ code. 151 // Functions that may be accessed from non-Objective-C C/C++ code.
147 class TabContents; 152 class TabContents;
148 class TabContentsView; 153 class TabContentsView;
149 154
150 namespace tab_contents_view_mac { 155 namespace tab_contents_view_mac {
151 TabContentsView* CreateTabContentsView(TabContents* tab_contents); 156 TabContentsView* CreateTabContentsView(TabContents* tab_contents);
152 } 157 }
153 158
154 #endif // CHROME_BROWSER_TAB_CONTENTS_TAB_CONTENTS_VIEW_MAC_H_ 159 #endif // CHROME_BROWSER_TAB_CONTENTS_TAB_CONTENTS_VIEW_MAC_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698