Merge "Restart the MTP connection when changing transcode enabled" am: 8109ad8033

Original change: https://android-review.googlesource.com/c/platform/packages/apps/Settings/+/1882150

Change-Id: I180666f8edc9fdb69fcdec20b9ae2730240ff923
diff --git a/src/com/android/settings/connecteddevice/usb/UsbDetailsTranscodeMtpController.java b/src/com/android/settings/connecteddevice/usb/UsbDetailsTranscodeMtpController.java
index bbaaa31..c440499 100644
--- a/src/com/android/settings/connecteddevice/usb/UsbDetailsTranscodeMtpController.java
+++ b/src/com/android/settings/connecteddevice/usb/UsbDetailsTranscodeMtpController.java
@@ -77,6 +77,12 @@
     public boolean onPreferenceClick(Preference preference) {
         SystemProperties.set(TRANSCODE_MTP_SYS_PROP_KEY,
                 Boolean.toString(mSwitchPreference.isChecked()));
+
+        final long previousFunctions = mUsbBackend.getCurrentFunctions();
+        // Toggle the MTP connection to reload file sizes for files shared via MTP clients
+        mUsbBackend.setCurrentFunctions(previousFunctions & ~UsbManager.FUNCTION_MTP);
+        mUsbBackend.setCurrentFunctions(previousFunctions);
+
         return true;
     }