| Index: content/browser/bluetooth/first_device_bluetooth_chooser.cc
|
| diff --git a/content/browser/bluetooth/first_device_bluetooth_chooser.cc b/content/browser/bluetooth/first_device_bluetooth_chooser.cc
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..e265435b4a42b17c1892351e3d203de680bc7786
|
| --- /dev/null
|
| +++ b/content/browser/bluetooth/first_device_bluetooth_chooser.cc
|
| @@ -0,0 +1,46 @@
|
| +// Copyright 2015 The Chromium Authors. All rights reserved.
|
| +// Use of this source code is governed by a BSD-style license that can be
|
| +// found in the LICENSE file.
|
| +
|
| +#include "content/browser/bluetooth/first_device_bluetooth_chooser.h"
|
| +
|
| +namespace content {
|
| +
|
| +FirstDeviceBluetoothChooser::FirstDeviceBluetoothChooser(
|
| + const EventHandler& event_handler)
|
| + : event_handler_(event_handler) {}
|
| +
|
| +FirstDeviceBluetoothChooser::~FirstDeviceBluetoothChooser() {}
|
| +
|
| +void FirstDeviceBluetoothChooser::SetAdapterPresence(AdapterPresence presence) {
|
| + switch (presence) {
|
| + case AdapterPresence::ABSENT:
|
| + case AdapterPresence::POWERED_OFF:
|
| + // Without a user-visible dialog, if the adapter is off, there's no way to
|
| + // ask the user to turn it on again, so we should cancel.
|
| + event_handler_.Run(Event::CANCELLED, "");
|
| + break;
|
| + case AdapterPresence::POWERED_ON:
|
| + break;
|
| + }
|
| +}
|
| +
|
| +void FirstDeviceBluetoothChooser::ShowDiscoveryState(DiscoveryState state) {
|
| + switch (state) {
|
| + case DiscoveryState::FAILED_TO_START:
|
| + case DiscoveryState::IDLE:
|
| + // Without a user-visible dialog, if discovery finishes without finding a
|
| + // device, we'll never find one, so we should cancel.
|
| + event_handler_.Run(Event::CANCELLED, "");
|
| + break;
|
| + case DiscoveryState::DISCOVERING:
|
| + break;
|
| + }
|
| +}
|
| +
|
| +void FirstDeviceBluetoothChooser::AddDevice(const std::string& deviceId,
|
| + const base::string16& deviceName) {
|
| + event_handler_.Run(Event::SELECTED, deviceId);
|
| +}
|
| +
|
| +} // namespace content
|
|
|