diff --git a/DS4Windows/DS4Control/Mapping.cs b/DS4Windows/DS4Control/Mapping.cs index 85a3725..6f5384d 100644 --- a/DS4Windows/DS4Control/Mapping.cs +++ b/DS4Windows/DS4Control/Mapping.cs @@ -1401,7 +1401,12 @@ namespace DS4Windows DS4Device d = ctrl.DS4Controllers[device]; if (!d.Charging) { - d.DisconnectBT(); + ConnectionType deviceConn = d.ConnectionType; + if (deviceConn == ConnectionType.BT) + { + d.DisconnectBT(); + } + foreach (DS4Controls dc in action.trigger) { DS4ControlSettings dcs = getDS4CSetting(device, dc); diff --git a/DS4Windows/DS4Library/DS4Device.cs b/DS4Windows/DS4Library/DS4Device.cs index 3b2a119..cd1de47 100644 --- a/DS4Windows/DS4Library/DS4Device.cs +++ b/DS4Windows/DS4Library/DS4Device.cs @@ -771,7 +771,7 @@ namespace DS4Windows if (result) { IsDisconnecting = true; - StopUpdate(); + StopOutputUpdate(); if (Removal != null) Removal(this, EventArgs.Empty); }