[SCM] Multi-format 1D/2D barcode image processing library branch, upstream, updated. 24d4480bc48cf9eabf7b2bd2f528248b0e458809
srowen
srowen at 59b500cc-1b3d-0410-9834-0bbf25fbcc57
Wed Aug 4 01:32:25 UTC 2010
The following commit has been merged in the upstream branch:
commit da130ccadc1cc50f7e5de2a34fc63740ca0d27b9
Author: srowen <srowen at 59b500cc-1b3d-0410-9834-0bbf25fbcc57>
Date: Wed Jun 30 08:07:05 2010 +0000
Make sure cancel is handled properly in a few cases, where app must exit after dialog
git-svn-id: http://zxing.googlecode.com/svn/trunk@1466 59b500cc-1b3d-0410-9834-0bbf25fbcc57
diff --git a/android/src/com/google/zxing/client/android/CaptureActivity.java b/android/src/com/google/zxing/client/android/CaptureActivity.java
index 8a6d257..249fd84 100755
--- a/android/src/com/google/zxing/client/android/CaptureActivity.java
+++ b/android/src/com/google/zxing/client/android/CaptureActivity.java
@@ -723,11 +723,8 @@ public final class CaptureActivity extends Activity implements SurfaceHolder.Cal
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle(getString(R.string.app_name));
builder.setMessage(getString(R.string.msg_camera_framework_bug));
- builder.setPositiveButton(R.string.button_ok, new DialogInterface.OnClickListener() {
- public void onClick(DialogInterface dialogInterface, int i) {
- finish();
- }
- });
+ builder.setPositiveButton(R.string.button_ok, new FinishListener(this));
+ builder.setOnCancelListener(new FinishListener(this));
builder.show();
}
diff --git a/core/test/src/com/google/zxing/oned/EANManufacturerOrgSupportTest.java b/android/src/com/google/zxing/client/android/FinishListener.java
similarity index 50%
copy from core/test/src/com/google/zxing/oned/EANManufacturerOrgSupportTest.java
copy to android/src/com/google/zxing/client/android/FinishListener.java
index de5c05f..da453ee 100644
--- a/core/test/src/com/google/zxing/oned/EANManufacturerOrgSupportTest.java
+++ b/android/src/com/google/zxing/client/android/FinishListener.java
@@ -14,24 +14,30 @@
* limitations under the License.
*/
-package com.google.zxing.oned;
+package com.google.zxing.client.android;
-import junit.framework.TestCase;
+import android.app.Activity;
+import android.content.DialogInterface;
/**
- * Tests {@link EANManufacturerOrgSupport}.
- *
+ * Simple listener used to exit the app in a few cases.
+ *
* @author Sean Owen
*/
-public final class EANManufacturerOrgSupportTest extends TestCase {
-
- public void testLookup() {
- EANManufacturerOrgSupport support = new EANManufacturerOrgSupport();
- assertNull(support.lookupCountryIdentifier("472000"));
- assertEquals("US/CA", support.lookupCountryIdentifier("000000"));
- assertEquals("MO", support.lookupCountryIdentifier("958000"));
- assertEquals("GB", support.lookupCountryIdentifier("500000"));
- assertEquals("GB", support.lookupCountryIdentifier("509000"));
+public final class FinishListener implements DialogInterface.OnClickListener, DialogInterface.OnCancelListener {
+
+ private final Activity activityToFinish;
+
+ public FinishListener(Activity activityToFinish) {
+ this.activityToFinish = activityToFinish;
+ }
+
+ public void onCancel(DialogInterface dialogInterface) {
+ activityToFinish.finish();
+ }
+
+ public void onClick(DialogInterface dialogInterface, int i) {
+ activityToFinish.finish();
}
}
diff --git a/android/src/com/google/zxing/client/android/encode/EncodeActivity.java b/android/src/com/google/zxing/client/android/encode/EncodeActivity.java
index b4b3f96..13fbe6f 100755
--- a/android/src/com/google/zxing/client/android/encode/EncodeActivity.java
+++ b/android/src/com/google/zxing/client/android/encode/EncodeActivity.java
@@ -18,6 +18,7 @@ package com.google.zxing.client.android.encode;
import com.google.zxing.BarcodeFormat;
import com.google.zxing.WriterException;
+import com.google.zxing.client.android.FinishListener;
import com.google.zxing.client.android.Intents;
import com.google.zxing.client.android.R;
@@ -83,7 +84,7 @@ public final class EncodeActivity extends Activity {
setTitle(getString(R.string.app_name) + " - " + qrCodeEncoder.getTitle());
qrCodeEncoder.requestBarcode(handler, smallerDimension);
progressDialog = ProgressDialog.show(EncodeActivity.this, null,
- getString(R.string.msg_encode_in_progress), true, true, cancelListener);
+ getString(R.string.msg_encode_in_progress), true, true, new FinishListener(EncodeActivity.this));
} catch (IllegalArgumentException e) {
showErrorMessage(R.string.msg_encode_contents_failed);
}
@@ -114,18 +115,6 @@ public final class EncodeActivity extends Activity {
}
};
- private final OnClickListener clickListener = new OnClickListener() {
- public void onClick(DialogInterface dialog, int which) {
- finish();
- }
- };
-
- private final OnCancelListener cancelListener = new OnCancelListener() {
- public void onCancel(DialogInterface dialog) {
- finish();
- }
- };
-
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
@@ -233,7 +222,8 @@ public final class EncodeActivity extends Activity {
}
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setMessage(message);
- builder.setPositiveButton(R.string.button_ok, clickListener);
+ builder.setPositiveButton(R.string.button_ok, new FinishListener(this));
+ builder.setOnCancelListener(new FinishListener(this));
builder.show();
}
}
--
Multi-format 1D/2D barcode image processing library
More information about the Pkg-google-commits
mailing list