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..81859601a03f553fb4460dda9750d0a95b54a82f |
--- /dev/null |
+++ b/content/browser/bluetooth/first_device_bluetooth_chooser.cc |
@@ -0,0 +1,40 @@ |
+// 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 { |
+ |
+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. |
+ CallDialogCancelled(); |
+ 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. |
+ CallDialogCancelled(); |
+ break; |
+ case DiscoveryState::DISCOVERING: |
+ break; |
+ } |
+} |
+ |
+void FirstDeviceBluetoothChooser::AddDevice(const std::string& deviceId, |
+ const base::string16& deviceName) { |
+ CallDeviceSelected(deviceId); |
+} |
+ |
+} // namespace content |