File: fake_bluetooth_chooser_controller.cc

package info (click to toggle)
chromium 139.0.7258.127-1
  • links: PTS, VCS
  • area: main
  • in suites:
  • size: 6,122,068 kB
  • sloc: cpp: 35,100,771; ansic: 7,163,530; javascript: 4,103,002; python: 1,436,920; asm: 946,517; xml: 746,709; pascal: 187,653; perl: 88,691; sh: 88,436; objc: 79,953; sql: 51,488; cs: 44,583; fortran: 24,137; makefile: 22,147; tcl: 15,277; php: 13,980; yacc: 8,984; ruby: 7,485; awk: 3,720; lisp: 3,096; lex: 1,327; ada: 727; jsp: 228; sed: 36
file content (131 lines) | stat: -rw-r--r-- 4,187 bytes parent folder | download | duplicates (6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
// Copyright 2017 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#include "components/permissions/fake_bluetooth_chooser_controller.h"

#include "base/check_op.h"
#include "base/notreached.h"
#include "base/strings/utf_string_conversions.h"
#include "components/strings/grit/components_branded_strings.h"
#include "components/strings/grit/components_strings.h"
#include "ui/base/l10n/l10n_util.h"

namespace permissions {

FakeBluetoothChooserController::FakeBluetoothChooserController(
    std::vector<FakeDevice> devices)
    : ChooserController(
          l10n_util::GetStringFUTF16(IDS_BLUETOOTH_DEVICE_CHOOSER_PROMPT,
                                     u"example.com")),
      devices_(std::move(devices)) {}

FakeBluetoothChooserController::~FakeBluetoothChooserController() = default;

bool FakeBluetoothChooserController::ShouldShowIconBeforeText() const {
  return true;
}

bool FakeBluetoothChooserController::ShouldShowReScanButton() const {
  return true;
}

std::u16string FakeBluetoothChooserController::GetNoOptionsText() const {
  return l10n_util::GetStringUTF16(
      IDS_BLUETOOTH_DEVICE_CHOOSER_NO_DEVICES_FOUND_PROMPT);
}

std::u16string FakeBluetoothChooserController::GetOkButtonLabel() const {
  return l10n_util::GetStringUTF16(
      IDS_BLUETOOTH_DEVICE_CHOOSER_PAIR_BUTTON_TEXT);
}

std::pair<std::u16string, std::u16string>
FakeBluetoothChooserController::GetThrobberLabelAndTooltip() const {
  return {
      l10n_util::GetStringUTF16(IDS_BLUETOOTH_DEVICE_CHOOSER_SCANNING_LABEL),
      l10n_util::GetStringUTF16(
          IDS_BLUETOOTH_DEVICE_CHOOSER_SCANNING_LABEL_TOOLTIP)};
}

bool FakeBluetoothChooserController::TableViewAlwaysDisabled() const {
  return table_view_always_disabled_;
}

size_t FakeBluetoothChooserController::NumOptions() const {
  return devices_.size();
}

int FakeBluetoothChooserController::GetSignalStrengthLevel(size_t index) const {
  return devices_.at(index).signal_strength;
}

std::u16string FakeBluetoothChooserController::GetOption(size_t index) const {
  return base::ASCIIToUTF16(devices_.at(index).name);
}

bool FakeBluetoothChooserController::IsConnected(size_t index) const {
  return devices_.at(index).connected;
}

bool FakeBluetoothChooserController::IsPaired(size_t index) const {
  return devices_.at(index).paired;
}

bool FakeBluetoothChooserController::ShouldShowAdapterOffView() const {
  return true;
}

int FakeBluetoothChooserController::GetAdapterOffMessageId() const {
  return IDS_BLUETOOTH_DEVICE_CHOOSER_ADAPTER_OFF;
}

int FakeBluetoothChooserController::GetTurnAdapterOnLinkTextMessageId() const {
  return IDS_BLUETOOTH_DEVICE_CHOOSER_TURN_ON_BLUETOOTH_LINK_TEXT;
}

bool FakeBluetoothChooserController::ShouldShowAdapterUnauthorizedView() const {
  return true;
}

int FakeBluetoothChooserController::GetBluetoothUnauthorizedMessageId() const {
  return IDS_BLUETOOTH_DEVICE_CHOOSER_AUTHORIZE_BLUETOOTH;
}

int FakeBluetoothChooserController::GetAuthorizeBluetoothLinkTextMessageId()
    const {
  return IDS_BLUETOOTH_DEVICE_CHOOSER_AUTHORIZE_BLUETOOTH_LINK_TEXT;
}

void FakeBluetoothChooserController::SetBluetoothStatus(
    BluetoothStatus status) {
  const bool available = status != BluetoothStatus::UNAVAILABLE;
  view()->OnAdapterEnabledChanged(available);
  if (available)
    view()->OnRefreshStateChanged(status == BluetoothStatus::SCANNING);
}

void FakeBluetoothChooserController::SetBluetoothPermission(
    bool has_permission) {
  view()->OnAdapterAuthorizationChanged(has_permission);
}

void FakeBluetoothChooserController::AddDevice(FakeDevice device) {
  devices_.push_back(device);
  view()->OnOptionAdded(devices_.size() - 1);
}

void FakeBluetoothChooserController::RemoveDevice(size_t index) {
  DCHECK_GT(devices_.size(), index);
  devices_.erase(devices_.begin() + index);
  view()->OnOptionRemoved(index);
}

void FakeBluetoothChooserController::UpdateDevice(size_t index,
                                                  FakeDevice new_device) {
  DCHECK_GT(devices_.size(), index);
  devices_[index] = new_device;
  view()->OnOptionUpdated(index);
}

}  // namespace permissions