summaryrefslogtreecommitdiffstats
path: root/src/com/android/settings/deviceinfo
diff options
context:
space:
mode:
authorZoran Jovanovic <zoran.jovanovic@sonymobile.com>2015-11-04 14:00:03 +0100
committerAlexander Martinz <eviscerationls@gmail.com>2015-11-06 22:16:48 +0100
commit0183673aefd2303adbc4af8ae3e180fcadd7e039 (patch)
tree8326eb9071ae5d312f0538ba623749e9a5255333 /src/com/android/settings/deviceinfo
parent74a27aed48d84e93188683676f123f5c501caab0 (diff)
downloadpackages_apps_Settings-0183673aefd2303adbc4af8ae3e180fcadd7e039.zip
packages_apps_Settings-0183673aefd2303adbc4af8ae3e180fcadd7e039.tar.gz
packages_apps_Settings-0183673aefd2303adbc4af8ae3e180fcadd7e039.tar.bz2
Don't show MIDI USB option if not supported
If device doesn't support MIDI, don't show MIDI in "Use USB for" menu when USB cable is connected. (Selecting MIDI will crash the Settings app.) Change-Id: I60f4cbb6357f162fecb574cdb6766cf5ed92e78e
Diffstat (limited to 'src/com/android/settings/deviceinfo')
-rw-r--r--src/com/android/settings/deviceinfo/UsbBackend.java9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/com/android/settings/deviceinfo/UsbBackend.java b/src/com/android/settings/deviceinfo/UsbBackend.java
index 210e0a0..340eba5 100644
--- a/src/com/android/settings/deviceinfo/UsbBackend.java
+++ b/src/com/android/settings/deviceinfo/UsbBackend.java
@@ -18,6 +18,7 @@ package com.android.settings.deviceinfo;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
+import android.content.pm.PackageManager;
import android.hardware.usb.UsbManager;
import android.hardware.usb.UsbPort;
import android.hardware.usb.UsbPortStatus;
@@ -36,6 +37,7 @@ public class UsbBackend {
public static final int MODE_DATA_MIDI = 0x03 << 1;
private final boolean mRestricted;
+ private final boolean mMidi;
private UserManager mUserManager;
private UsbManager mUsbManager;
@@ -53,6 +55,8 @@ public class UsbBackend {
mUsbManager = context.getSystemService(UsbManager.class);
mRestricted = mUserManager.hasUserRestriction(UserManager.DISALLOW_USB_FILE_TRANSFER);
+ mMidi = context.getPackageManager().hasSystemFeature(PackageManager.FEATURE_MIDI);
+
UsbPort[] ports = mUsbManager.getPorts();
// For now look for a connected port, in the future we should identify port in the
// notification and pick based on that.
@@ -135,6 +139,11 @@ public class UsbBackend {
// No USB data modes are supported.
return false;
}
+
+ if (!mMidi && (mode & MODE_DATA_MASK) == MODE_DATA_MIDI) {
+ return false;
+ }
+
if (mPort != null) {
int power = modeToPower(mode);
if ((mode & MODE_DATA_MASK) != 0) {