rhodes 3.2.1 → 3.2.2.beta

Sign up to get free protection for your applications and to get access to all the features.
Files changed (82) hide show
  1. data/CHANGELOG +7 -0
  2. data/Manifest.txt +36 -0
  3. data/lib/extensions/barcode/ext/barcode/platform/android/jni/src/barcode.cpp +24 -3
  4. data/lib/extensions/barcode/ext/barcode/platform/android/src/com/google/zxing/client/android/CaptureActivity.java +11 -280
  5. data/lib/extensions/barcode/ext/barcode/platform/android/src/com/google/zxing/client/android/camera/CameraManager.java +11 -4
  6. data/lib/extensions/barcode/ext/barcode/platform/android/src/com/rhomobile/barcode/Barcode.java +2 -1
  7. data/lib/extensions/barcode/ext/barcode/platform/iphone/Barcode.xcodeproj/project.pbxproj +36 -0
  8. data/lib/extensions/barcode/ext/barcode/platform/iphone/Classes/BarcodeCallbackHelper.h +25 -0
  9. data/lib/extensions/barcode/ext/barcode/platform/iphone/Classes/BarcodeCallbackHelper.mm +195 -0
  10. data/lib/extensions/barcode/ext/barcode/platform/iphone/Classes/BarcodeViewController.h +59 -0
  11. data/lib/extensions/barcode/ext/barcode/platform/iphone/Classes/BarcodeViewController.m +346 -0
  12. data/lib/extensions/barcode/ext/barcode/platform/iphone/Classes/BarcodeViewFactory.h +7 -0
  13. data/lib/extensions/barcode/ext/barcode/platform/iphone/Classes/BarcodeViewFactory.mm +58 -0
  14. data/lib/extensions/barcode/ext/barcode/platform/iphone/Classes/BarcodeViewFactoryRegister.mm +18 -0
  15. data/lib/extensions/barcode/ext/barcode/platform/iphone/Classes/BarcodeViewManager.h +16 -0
  16. data/lib/extensions/barcode/ext/barcode/platform/iphone/Classes/BarcodeViewManager.mm +32 -0
  17. data/lib/extensions/barcode/ext/barcode/platform/iphone/Classes/barcode.m +9 -2
  18. data/lib/extensions/barcode/ext/barcode/platform/iphone/ZBarSDK/Headers/ZBarSDK/ZBarCameraSimulator.h +45 -0
  19. data/lib/extensions/barcode/ext/barcode/platform/iphone/ZBarSDK/Headers/ZBarSDK/ZBarCaptureReader.h +7 -1
  20. data/lib/extensions/barcode/ext/barcode/platform/iphone/ZBarSDK/Headers/ZBarSDK/ZBarReaderView.h +21 -4
  21. data/lib/extensions/barcode/ext/barcode/platform/iphone/ZBarSDK/Headers/ZBarSDK/ZBarReaderViewController.h +32 -2
  22. data/lib/extensions/barcode/ext/barcode/platform/iphone/ZBarSDK/Headers/ZBarSDK/ZBarSDK.h +1 -0
  23. data/lib/extensions/barcode/ext/barcode/platform/iphone/ZBarSDK/Headers/ZBarSDK/zbar.h +26 -5
  24. data/lib/extensions/barcode/ext/barcode/platform/iphone/ZBarSDK/Headers/ZBarSDK/zbar/Decoder.h +1 -0
  25. data/lib/extensions/barcode/ext/barcode/platform/iphone/ZBarSDK/Headers/ZBarSDK/zbar/Symbol.h +2 -3
  26. data/lib/extensions/barcode/ext/barcode/platform/iphone/ZBarSDK/libzbar.a +0 -0
  27. data/lib/extensions/barcode/ext/barcode/shared/ruby/barcode.i +3 -2
  28. data/lib/extensions/barcode/ext/barcode/shared/ruby/barcode_wrap.c +7 -4
  29. data/lib/extensions/barcode/ext/barcode/shared/src/zbar.c +2 -2
  30. data/platform/android/Rhodes/src/com/rhomobile/rhodes/RhodesService.java +1 -1
  31. data/platform/android/Rhodes/src/com/rhomobile/rhodes/camera/CameraNewService.java +7 -2
  32. data/platform/android/Rhodes/src/com/rhomobile/rhodes/camera/CameraOldService.java +5 -1
  33. data/platform/android/Rhodes/src/com/rhomobile/rhodes/camera/CameraSemiService.java +8 -1
  34. data/platform/android/Rhodes/src/com/rhomobile/rhodes/camera/CameraService.java +4 -2
  35. data/platform/android/Rhodes/src/com/rhomobile/rhodes/camera/ImageCapture.java +11 -6
  36. data/platform/android/Rhodes/src/com/rhomobile/rhodes/geolocation/GeoLocation.java +21 -13
  37. data/platform/android/Rhodes/src/com/rhomobile/rhodes/geolocation/GeoLocationImpl.java +33 -11
  38. data/platform/android/build/android.rake +63 -1
  39. data/platform/iphone/RhoLib/RhoLib.xcodeproj/project.pbxproj +4 -0
  40. data/platform/iphone/curl/curl.xcodeproj/project.pbxproj +4 -0
  41. data/platform/iphone/icon.png +0 -0
  42. data/platform/iphone/rbuild/iphone.rake +6 -4
  43. data/platform/iphone/rhoextlib/rhoextlib.xcodeproj/project.pbxproj +4 -1
  44. data/platform/iphone/rhorubylib/rhorubylib.xcodeproj/project.pbxproj +4 -1
  45. data/platform/iphone/rhorunner.xcodeproj/project.pbxproj +4 -0
  46. data/platform/iphone/rhosynclib/rhosynclib.xcodeproj/project.pbxproj +4 -0
  47. data/platform/wp7/IronRuby/bin/Silverlight3Release/IronRuby.Libraries.dll +0 -0
  48. data/platform/wp7/IronRuby/bin/Silverlight3Release/IronRuby.dll +0 -0
  49. data/platform/wp7/IronRuby/bin/Silverlight3Release/Microsoft.Dynamic.dll +0 -0
  50. data/platform/wp7/IronRuby/bin/Silverlight3Release/Microsoft.Scripting.Core.dll +0 -0
  51. data/platform/wp7/IronRuby/bin/Silverlight3Release/Microsoft.Scripting.dll +0 -0
  52. data/res/generators/rhogen.rb +191 -0
  53. data/res/generators/templates/extension/app/MontanaTest/controller.rb +20 -0
  54. data/res/generators/templates/extension/app/MontanaTest/index.erb +17 -0
  55. data/res/generators/templates/extension/extensions/montana/ext.yml +4 -0
  56. data/res/generators/templates/extension/extensions/montana/ext/build +17 -0
  57. data/res/generators/templates/extension/extensions/montana/ext/build.bat +36 -0
  58. data/res/generators/templates/extension/extensions/montana/ext/montana/platform/android/Rakefile +77 -0
  59. data/res/generators/templates/extension/extensions/montana/ext/montana/platform/android/ext_build.files +1 -0
  60. data/res/generators/templates/extension/extensions/montana/ext/montana/platform/android/jni/src/montana.cpp +28 -0
  61. data/res/generators/templates/extension/extensions/montana/ext/montana/platform/android/src/com/montana/Montana.java +10 -0
  62. data/res/generators/templates/extension/extensions/montana/ext/montana/platform/bb/Montana.files +1 -0
  63. data/res/generators/templates/extension/extensions/montana/ext/montana/platform/bb/Rakefile +97 -0
  64. data/res/generators/templates/extension/extensions/montana/ext/montana/platform/bb/montana.jdp +48 -0
  65. data/res/generators/templates/extension/extensions/montana/ext/montana/platform/bb/src/com/montana/Montana.java +118 -0
  66. data/res/generators/templates/extension/extensions/montana/ext/montana/platform/iphone/Classes/Montana.h +4 -0
  67. data/res/generators/templates/extension/extensions/montana/ext/montana/platform/iphone/Classes/Montana.m +24 -0
  68. data/res/generators/templates/extension/extensions/montana/ext/montana/platform/iphone/Montana.xcodeproj/project.pbxproj +300 -0
  69. data/res/generators/templates/extension/extensions/montana/ext/montana/platform/iphone/Montana_Prefix.pch +7 -0
  70. data/res/generators/templates/extension/extensions/montana/ext/montana/platform/iphone/Rakefile +74 -0
  71. data/res/generators/templates/extension/extensions/montana/ext/montana/platform/wm/Montana.vcproj +331 -0
  72. data/res/generators/templates/extension/extensions/montana/ext/montana/platform/wm/Rakefile +62 -0
  73. data/res/generators/templates/extension/extensions/montana/ext/montana/platform/wm/src/montana_wm.cpp +40 -0
  74. data/res/generators/templates/extension/extensions/montana/ext/montana/platform/wm/src/montana_wm.h +2 -0
  75. data/res/generators/templates/extension/extensions/montana/ext/montana/shared/ruby/montana.i +15 -0
  76. data/res/generators/templates/extension/extensions/montana/ext/montana/shared/ruby/montana_wrap.c +2287 -0
  77. data/res/generators/templates/extension/extensions/montana/ext/montana/shared/src/montana.c +20 -0
  78. data/res/generators/templates/extension/extensions/montana/montana.rb +13 -0
  79. data/spec/framework_spec/build.yml +1 -1
  80. data/spec/phone_spec/build.yml +1 -1
  81. data/version +1 -1
  82. metadata +42 -5
data/CHANGELOG CHANGED
@@ -1,3 +1,10 @@
1
+ ## 3.2.2
2
+ * Fix iPhone build for AppStore
3
+ * Fix Android infinite loop while using GPS
4
+ * Update IronRuby for Windows Phone 7 to log application stack while exception
5
+ * Add generator for native extensions
6
+ * Add real-time Barcode scanning for iPhone
7
+
1
8
  ## 3.2.1
2
9
  * Add migrate-rhodes-app command that updates build.yml to use latest Rhodes gem
3
10
  * Change set-rhodes-sdk command to set sdk path at build.yml only
data/Manifest.txt CHANGED
@@ -430,6 +430,15 @@ lib/extensions/barcode/ext/barcode/platform/bb/ZXing/README
430
430
  lib/extensions/barcode/ext/barcode/platform/iphone/Barcode.xcodeproj/project.pbxproj
431
431
  lib/extensions/barcode/ext/barcode/platform/iphone/Barcode_Prefix.pch
432
432
  lib/extensions/barcode/ext/barcode/platform/iphone/Classes/barcode.m
433
+ lib/extensions/barcode/ext/barcode/platform/iphone/Classes/BarcodeCallbackHelper.h
434
+ lib/extensions/barcode/ext/barcode/platform/iphone/Classes/BarcodeCallbackHelper.mm
435
+ lib/extensions/barcode/ext/barcode/platform/iphone/Classes/BarcodeViewController.h
436
+ lib/extensions/barcode/ext/barcode/platform/iphone/Classes/BarcodeViewController.m
437
+ lib/extensions/barcode/ext/barcode/platform/iphone/Classes/BarcodeViewFactory.h
438
+ lib/extensions/barcode/ext/barcode/platform/iphone/Classes/BarcodeViewFactory.mm
439
+ lib/extensions/barcode/ext/barcode/platform/iphone/Classes/BarcodeViewFactoryRegister.mm
440
+ lib/extensions/barcode/ext/barcode/platform/iphone/Classes/BarcodeViewManager.h
441
+ lib/extensions/barcode/ext/barcode/platform/iphone/Classes/BarcodeViewManager.mm
433
442
  lib/extensions/barcode/ext/barcode/platform/iphone/Classes/ImageProvider.cpp
434
443
  lib/extensions/barcode/ext/barcode/platform/iphone/Classes/ImageProvider.h
435
444
  lib/extensions/barcode/ext/barcode/platform/iphone/Classes/ImageProvider.mm
@@ -445,6 +454,7 @@ lib/extensions/barcode/ext/barcode/platform/iphone/ZBarSDK/Headers/ZBarSDK/zbar/
445
454
  lib/extensions/barcode/ext/barcode/platform/iphone/ZBarSDK/Headers/ZBarSDK/zbar/Video.h
446
455
  lib/extensions/barcode/ext/barcode/platform/iphone/ZBarSDK/Headers/ZBarSDK/zbar/Window.h
447
456
  lib/extensions/barcode/ext/barcode/platform/iphone/ZBarSDK/Headers/ZBarSDK/zbar.h
457
+ lib/extensions/barcode/ext/barcode/platform/iphone/ZBarSDK/Headers/ZBarSDK/ZBarCameraSimulator.h
448
458
  lib/extensions/barcode/ext/barcode/platform/iphone/ZBarSDK/Headers/ZBarSDK/ZBarCaptureReader.h
449
459
  lib/extensions/barcode/ext/barcode/platform/iphone/ZBarSDK/Headers/ZBarSDK/ZBarHelpController.h
450
460
  lib/extensions/barcode/ext/barcode/platform/iphone/ZBarSDK/Headers/ZBarSDK/ZBarImage.h
@@ -4710,6 +4720,32 @@ res/generators/templates/application/public/js/wp7.js
4710
4720
  res/generators/templates/application/Rakefile
4711
4721
  res/generators/templates/application/rhoconfig.txt
4712
4722
  res/generators/templates/bundle/db/syncdb.sqlite
4723
+ res/generators/templates/extension/app/MontanaTest/controller.rb
4724
+ res/generators/templates/extension/app/MontanaTest/index.erb
4725
+ res/generators/templates/extension/extensions/montana/ext/build
4726
+ res/generators/templates/extension/extensions/montana/ext/build.bat
4727
+ res/generators/templates/extension/extensions/montana/ext/montana/platform/android/ext_build.files
4728
+ res/generators/templates/extension/extensions/montana/ext/montana/platform/android/jni/src/montana.cpp
4729
+ res/generators/templates/extension/extensions/montana/ext/montana/platform/android/Rakefile
4730
+ res/generators/templates/extension/extensions/montana/ext/montana/platform/android/src/com/montana/Montana.java
4731
+ res/generators/templates/extension/extensions/montana/ext/montana/platform/bb/Montana.files
4732
+ res/generators/templates/extension/extensions/montana/ext/montana/platform/bb/montana.jdp
4733
+ res/generators/templates/extension/extensions/montana/ext/montana/platform/bb/Rakefile
4734
+ res/generators/templates/extension/extensions/montana/ext/montana/platform/bb/src/com/montana/Montana.java
4735
+ res/generators/templates/extension/extensions/montana/ext/montana/platform/iphone/Classes/Montana.h
4736
+ res/generators/templates/extension/extensions/montana/ext/montana/platform/iphone/Classes/Montana.m
4737
+ res/generators/templates/extension/extensions/montana/ext/montana/platform/iphone/Montana.xcodeproj/project.pbxproj
4738
+ res/generators/templates/extension/extensions/montana/ext/montana/platform/iphone/Montana_Prefix.pch
4739
+ res/generators/templates/extension/extensions/montana/ext/montana/platform/iphone/Rakefile
4740
+ res/generators/templates/extension/extensions/montana/ext/montana/platform/wm/Montana.vcproj
4741
+ res/generators/templates/extension/extensions/montana/ext/montana/platform/wm/Rakefile
4742
+ res/generators/templates/extension/extensions/montana/ext/montana/platform/wm/src/montana_wm.cpp
4743
+ res/generators/templates/extension/extensions/montana/ext/montana/platform/wm/src/montana_wm.h
4744
+ res/generators/templates/extension/extensions/montana/ext/montana/shared/ruby/montana.i
4745
+ res/generators/templates/extension/extensions/montana/ext/montana/shared/ruby/montana_wrap.c
4746
+ res/generators/templates/extension/extensions/montana/ext/montana/shared/src/montana.c
4747
+ res/generators/templates/extension/extensions/montana/ext.yml
4748
+ res/generators/templates/extension/extensions/montana/montana.rb
4713
4749
  res/generators/templates/model/controller.rb
4714
4750
  res/generators/templates/model/edit.bb.erb
4715
4751
  res/generators/templates/model/edit.erb
@@ -5,6 +5,8 @@
5
5
  #include <logging/RhoLog.h>
6
6
  #include <stdlib.h>
7
7
 
8
+ #include "ruby/ext/rho/rhoruby.h"
9
+
8
10
  #undef DEFAULT_LOGCATEGORY
9
11
  #define DEFAULT_LOGCATEGORY "BarcodeJNI"
10
12
 
@@ -40,17 +42,36 @@ extern "C" const char* rho_barcode_barcode_recognize(const char* filename) {
40
42
  return barcode_result;
41
43
  }
42
44
 
43
- extern "C" void rho_barcode_take_barcode(const char* callback) {
45
+ extern "C" void rho_barcode_take_barcode(const char* callback, VALUE options) {
44
46
  JNIEnv *env = jnienv();
45
47
  jclass cls = rho_find_class(env, "com/rhomobile/barcode/Barcode");
46
48
  if (!cls) return;
47
- jmethodID mid = env->GetStaticMethodID( cls, "take", "(Ljava/lang/String;)V");
49
+ jmethodID mid = env->GetStaticMethodID( cls, "take", "(Ljava/lang/String;I)V");
48
50
  if (!mid) return;
51
+
52
+ int camera_index = 0;
53
+ if (!rho_ruby_is_NIL(options)) {
54
+ // parse options for camera index ( 0 - main, 1 - front)
55
+ rho_param *param = rho_param_fromvalue(options);
56
+ if (param->type == RHO_PARAM_HASH) {
57
+ int i;
58
+ for (i = 0; i < param->v.hash->size; i++) {
59
+ if (strcasecmp(param->v.hash->name[i], "camera") == 0) {
60
+ if (param->v.hash->value[i]->type == RHO_PARAM_STRING) {
61
+ if (strcasecmp(param->v.hash->value[i]->v.string, "front") == 0) {
62
+ camera_index = 1;
63
+ }
64
+ }
65
+ }
66
+ }
67
+ }
68
+ rho_param_free(param);
69
+ }
49
70
 
50
71
  jstring objCallback = env->NewStringUTF(callback);
51
72
  if(objCallback != NULL)
52
73
  {
53
- env->CallStaticObjectMethod(cls, mid, objCallback);
74
+ env->CallStaticObjectMethod(cls, mid, objCallback, camera_index);
54
75
  env->DeleteLocalRef(objCallback);
55
76
  } else
56
77
  {
@@ -82,6 +82,9 @@ import java.util.Vector;
82
82
  * @author Sean Owen
83
83
  */
84
84
  public final class CaptureActivity extends BaseActivity implements SurfaceHolder.Callback {
85
+
86
+ public static final String CAMERA_INDEX_EXTRA = "camera_index";
87
+
85
88
 
86
89
  private static final String TAG = CaptureActivity.class.getSimpleName();
87
90
 
@@ -153,16 +156,6 @@ public final class CaptureActivity extends BaseActivity implements SurfaceHolder
153
156
  }
154
157
  };
155
158
 
156
- /*
157
- private final DialogInterface.OnClickListener aboutListener =
158
- new DialogInterface.OnClickListener() {
159
- public void onClick(DialogInterface dialogInterface, int i) {
160
- Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(getString(R.string.zxing_url)));
161
- intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET);
162
- startActivity(intent);
163
- }
164
- };
165
- */
166
159
 
167
160
  ViewfinderView getViewfinderView() {
168
161
  return viewfinderView;
@@ -180,7 +173,13 @@ public final class CaptureActivity extends BaseActivity implements SurfaceHolder
180
173
  window.addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
181
174
  setContentView(R.layout.capture);
182
175
 
183
- CameraManager.init(getApplication());
176
+ int camera_index = 0;
177
+ Intent intent = getIntent();
178
+ if (intent != null) {
179
+ camera_index = intent.getIntExtra(CAMERA_INDEX_EXTRA, 0);
180
+ }
181
+
182
+ CameraManager.init(getApplication(), camera_index);
184
183
  viewfinderView = (ViewfinderView) findViewById(R.id.viewfinder_view);
185
184
  resultView = findViewById(R.id.result_view);
186
185
  //statusView = (TextView) findViewById(R.id.status_view);
@@ -258,39 +257,6 @@ public final class CaptureActivity extends BaseActivity implements SurfaceHolder
258
257
  surfaceHolder.addCallback(this);
259
258
  surfaceHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
260
259
  }
261
-
262
- /*
263
- Intent intent = getIntent();
264
- String action = intent == null ? null : intent.getAction();
265
- String dataString = intent == null ? null : intent.getDataString();
266
- if (intent != null && action != null) {
267
- if (action.equals(Intents.Scan.ACTION)) {
268
- // Scan the formats the intent requested, and return the result to the calling activity.
269
- source = Source.NATIVE_APP_INTENT;
270
- decodeFormats = DecodeFormatManager.parseDecodeFormats(intent);
271
- } else if (dataString != null && dataString.contains(PRODUCT_SEARCH_URL_PREFIX) &&
272
- dataString.contains(PRODUCT_SEARCH_URL_SUFFIX)) {
273
- // Scan only products and send the result to mobile Product Search.
274
- source = Source.PRODUCT_SEARCH_LINK;
275
- sourceUrl = dataString;
276
- decodeFormats = DecodeFormatManager.PRODUCT_FORMATS;
277
- } else if (dataString != null && dataString.startsWith(ZXING_URL)) {
278
- // Scan formats requested in query string (all formats if none specified).
279
- // If a return URL is specified, send the results there. Otherwise, handle it ourselves.
280
- source = Source.ZXING_LINK;
281
- sourceUrl = dataString;
282
- Uri inputUri = Uri.parse(sourceUrl);
283
- returnUrlTemplate = inputUri.getQueryParameter(RETURN_URL_PARAM);
284
- decodeFormats = DecodeFormatManager.parseDecodeFormats(inputUri);
285
- } else {
286
- // Scan all formats and handle the results ourselves (launched from Home).
287
- source = Source.NONE;
288
- decodeFormats = null;
289
- }
290
- characterSet = intent.getStringExtra(Intents.Scan.CHARACTER_SET);
291
- }
292
- else
293
- */
294
260
  {
295
261
  source = Source.NONE;
296
262
  decodeFormats = null;
@@ -346,77 +312,6 @@ public final class CaptureActivity extends BaseActivity implements SurfaceHolder
346
312
  return super.onKeyDown(keyCode, event);
347
313
  }
348
314
 
349
- /*
350
- @Override
351
- public boolean onCreateOptionsMenu(Menu menu) {
352
- super.onCreateOptionsMenu(menu);
353
- menu.add(0, SHARE_ID, 0, R.string.menu_share)
354
- .setIcon(android.R.drawable.ic_menu_share);
355
- menu.add(0, HISTORY_ID, 0, R.string.menu_history)
356
- .setIcon(android.R.drawable.ic_menu_recent_history);
357
- menu.add(0, SETTINGS_ID, 0, R.string.menu_settings)
358
- .setIcon(android.R.drawable.ic_menu_preferences);
359
- menu.add(0, HELP_ID, 0, R.string.menu_help)
360
- .setIcon(android.R.drawable.ic_menu_help);
361
- menu.add(0, ABOUT_ID, 0, R.string.menu_about)
362
- .setIcon(android.R.drawable.ic_menu_info_details);
363
- return true;
364
- }
365
- */
366
-
367
- // Don't display the share menu item if the result overlay is showing.
368
- /*
369
- @Override
370
- public boolean onPrepareOptionsMenu(Menu menu) {
371
- super.onPrepareOptionsMenu(menu);
372
- menu.findItem(SHARE_ID).setVisible(lastResult == null);
373
- return true;
374
- }
375
- */
376
-
377
- /*
378
- @Override
379
- public boolean onOptionsItemSelected(MenuItem item) {
380
- switch (item.getItemId()) {
381
- case SHARE_ID: {
382
- Intent intent = new Intent(Intent.ACTION_VIEW);
383
- intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET);
384
- intent.setClassName(this, ShareActivity.class.getName());
385
- startActivity(intent);
386
- break;
387
- }
388
- case HISTORY_ID: {
389
- AlertDialog historyAlert = historyManager.buildAlert();
390
- historyAlert.show();
391
- break;
392
- }
393
- case SETTINGS_ID: {
394
- Intent intent = new Intent(Intent.ACTION_VIEW);
395
- intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET);
396
- intent.setClassName(this, PreferencesActivity.class.getName());
397
- startActivity(intent);
398
- break;
399
- }
400
- case HELP_ID: {
401
- Intent intent = new Intent(Intent.ACTION_VIEW);
402
- intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET);
403
- intent.setClassName(this, HelpActivity.class.getName());
404
- startActivity(intent);
405
- break;
406
- }
407
- case ABOUT_ID:
408
- AlertDialog.Builder builder = new AlertDialog.Builder(this);
409
- builder.setTitle(getString(R.string.title_about) + versionName);
410
- builder.setMessage(getString(R.string.msg_about) + "\n\n" + getString(R.string.zxing_url));
411
- builder.setIcon(R.drawable.launcher_icon);
412
- builder.setPositiveButton(R.string.button_open_browser, aboutListener);
413
- builder.setNegativeButton(R.string.button_cancel, null);
414
- builder.show();
415
- break;
416
- }
417
- return super.onOptionsItemSelected(item);
418
- }
419
- */
420
315
 
421
316
  @Override
422
317
  public void onConfigurationChanged(Configuration config) {
@@ -457,34 +352,6 @@ public final class CaptureActivity extends BaseActivity implements SurfaceHolder
457
352
  drawResultPoints(barcode, rawResult);
458
353
  handleDecodeInternally(rawResult, barcode);
459
354
 
460
- /*
461
- switch (source) {
462
- case NATIVE_APP_INTENT:
463
- case PRODUCT_SEARCH_LINK:
464
- handleDecodeExternally(rawResult, barcode);
465
- break;
466
- case ZXING_LINK:
467
- if (returnUrlTemplate == null){
468
- handleDecodeInternally(rawResult, barcode);
469
- } else {
470
- handleDecodeExternally(rawResult, barcode);
471
- }
472
- break;
473
- case NONE:
474
- SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this);
475
- if (prefs.getBoolean(PreferencesActivity.KEY_BULK_MODE, false)) {
476
- Toast.makeText(this, R.string.msg_bulk_mode_scanned, Toast.LENGTH_SHORT).show();
477
- // Wait a moment or else it will scan the same barcode continuously about 3 times
478
- if (handler != null) {
479
- handler.sendEmptyMessageDelayed(R.id.restart_preview, BULK_MODE_SCAN_DELAY_MS);
480
- }
481
- resetStatusView();
482
- } else {
483
- handleDecodeInternally(rawResult, barcode);
484
- }
485
- break;
486
- }
487
- */
488
355
  }
489
356
  }
490
357
 
@@ -535,53 +402,10 @@ public final class CaptureActivity extends BaseActivity implements SurfaceHolder
535
402
  resultView.setVisibility(View.VISIBLE);
536
403
 
537
404
  ImageView barcodeImageView = (ImageView) findViewById(R.id.barcode_image_view);
538
- if (barcode == null) {
539
- //barcodeImageView.setImageBitmap(BitmapFactory.decodeResource(getResources(),
540
- // R.drawable.launcher_icon));
541
- } else {
405
+ if (barcode != null) {
542
406
  barcodeImageView.setImageBitmap(barcode);
543
407
  }
544
408
 
545
- //ResultHandler resultHandler = ResultHandlerFactory.makeResultHandler(this, rawResult);
546
-
547
- /*
548
- TextView formatTextView = (TextView) findViewById(R.id.format_text_view);
549
- formatTextView.setText(rawResult.getBarcodeFormat().toString());
550
-
551
- TextView typeTextView = (TextView) findViewById(R.id.type_text_view);
552
- typeTextView.setText(resultHandler.getType().toString());
553
-
554
- DateFormat formatter = DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.SHORT);
555
- String formattedTime = formatter.format(new Date(rawResult.getTimestamp()));
556
- TextView timeTextView = (TextView) findViewById(R.id.time_text_view);
557
- timeTextView.setText(formattedTime);
558
-
559
-
560
- TextView metaTextView = (TextView) findViewById(R.id.meta_text_view);
561
- View metaTextViewLabel = findViewById(R.id.meta_text_view_label);
562
- metaTextView.setVisibility(View.GONE);
563
- metaTextViewLabel.setVisibility(View.GONE);
564
- */
565
-
566
- /*
567
- Map<ResultMetadataType,Object> metadata =
568
- (Map<ResultMetadataType,Object>) rawResult.getResultMetadata();
569
- if (metadata != null) {
570
- StringBuilder metadataText = new StringBuilder(20);
571
- for (Map.Entry<ResultMetadataType,Object> entry : metadata.entrySet()) {
572
- if (DISPLAYABLE_METADATA_TYPES.contains(entry.getKey())) {
573
- metadataText.append(entry.getValue()).append('\n');
574
- }
575
- }
576
- if (metadataText.length() > 0) {
577
- metadataText.setLength(metadataText.length() - 1);
578
- metaTextView.setText(metadataText);
579
- metaTextView.setVisibility(View.VISIBLE);
580
- metaTextViewLabel.setVisibility(View.VISIBLE);
581
- }
582
- }
583
- */
584
-
585
409
  TextView contentsTextView = (TextView) findViewById(R.id.contents_text_view);
586
410
  CharSequence displayContents = rawResult.getText();// resultHandler.getDisplayContents();
587
411
  contentsTextView.setText(displayContents);
@@ -594,72 +418,10 @@ public final class CaptureActivity extends BaseActivity implements SurfaceHolder
594
418
  mRetakeButton.setVisibility(View.VISIBLE);
595
419
  mOKButton.setVisibility(View.VISIBLE);
596
420
 
597
-
598
- /*
599
- int buttonCount = resultHandler.getButtonCount();
600
- ViewGroup buttonView = (ViewGroup) findViewById(R.id.result_button_view);
601
- buttonView.requestFocus();
602
- for (int x = 0; x < ResultHandler.MAX_BUTTON_COUNT; x++) {
603
- TextView button = (TextView) buttonView.getChildAt(x);
604
- if (x < buttonCount) {
605
- button.setVisibility(View.VISIBLE);
606
- button.setText(resultHandler.getButtonText(x));
607
- button.setOnClickListener(new ResultButtonListener(resultHandler, x));
608
- } else {
609
- button.setVisibility(View.GONE);
610
- }
611
- }
612
-
613
- if (copyToClipboard) {
614
- ClipboardManager clipboard = (ClipboardManager) getSystemService(CLIPBOARD_SERVICE);
615
- clipboard.setText(displayContents);
616
- }
617
- */
618
421
  }
619
422
 
620
423
  // Briefly show the contents of the barcode, then handle the result outside Barcode Scanner.
621
424
  private void handleDecodeExternally(Result rawResult, Bitmap barcode) {
622
- /*
623
- viewfinderView.drawResultBitmap(barcode);
624
-
625
- // Since this message will only be shown for a second, just tell the user what kind of
626
- // barcode was found (e.g. contact info) rather than the full contents, which they won't
627
- // have time to read.
628
- ResultHandler resultHandler = ResultHandlerFactory.makeResultHandler(this, rawResult);
629
- //statusView.setText(getString(resultHandler.getDisplayTitle()));
630
-
631
- if (copyToClipboard) {
632
- ClipboardManager clipboard = (ClipboardManager) getSystemService(CLIPBOARD_SERVICE);
633
- clipboard.setText(resultHandler.getDisplayContents());
634
- }
635
-
636
- if (source == Source.NATIVE_APP_INTENT) {
637
- // Hand back whatever action they requested - this can be changed to Intents.Scan.ACTION when
638
- // the deprecated intent is retired.
639
- Intent intent = new Intent(getIntent().getAction());
640
- intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET);
641
- intent.putExtra(Intents.Scan.RESULT, rawResult.toString());
642
- intent.putExtra(Intents.Scan.RESULT_FORMAT, rawResult.getBarcodeFormat().toString());
643
- Message message = Message.obtain(handler, R.id.return_scan_result);
644
- message.obj = intent;
645
- handler.sendMessageDelayed(message, INTENT_RESULT_DURATION);
646
- } else if (source == Source.PRODUCT_SEARCH_LINK) {
647
- // Reformulate the URL which triggered us into a query, so that the request goes to the same
648
- // TLD as the scan URL.
649
- Message message = Message.obtain(handler, R.id.launch_product_query);
650
- int end = sourceUrl.lastIndexOf("/scan");
651
- message.obj = sourceUrl.substring(0, end) + "?q=" +
652
- resultHandler.getDisplayContents().toString() + "&source=zxing";
653
- handler.sendMessageDelayed(message, INTENT_RESULT_DURATION);
654
- } else if (source == Source.ZXING_LINK) {
655
- // Replace each occurrence of RETURN_CODE_PLACEHOLDER in the returnUrlTemplate
656
- // with the scanned code. This allows both queries and REST-style URLs to work.
657
- Message message = Message.obtain(handler, R.id.launch_product_query);
658
- message.obj = returnUrlTemplate.replace(RETURN_CODE_PLACEHOLDER,
659
- resultHandler.getDisplayContents().toString());
660
- handler.sendMessageDelayed(message, INTENT_RESULT_DURATION);
661
- }
662
- */
663
425
  }
664
426
 
665
427
  /**
@@ -668,29 +430,6 @@ public final class CaptureActivity extends BaseActivity implements SurfaceHolder
668
430
  * it to a value stored as a preference.
669
431
  */
670
432
  private boolean showHelpOnFirstLaunch() {
671
- /*
672
- try {
673
- PackageInfo info = getPackageManager().getPackageInfo(PACKAGE_NAME, 0);
674
- int currentVersion = info.versionCode;
675
- // Since we're paying to talk to the PackageManager anyway, it makes sense to cache the app
676
- // version name here for display in the about box later.
677
- this.versionName = info.versionName;
678
- SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this);
679
- int lastVersion = prefs.getInt(PreferencesActivity.KEY_HELP_VERSION_SHOWN, 0);
680
- if (currentVersion > lastVersion) {
681
- prefs.edit().putInt(PreferencesActivity.KEY_HELP_VERSION_SHOWN, currentVersion).commit();
682
- Intent intent = new Intent(this, HelpActivity.class);
683
- intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET);
684
- // Show the default page on a clean install, and the what's new page on an upgrade.
685
- String page = (lastVersion == 0) ? HelpActivity.DEFAULT_PAGE : HelpActivity.WHATS_NEW_PAGE;
686
- intent.putExtra(HelpActivity.REQUESTED_PAGE_KEY, page);
687
- startActivity(intent);
688
- return true;
689
- }
690
- } catch (PackageManager.NameNotFoundException e) {
691
- Log.w(TAG, e);
692
- }
693
- */
694
433
  return false;
695
434
  }
696
435
 
@@ -750,14 +489,6 @@ public final class CaptureActivity extends BaseActivity implements SurfaceHolder
750
489
  }
751
490
 
752
491
  private void displayFrameworkBugMessageAndExit() {
753
- /*
754
- AlertDialog.Builder builder = new AlertDialog.Builder(this);
755
- builder.setTitle(getString(R.string.app_name));
756
- builder.setMessage(getString(R.string.msg_camera_framework_bug));
757
- builder.setPositiveButton(R.string.button_ok, new FinishListener(this));
758
- builder.setOnCancelListener(new FinishListener(this));
759
- builder.show();
760
- */
761
492
  }
762
493
 
763
494
  private void resetStatusView() {