Fix bug on clicking through to search after an RSS expanded product scan

git-svn-id: https://zxing.googlecode.com/svn/trunk@2562 59b500cc-1b3d-0410-9834-0bbf25fbcc57
This commit is contained in:
srowen 2013-01-19 23:08:04 +00:00
parent 90e1822928
commit 699e3ff2a8

View file

@ -18,6 +18,7 @@ package com.google.zxing.client.android.result;
import com.google.zxing.Result; import com.google.zxing.Result;
import com.google.zxing.client.android.R; import com.google.zxing.client.android.R;
import com.google.zxing.client.result.ExpandedProductParsedResult;
import com.google.zxing.client.result.ParsedResult; import com.google.zxing.client.result.ParsedResult;
import com.google.zxing.client.result.ProductParsedResult; import com.google.zxing.client.result.ProductParsedResult;
@ -59,16 +60,24 @@ public final class ProductResultHandler extends ResultHandler {
@Override @Override
public void handleButtonPress(int index) { public void handleButtonPress(int index) {
ProductParsedResult productResult = (ProductParsedResult) getResult(); ParsedResult rawResult = getResult();
String productID;
if (rawResult instanceof ProductParsedResult) {
productID = ((ProductParsedResult) rawResult).getNormalizedProductID();
} else if (rawResult instanceof ExpandedProductParsedResult) {
productID = ((ExpandedProductParsedResult) rawResult).getRawText();
} else {
throw new IllegalArgumentException(rawResult.getClass().toString());
}
switch (index) { switch (index) {
case 0: case 0:
openProductSearch(productResult.getNormalizedProductID()); openProductSearch(productID);
break; break;
case 1: case 1:
webSearch(productResult.getNormalizedProductID()); webSearch(productID);
break; break;
case 2: case 2:
openURL(fillInCustomSearchURL(productResult.getNormalizedProductID())); openURL(fillInCustomSearchURL(productID));
break; break;
} }
} }