Chromium Code Reviews| Index: chrome/browser/ui/cocoa/subresource_filter/subresource_filter_bubble_controller.mm |
| diff --git a/chrome/browser/ui/cocoa/subresource_filter/subresource_filter_bubble_controller.mm b/chrome/browser/ui/cocoa/subresource_filter/subresource_filter_bubble_controller.mm |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..f4b3f000ddb288fe42450d81b8c7039fd86e6fd0 |
| --- /dev/null |
| +++ b/chrome/browser/ui/cocoa/subresource_filter/subresource_filter_bubble_controller.mm |
| @@ -0,0 +1,78 @@ |
| +// Copyright 2014 The Chromium Authors. All rights reserved. |
|
Robert Sesek
2017/05/02 21:51:48
2017
shivanisha
2017/05/03 18:10:36
done
|
| +// Use of this source code is governed by a BSD-style license that can be |
| +// found in the LICENSE file. |
| + |
| +#import "chrome/browser/ui/cocoa/content_settings/content_setting_bubble_cocoa.h" |
| +#import "chrome/browser/ui/cocoa/subresource_filter/subresource_filter_bubble_controller.h" |
|
Robert Sesek
2017/05/02 21:51:48
This should come first in the #import/#include blo
shivanisha
2017/05/03 18:10:36
done
|
| +#import "chrome/browser/ui/cocoa/info_bubble_window.h" |
| +#include "components/strings/grit/components_strings.h" |
| +#include "ui/base/l10n/l10n_util_mac.h" |
| + |
| +@interface SubresourceFilterBubbleController (Private) |
| +- (void)loadView; |
| +@end |
| + |
| +@implementation SubresourceFilterBubbleController |
| + |
| +- (void)awakeFromNib { |
| + [self loadView]; |
| + [super awakeFromNib]; |
| +} |
| + |
| +- (void)loadView { |
| + titleLabel_ = |
|
Robert Sesek
2017/05/02 21:51:48
Each instance variable that is alloc/init'd here n
shivanisha
2017/05/03 18:10:36
Done
|
| + [[NSTextField alloc] initWithFrame:NSMakeRect(17, 120, 282, 14)]; |
|
Robert Sesek
2017/05/02 21:51:48
Should the x coordinate here be 18, so it's left-a
shivanisha
2017/05/03 18:10:36
done
|
| + [titleLabel_ setEditable:NO]; |
| + [titleLabel_ setBordered:NO]; |
| + [self.window.contentView addSubview:titleLabel_]; |
| + |
| + messageLabel_ = |
| + [[NSTextField alloc] initWithFrame:NSMakeRect(18, 85, 282, 28)]; |
| + [messageLabel_ setEditable:NO]; |
| + [messageLabel_ setBordered:NO]; |
| + [self.window.contentView addSubview:messageLabel_]; |
| + |
| + manageCheckbox_ = |
| + [[NSButton alloc] initWithFrame:NSMakeRect(18, 35, 282, 28)]; |
| + [manageCheckbox_ setButtonType:NSSwitchButton]; |
| + [self.window.contentView addSubview:manageCheckbox_]; |
| + [manageCheckbox_ setAction:@selector(manageCheckboxChecked:)]; |
|
Robert Sesek
2017/05/02 21:51:48
Should the on/off state of the checkbox be set fro
shivanisha
2017/05/03 18:10:36
Good idea, though currently the logic is simple en
|
| + |
| + doneButton_ = [[NSButton alloc] initWithFrame:NSMakeRect(210, 10, 90, 28)]; |
| + [doneButton_ setBezelStyle:NSRoundedBezelStyle]; |
| + [doneButton_ highlight:YES]; |
| + [doneButton_ setTitle:l10n_util::GetNSString(IDS_OK)]; |
| + [self.window.contentView addSubview:doneButton_]; |
| + [doneButton_ setAction:@selector(closeBubble:)]; |
| +} |
| + |
| +- (id)initWithModel:(ContentSettingBubbleModel*)contentSettingBubbleModel |
| + webContents:(content::WebContents*)webContents |
| + parentWindow:(NSWindow*)parentWindow |
| + decoration:(ContentSettingDecoration*)decoration |
| + anchoredAt:(NSPoint)anchoredAt { |
| + NSRect contentRect = NSMakeRect(196, 376, 316, 154); |
| + base::scoped_nsobject<InfoBubbleWindow> window([[InfoBubbleWindow alloc] |
| + initWithContentRect:contentRect |
| + styleMask:NSBorderlessWindowMask |
| + backing:NSBackingStoreBuffered |
| + defer:NO]); |
| + |
| + // Disable animations - otherwise, the window/controller will outlive the web |
| + // contents it's associated with. |
| + [window setAllowedAnimations:info_bubble::kAnimateNone]; |
| + [super initWithModel:contentSettingBubbleModel |
| + webContents:webContents |
| + window:window |
| + parentWindow:parentWindow |
| + decoration:decoration |
| + anchoredAt:anchoredAt]; |
| + return self; |
| +} |
| + |
| +- (IBAction)manageCheckboxChecked:(id)sender { |
| + [super manageCheckboxChecked:sender]; |
| + [super initManageDoneButtons]; |
| +} |
| + |
| +@end |