input: Fix not adding watches when io channel is connected
input: Fix not adding watches when io channel is connected

This can leave dangling pointers in case one of the channel is never
connected which cause -EALREADY to be returned by
input_device_set_channel next time the device attempts to connect.

For the same reason the code path when acting as client now add the
watch as soon as the connection completes instead when both channels
are connected.

silent-snowman/bluez,mapfau/bluez,pstglia/external-bluetooth-bluez,pkarasev3/bluez,pkarasev3/bluez,silent-snowman/bluez,pkarasev3/bluez,ComputeCycles/bluez,silent-snowman/bluez,ComputeCycles/bluez,mapfau/bluez,pstglia/external-bluetooth-bluez,pstglia/external-bluetooth-bluez,mapfau/bluez,pstglia/external-bluetooth-bluez,mapfau/bluez,silent-snowman/bluez,pkarasev3/bluez,ComputeCycles/bluez,ComputeCycles/bluez