Merge "Add support for MIDI USB configuration to MIDI settings screen"
This commit is contained in:
committed by
Android (Google) Code Review
commit
a081f01ee8
@@ -2276,10 +2276,12 @@
|
|||||||
<string name="usb_mtp_summary">Lets you transfer media files on Windows, or using Android File Transfer on Mac (see www.android.com/filetransfer)</string>
|
<string name="usb_mtp_summary">Lets you transfer media files on Windows, or using Android File Transfer on Mac (see www.android.com/filetransfer)</string>
|
||||||
<!-- Storage setting. Title for PTP checkbox [CHAR LIMIT=30]-->
|
<!-- Storage setting. Title for PTP checkbox [CHAR LIMIT=30]-->
|
||||||
<string name="usb_ptp_title">Camera (PTP)</string>
|
<string name="usb_ptp_title">Camera (PTP)</string>
|
||||||
<!-- Storage setting. Label for installer CD [CHAR LIMIT=30]-->
|
|
||||||
<string name="usb_ptp_summary">Lets you transfer photos using camera software, and transfer any files on computers that don\'t support MTP</string>
|
|
||||||
<!-- Storage setting. Summary for PTP checkbox [CHAR LIMIT=NONE]-->
|
<!-- Storage setting. Summary for PTP checkbox [CHAR LIMIT=NONE]-->
|
||||||
<string name="usb_label_installer_cd">"Install file-transfer tools"</string>
|
<string name="usb_ptp_summary">Lets you transfer photos using camera software, and transfer any files on computers that don\'t support MTP</string>
|
||||||
|
<!-- Storage setting. Title for MIDI checkbox [CHAR LIMIT=30]-->
|
||||||
|
<string name="usb_midi_title">MIDI</string>
|
||||||
|
<!-- Storage setting. Summary for MIDI checkbox [CHAR LIMIT=NONE]-->
|
||||||
|
<string name="usb_midi_summary">Lets MIDI enabled applications work over USB with MIDI software on your computer.</string>
|
||||||
|
|
||||||
<!-- Section header above list of other users storage [CHAR LIMIT=32] -->
|
<!-- Section header above list of other users storage [CHAR LIMIT=32] -->
|
||||||
<string name="storage_other_users">Other users</string>
|
<string name="storage_other_users">Other users</string>
|
||||||
|
@@ -32,4 +32,10 @@
|
|||||||
android:summary="@string/usb_ptp_summary"
|
android:summary="@string/usb_ptp_summary"
|
||||||
/>
|
/>
|
||||||
|
|
||||||
|
<CheckBoxPreference
|
||||||
|
android:key="usb_midi"
|
||||||
|
android:title="@string/usb_midi_title"
|
||||||
|
android:summary="@string/usb_midi_summary"
|
||||||
|
/>
|
||||||
|
|
||||||
</PreferenceScreen>
|
</PreferenceScreen>
|
||||||
|
@@ -41,10 +41,12 @@ public class UsbSettings extends SettingsPreferenceFragment {
|
|||||||
|
|
||||||
private static final String KEY_MTP = "usb_mtp";
|
private static final String KEY_MTP = "usb_mtp";
|
||||||
private static final String KEY_PTP = "usb_ptp";
|
private static final String KEY_PTP = "usb_ptp";
|
||||||
|
private static final String KEY_MIDI = "usb_midi";
|
||||||
|
|
||||||
private UsbManager mUsbManager;
|
private UsbManager mUsbManager;
|
||||||
private CheckBoxPreference mMtp;
|
private CheckBoxPreference mMtp;
|
||||||
private CheckBoxPreference mPtp;
|
private CheckBoxPreference mPtp;
|
||||||
|
private CheckBoxPreference mMidi;
|
||||||
private boolean mUsbAccessoryMode;
|
private boolean mUsbAccessoryMode;
|
||||||
|
|
||||||
private final BroadcastReceiver mStateReceiver = new BroadcastReceiver() {
|
private final BroadcastReceiver mStateReceiver = new BroadcastReceiver() {
|
||||||
@@ -68,6 +70,7 @@ public class UsbSettings extends SettingsPreferenceFragment {
|
|||||||
|
|
||||||
mMtp = (CheckBoxPreference)root.findPreference(KEY_MTP);
|
mMtp = (CheckBoxPreference)root.findPreference(KEY_MTP);
|
||||||
mPtp = (CheckBoxPreference)root.findPreference(KEY_PTP);
|
mPtp = (CheckBoxPreference)root.findPreference(KEY_PTP);
|
||||||
|
mMidi = (CheckBoxPreference)root.findPreference(KEY_MIDI);
|
||||||
|
|
||||||
UserManager um = (UserManager) getActivity().getSystemService(Context.USER_SERVICE);
|
UserManager um = (UserManager) getActivity().getSystemService(Context.USER_SERVICE);
|
||||||
if (um.hasUserRestriction(UserManager.DISALLOW_USB_FILE_TRANSFER)) {
|
if (um.hasUserRestriction(UserManager.DISALLOW_USB_FILE_TRANSFER)) {
|
||||||
@@ -107,27 +110,37 @@ public class UsbSettings extends SettingsPreferenceFragment {
|
|||||||
if (UsbManager.USB_FUNCTION_MTP.equals(function)) {
|
if (UsbManager.USB_FUNCTION_MTP.equals(function)) {
|
||||||
mMtp.setChecked(true);
|
mMtp.setChecked(true);
|
||||||
mPtp.setChecked(false);
|
mPtp.setChecked(false);
|
||||||
|
mMidi.setChecked(false);
|
||||||
} else if (UsbManager.USB_FUNCTION_PTP.equals(function)) {
|
} else if (UsbManager.USB_FUNCTION_PTP.equals(function)) {
|
||||||
mMtp.setChecked(false);
|
mMtp.setChecked(false);
|
||||||
mPtp.setChecked(true);
|
mPtp.setChecked(true);
|
||||||
|
mMidi.setChecked(false);
|
||||||
|
} else if (UsbManager.USB_FUNCTION_MIDI.equals(function)) {
|
||||||
|
mMtp.setChecked(false);
|
||||||
|
mPtp.setChecked(false);
|
||||||
|
mMidi.setChecked(true);
|
||||||
} else {
|
} else {
|
||||||
mMtp.setChecked(false);
|
mMtp.setChecked(false);
|
||||||
mPtp.setChecked(false);
|
mPtp.setChecked(false);
|
||||||
|
mMidi.setChecked(false);
|
||||||
}
|
}
|
||||||
UserManager um = (UserManager) getActivity().getSystemService(Context.USER_SERVICE);
|
UserManager um = (UserManager) getActivity().getSystemService(Context.USER_SERVICE);
|
||||||
if (um.hasUserRestriction(UserManager.DISALLOW_USB_FILE_TRANSFER)) {
|
if (um.hasUserRestriction(UserManager.DISALLOW_USB_FILE_TRANSFER)) {
|
||||||
Log.e(TAG, "USB is locked down");
|
Log.e(TAG, "USB is locked down");
|
||||||
mMtp.setEnabled(false);
|
mMtp.setEnabled(false);
|
||||||
mPtp.setEnabled(false);
|
mPtp.setEnabled(false);
|
||||||
|
mMidi.setEnabled(true);
|
||||||
} else if (!mUsbAccessoryMode) {
|
} else if (!mUsbAccessoryMode) {
|
||||||
//Enable MTP and PTP switch while USB is not in Accessory Mode, otherwise disable it
|
//Enable MTP and PTP switch while USB is not in Accessory Mode, otherwise disable it
|
||||||
Log.e(TAG, "USB Normal Mode");
|
Log.e(TAG, "USB Normal Mode");
|
||||||
mMtp.setEnabled(true);
|
mMtp.setEnabled(true);
|
||||||
mPtp.setEnabled(true);
|
mPtp.setEnabled(true);
|
||||||
|
mMidi.setEnabled(true);
|
||||||
} else {
|
} else {
|
||||||
Log.e(TAG, "USB Accessory Mode");
|
Log.e(TAG, "USB Accessory Mode");
|
||||||
mMtp.setEnabled(false);
|
mMtp.setEnabled(false);
|
||||||
mPtp.setEnabled(false);
|
mPtp.setEnabled(false);
|
||||||
|
mMidi.setEnabled(false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -151,6 +164,8 @@ public class UsbSettings extends SettingsPreferenceFragment {
|
|||||||
function = UsbManager.USB_FUNCTION_MTP;
|
function = UsbManager.USB_FUNCTION_MTP;
|
||||||
} else if (preference == mPtp && mPtp.isChecked()) {
|
} else if (preference == mPtp && mPtp.isChecked()) {
|
||||||
function = UsbManager.USB_FUNCTION_PTP;
|
function = UsbManager.USB_FUNCTION_PTP;
|
||||||
|
} else if (preference == mMidi && mMidi.isChecked()) {
|
||||||
|
function = UsbManager.USB_FUNCTION_MIDI;
|
||||||
}
|
}
|
||||||
|
|
||||||
mUsbManager.setCurrentFunction(function, true);
|
mUsbManager.setCurrentFunction(function, true);
|
||||||
|
Reference in New Issue
Block a user