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 3// found in the LICENSE file. 4 5#include "chrome/browser/ui/cocoa/tab_contents/sad_tab_controller.h" 6 7#include "base/mac/mac_util.h" 8#import "chrome/browser/ui/cocoa/tab_contents/sad_tab_view.h" 9 10@implementation SadTabController 11 12- (id)initWithTabContents:(TabContents*)someTabContents 13 superview:(NSView*)superview { 14 if ((self = [super initWithNibName:@"SadTab" 15 bundle:base::mac::MainAppBundle()])) { 16 tabContents_ = someTabContents; 17 18 NSView* view = [self view]; 19 [superview addSubview:view]; 20 [view setFrame:[superview bounds]]; 21 } 22 23 return self; 24} 25 26- (void)awakeFromNib { 27 // If tab_contents_ is nil, ask view to remove link. 28 if (!tabContents_) { 29 SadTabView* sad_view = static_cast<SadTabView*>([self view]); 30 [sad_view removeLinkButton]; 31 } 32} 33 34- (void)dealloc { 35 [[self view] removeFromSuperview]; 36 [super dealloc]; 37} 38 39- (TabContents*)tabContents { 40 return tabContents_; 41} 42 43- (void)openLearnMoreAboutCrashLink:(id)sender { 44 // Send the action up through the responder chain. 45 [NSApp sendAction:@selector(openLearnMoreAboutCrashLink:) to:nil from:self]; 46} 47 48@end 49