Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(182)

Side by Side Diff: content/browser/bluetooth/bluetooth_dispatcher_host.cc

Issue 1711393002: bluetooth: android: register for adapter on/off events. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebased on master Created 4 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 // ID Not In Map Note: 5 // ID Not In Map Note:
6 // A service, characteristic, or descriptor ID not in the corresponding 6 // A service, characteristic, or descriptor ID not in the corresponding
7 // BluetoothDispatcherHost map [service_to_device_, characteristic_to_service_, 7 // BluetoothDispatcherHost map [service_to_device_, characteristic_to_service_,
8 // descriptor_to_characteristic_] implies a hostile renderer because a renderer 8 // descriptor_to_characteristic_] implies a hostile renderer because a renderer
9 // obtains the corresponding ID from this class and it will be added to the map 9 // obtains the corresponding ID from this class and it will be added to the map
10 // at that time. 10 // at that time.
(...skipping 499 matching lines...) Expand 10 before | Expand all | Expand 10 after
510 device::BluetoothAdapter* adapter, 510 device::BluetoothAdapter* adapter,
511 bool powered) { 511 bool powered) {
512 DCHECK_CURRENTLY_ON(BrowserThread::UI); 512 DCHECK_CURRENTLY_ON(BrowserThread::UI);
513 const BluetoothChooser::AdapterPresence presence = 513 const BluetoothChooser::AdapterPresence presence =
514 powered ? BluetoothChooser::AdapterPresence::POWERED_ON 514 powered ? BluetoothChooser::AdapterPresence::POWERED_ON
515 : BluetoothChooser::AdapterPresence::POWERED_OFF; 515 : BluetoothChooser::AdapterPresence::POWERED_OFF;
516 for (IDMap<RequestDeviceSession, IDMapOwnPointer>::iterator iter( 516 for (IDMap<RequestDeviceSession, IDMapOwnPointer>::iterator iter(
517 &request_device_sessions_); 517 &request_device_sessions_);
518 !iter.IsAtEnd(); iter.Advance()) { 518 !iter.IsAtEnd(); iter.Advance()) {
519 RequestDeviceSession* session = iter.GetCurrentValue(); 519 RequestDeviceSession* session = iter.GetCurrentValue();
520
521 // Stop ongoing discovery session if power is off.
522 if (!powered && session->discovery_session) {
523 StopDiscoverySession(std::move(session->discovery_session));
524 }
525
520 if (session->chooser) 526 if (session->chooser)
521 session->chooser->SetAdapterPresence(presence); 527 session->chooser->SetAdapterPresence(presence);
522 } 528 }
529
530 // Stop the timer so that we don't change the state of the chooser
531 // when timer expires.
532 if (!powered) {
533 discovery_session_timer_.Stop();
534 }
523 } 535 }
524 536
525 void BluetoothDispatcherHost::DeviceAdded(device::BluetoothAdapter* adapter, 537 void BluetoothDispatcherHost::DeviceAdded(device::BluetoothAdapter* adapter,
526 device::BluetoothDevice* device) { 538 device::BluetoothDevice* device) {
527 DCHECK_CURRENTLY_ON(BrowserThread::UI); 539 DCHECK_CURRENTLY_ON(BrowserThread::UI);
528 VLOG(1) << "Adding device to all choosers: " << device->GetAddress(); 540 VLOG(1) << "Adding device to all choosers: " << device->GetAddress();
529 for (IDMap<RequestDeviceSession, IDMapOwnPointer>::iterator iter( 541 for (IDMap<RequestDeviceSession, IDMapOwnPointer>::iterator iter(
530 &request_device_sessions_); 542 &request_device_sessions_);
531 !iter.IsAtEnd(); iter.Advance()) { 543 !iter.IsAtEnd(); iter.Advance()) {
532 RequestDeviceSession* session = iter.GetCurrentValue(); 544 RequestDeviceSession* session = iter.GetCurrentValue();
(...skipping 1008 matching lines...) Expand 10 before | Expand all | Expand 10 after
1541 1553
1542 bool BluetoothDispatcherHost::CanFrameAccessCharacteristicInstance( 1554 bool BluetoothDispatcherHost::CanFrameAccessCharacteristicInstance(
1543 int frame_routing_id, 1555 int frame_routing_id,
1544 const std::string& characteristic_instance_id) { 1556 const std::string& characteristic_instance_id) {
1545 return QueryCacheForCharacteristic(GetOrigin(frame_routing_id), 1557 return QueryCacheForCharacteristic(GetOrigin(frame_routing_id),
1546 characteristic_instance_id) 1558 characteristic_instance_id)
1547 .outcome != CacheQueryOutcome::BAD_RENDERER; 1559 .outcome != CacheQueryOutcome::BAD_RENDERER;
1548 } 1560 }
1549 1561
1550 } // namespace content 1562 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698