summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKeith Packard <keithp@keithp.com>2010-08-30 05:49:11 -0700
committerKeith Packard <keithp@keithp.com>2010-08-30 05:49:11 -0700
commita9a8d23c877e6f6c76857b7c85e3d43b4da1db27 (patch)
tree3335e4f11b4cba2e05c4b54de6b1c0c4fa2e03bf
parenta94900b8862b99b4e317ea0ee3edd2a560f270c7 (diff)
altosui: Devices with USB id 0x000a always get listed
List 'unknown' AltusMetrum devices anytime the UI needs a device name. Signed-off-by: Keith Packard <keithp@keithp.com>
-rw-r--r--ao-tools/altosui/AltosDevice.java23
1 files changed, 7 insertions, 16 deletions
diff --git a/ao-tools/altosui/AltosDevice.java b/ao-tools/altosui/AltosDevice.java
index 3daf0742..e62a0a7a 100644
--- a/ao-tools/altosui/AltosDevice.java
+++ b/ao-tools/altosui/AltosDevice.java
@@ -32,6 +32,7 @@ public class AltosDevice extends altos_device {
System.err.println("Native library failed to load.\n" + e);
}
}
+ public final static int AltusMetrum = libaltosConstants.USB_PRODUCT_ALTUSMETRUM;
public final static int TeleMetrum = libaltosConstants.USB_PRODUCT_TELEMETRUM;
public final static int TeleDongle = libaltosConstants.USB_PRODUCT_TELEDONGLE;
public final static int TeleTerra = libaltosConstants.USB_PRODUCT_TELETERRA;
@@ -58,33 +59,23 @@ public class AltosDevice extends altos_device {
public boolean matchProduct(int want_product) {
+ if (!isAltusMetrum())
+ return false;
+
if (want_product == Any)
return true;
if (want_product == BaseStation)
return matchProduct(TeleDongle) || matchProduct(TeleTerra);
- if (!isAltusMetrum())
- return false;
-
int have_product = getProduct();
- if (want_product == have_product)
+ if (have_product == AltusMetrum) /* old devices match any request */
return true;
- if (have_product != libaltosConstants.USB_PRODUCT_ALTUSMETRUM)
- return false;
-
- String name = getName();
+ if (want_product == have_product)
+ return true;
- if (name == null)
- return false;
- if (want_product == libaltosConstants.USB_PRODUCT_TELEMETRUM)
- return name.startsWith("TeleMetrum");
- if (want_product == libaltosConstants.USB_PRODUCT_TELEDONGLE)
- return name.startsWith("TeleDongle");
- if (want_product == libaltosConstants.USB_PRODUCT_TELETERRA)
- return name.startsWith("TeleTerra");
return false;
}