Smart Lock: Clear stale ProximityMonitor on disconnect.

UnlockManager was previously holding onto a stale
ProximityMonitor from its first connection. That meant
that if a disconnection and subsequent new connection
occurred, the old ProximityMonitor, with an old reference
to the previous connection (represented as a ClientChannel
object) was used. This always resulted in a Smart Lock
failure for a second connection, and occasionally, a crash.

In order to correctly reset the ProximityMonitor object,
the way that it is called had to be refactored (remove
completely unneeded ScreenLockBridge logic), in order to
consolidate calls to one place.

Bug: 931929
Change-Id: I9b9a65ad0f0752d58d680623815ea60b5369c45c
Reviewed-on: https://chromium-review.googlesource.com/c/1479941
Commit-Queue: Ryan Hansberry <hansberry@chromium.org>
Reviewed-by: Kyle Horimoto <khorimoto@chromium.org>
Cr-Commit-Position: refs/heads/master@{#634011}
3 files changed