SmartLock Should Handle the Case When BLE is Unavailable |
||||||
Issue descriptionThe Instant Tether service's GetTetherTechnologyState() method (https://cs.chromium.org/chromium/src/chrome/browser/chromeos/tether/tether_service.cc?type=cs&q=%22GetTetherTechnologyState()+%7B%22+f:tether_service.cc$&g=0&l=478) returns chromeos::NetworkStateHandler::TechnologyState::TECHNOLOGY_UNAVAILABLE when BLE is unavailable. The MultiDevice settings UI should get analogous data (most likely from EasyUnlockServiceRegular) in that case to allow us to hide the EasyUnlock feature item when there is not possibility of a connection.
,
Aug 13
,
Aug 24
I mean to literally not attach the row to the DOM tree like would hide the Instant Tethering row if BLE were unavailable.
,
Aug 28
,
Aug 28
,
Nov 6
Jeremy: Can you triage this, e.g., figure out if we need to get input from Jesse or any other action?
,
Nov 6
If I'm understanding Jordy's report correctly (Jordy, correct me if I'm wrong), I don't think we need Jesse's feedback on this one. This is just about not surfacing EasyUnlock in the UI (settings specifically) if the Chromebook doesn't support BLE at all. Looking at the code Jordy linked to in #1, it boils down to this line checking for a Bluetooth adapter: https://cs.chromium.org/chromium/src/chrome/browser/chromeos/tether/tether_service.cc?rcl=c034b9e7859bf3b3cb1c33a9ca1a89df23782356&l=636 It looks like easyunlock has some similar bluetooth detection logic right here: https://cs.chromium.org/chromium/src/chrome/browser/chromeos/login/easy_unlock/easy_unlock_service.cc?rcl=7caea7668eee4483a98890391b39bc83c9b91c8d&l=102 We'd need to plumb that back up to Multidevice settings. Alternatively, we could centralize this logic in the settings code and just hide all BLE-related features. It doesn't follow the paradigm of asking the feature for this state, but it seems a bit simpler. I don't think this is super high priority either way.
,
Nov 6
James, assigning back to you to decide whether it's worth your time right now. If you've got other code cleanups that are higher impact, feel free to mark this as unassigned again.
,
Nov 6
It looks like there is some confusion here, so I'll try to explain what's going on:
* Jordy's original post refers to *network* settings: if Bluetooth is not present or disabled, we hide the "Mobile data" section of network settings according to the logic Jeremy described in comment #7.
* In MultiDevice settings, we *always* show the Instant Tethering section (as long as the Instant Tethering flag is enabled), regardless of Bluetooth status. The same goes for Smart Lock - it is always displayed, regardless of Bluetooth status.
IMO, this seems desirable, since I think users should be able to turn these features on/off regardless of whether Bluetooth is enabled or not.
However, I think there are a few actionable items which should be fixed in settings:
(1) When Bluetooth is disabled, the Instant Tethering item icon in MultiDevice settings shows that the feature is disabled, but there is no messaging about why that is the case. Clicking the Instant Tethering row leads users to the Mobile data settings section, which is off and has no way to turn things back on. Again, there is no messaging about why this is the case.
==> I suggest that we say something in the MultiDevice settings row about the fact that Instant Tethering is disabled when Bluetooth is off.
==> I also suggest that we make the row non-clickable in this state.
(2) When Bluetooth is disabled, the Smart Lock row looks the same as when Bluetooth is enabled. Clicking the row leads users to Smart Lock settings as usual.
==> I suggest that we follow the same pattern - show an icon which indicates the feature is off, and add some messaging there.
,
Nov 6
Kyle, I don't think this is about bluetooth being enabled/disabled, but rather about whether bluetooth exists at all on the device. This checks adapter presence, not enabled state.
,
Nov 6
Gotcha - my description of the problem and the current states still stay the same in that case (just substitute "disabled" for "not present" in comment #9). Specifically, we still hide the Mobile data network settings when Bluetooth is not present, and we still show both the Instant Tethering and Smart Lock MultiDevice settings. |
||||||
►
Sign in to add a comment |
||||||
Comment 1 by jhawkins@chromium.org
, Aug 13Status: Assigned (was: Untriaged)