| Index: chrome/browser/ui/cocoa/chooser_content_view_cocoa.mm
|
| diff --git a/chrome/browser/ui/cocoa/chooser_content_view_cocoa.mm b/chrome/browser/ui/cocoa/chooser_content_view_cocoa.mm
|
| index c0030750b591c449c97352ca402ac007382f6569..dcf94cb9a6a0592e9e5377fd76d9460f3f6f5f61 100644
|
| --- a/chrome/browser/ui/cocoa/chooser_content_view_cocoa.mm
|
| +++ b/chrome/browser/ui/cocoa/chooser_content_view_cocoa.mm
|
| @@ -60,6 +60,9 @@ const CGFloat kSeparatorHeight = 1.0f;
|
| const CGFloat kTableRowViewHorizontalPadding = 5.0f;
|
| const CGFloat kTableRowViewVerticalPadding = 1.0f;
|
|
|
| +// Distance between the adapter off help link and the scroll view boundaries.
|
| +const CGFloat kAdapterOffHelpLinkPadding = 5.0f;
|
| +
|
| // The lookup table for signal strength level image.
|
| const int kSignalStrengthLevelImageIds[5] = {IDR_SIGNAL_0_BAR, IDR_SIGNAL_1_BAR,
|
| IDR_SIGNAL_2_BAR, IDR_SIGNAL_3_BAR,
|
| @@ -233,6 +236,7 @@ class ChooserContentViewController : public ChooserController::View {
|
| public:
|
| ChooserContentViewController(ChooserContentViewCocoa* chooser_content_view,
|
| ChooserController* chooser_controller,
|
| + NSButton* adapter_off_help_button,
|
| NSTableView* table_view,
|
| SpinnerView* spinner,
|
| NSTextField* status,
|
| @@ -252,6 +256,7 @@ class ChooserContentViewController : public ChooserController::View {
|
| private:
|
| ChooserContentViewCocoa* chooser_content_view_;
|
| ChooserController* chooser_controller_;
|
| + NSButton* adapter_off_help_button_;
|
| NSTableView* table_view_;
|
| SpinnerView* spinner_;
|
| NSTextField* status_;
|
| @@ -263,17 +268,20 @@ class ChooserContentViewController : public ChooserController::View {
|
| ChooserContentViewController::ChooserContentViewController(
|
| ChooserContentViewCocoa* chooser_content_view,
|
| ChooserController* chooser_controller,
|
| + NSButton* adapter_off_help_button,
|
| NSTableView* table_view,
|
| SpinnerView* spinner,
|
| NSTextField* status,
|
| NSButton* rescan_button)
|
| : chooser_content_view_(chooser_content_view),
|
| chooser_controller_(chooser_controller),
|
| + adapter_off_help_button_(adapter_off_help_button),
|
| table_view_(table_view),
|
| spinner_(spinner),
|
| status_(status),
|
| rescan_button_(rescan_button) {
|
| DCHECK(chooser_controller_);
|
| + DCHECK(adapter_off_help_button_);
|
| DCHECK(table_view_);
|
| DCHECK(spinner_);
|
| DCHECK(status_);
|
| @@ -324,7 +332,8 @@ void ChooserContentViewController::OnAdapterEnabledChanged(bool enabled) {
|
| // of a previously selected row.
|
| [table_view_ deselectAll:nil];
|
| UpdateTableView();
|
| - [table_view_ setHidden:NO];
|
| + [table_view_ setHidden:enabled ? NO : YES];
|
| + [adapter_off_help_button_ setHidden:enabled ? YES : NO];
|
|
|
| [spinner_ setHidden:YES];
|
|
|
| @@ -409,6 +418,14 @@ void ChooserContentViewController::UpdateTableView() {
|
| titleView_ = [self createChooserTitle:chooserTitle];
|
| titleHeight_ = NSHeight([titleView_ frame]);
|
|
|
| + // Adapter turned off help button.
|
| + adapterOffHelpButton_ =
|
| + [self createHyperlinkButtonWithText:
|
| + l10n_util::GetNSString(
|
| + IDS_BLUETOOTH_DEVICE_CHOOSER_TURN_ADAPTER_OFF)];
|
| + CGFloat adapterOffHelpButtonHeight =
|
| + NSHeight([adapterOffHelpButton_ frame]);
|
| +
|
| // Status.
|
| status_ = CreateLabel(
|
| l10n_util::GetNSString(IDS_BLUETOOTH_DEVICE_CHOOSER_SCANNING));
|
| @@ -460,6 +477,7 @@ void ChooserContentViewController::UpdateTableView() {
|
| [scrollView_ setHasVerticalScroller:YES];
|
| [scrollView_ setHasHorizontalScroller:YES];
|
| [scrollView_ setAutohidesScrollers:YES];
|
| + [scrollView_ setDrawsBackground:NO];
|
|
|
| // TableView.
|
| tableView_.reset([[NSTableView alloc] initWithFrame:NSZeroRect]);
|
| @@ -497,6 +515,19 @@ void ChooserContentViewController::UpdateTableView() {
|
| [titleView_ setFrameOrigin:NSMakePoint(titleOriginX, titleOriginY)];
|
| [self addSubview:titleView_];
|
|
|
| + // Adapter turned off help button.
|
| + CGFloat adapterOffHelpButtonOriginX = kMarginX + kAdapterOffHelpLinkPadding;
|
| + CGFloat adapterOffHelpButtonOriginY = titleOriginY - kVerticalPadding -
|
| + adapterOffHelpButtonHeight -
|
| + kAdapterOffHelpLinkPadding;
|
| + [adapterOffHelpButton_
|
| + setFrameOrigin:NSMakePoint(adapterOffHelpButtonOriginX,
|
| + adapterOffHelpButtonOriginY)];
|
| + [adapterOffHelpButton_ setTarget:self];
|
| + [adapterOffHelpButton_ setAction:@selector(onAdapterOffHelp:)];
|
| + [adapterOffHelpButton_ setHidden:YES];
|
| + [self addSubview:adapterOffHelpButton_];
|
| +
|
| // ScollView and Spinner. Only one of them is shown.
|
| [scrollView_ setDocumentView:tableView_];
|
| [self addSubview:scrollView_];
|
| @@ -566,8 +597,8 @@ void ChooserContentViewController::UpdateTableView() {
|
| rescanButtonOrigin_ = [self calculateRescanButtonOrigin:buttonRowHeight];
|
|
|
| chooserContentViewController_.reset(new ChooserContentViewController(
|
| - self, chooserController_.get(), tableView_.get(), spinner_.get(),
|
| - status_.get(), rescanButton_.get()));
|
| + self, chooserController_.get(), adapterOffHelpButton_.get(),
|
| + tableView_.get(), spinner_.get(), status_.get(), rescanButton_.get()));
|
| }
|
|
|
| return self;
|
| @@ -735,6 +766,10 @@ void ChooserContentViewController::UpdateTableView() {
|
| [cancelButton_ setFrameOrigin:frameAndOrigin.cancel_button_origin];
|
| }
|
|
|
| +- (NSButton*)adapterOffHelpButton {
|
| + return adapterOffHelpButton_.get();
|
| +}
|
| +
|
| - (NSTableView*)tableView {
|
| return tableView_.get();
|
| }
|
| @@ -803,6 +838,10 @@ void ChooserContentViewController::UpdateTableView() {
|
| chooserController_->Close();
|
| }
|
|
|
| +- (void)onAdapterOffHelp:(id)sender {
|
| + chooserController_->OpenAdapterOffHelpUrl();
|
| +}
|
| +
|
| - (void)onRescan:(id)sender {
|
| chooserController_->RefreshOptions();
|
| }
|
|
|