Actually commit pref updates
[zxing.git] / android / src / com / google / zxing / client / android / result / ResultHandler.java
index d7bd354..13bae15 100644 (file)
 
 package com.google.zxing.client.android.result;
 
+import android.app.Activity;
+import android.app.AlertDialog;
+import android.content.ActivityNotFoundException;
+import android.content.Intent;
+import android.content.SharedPreferences;
+import android.net.Uri;
+import android.preference.PreferenceManager;
+import android.provider.Contacts;
 import com.google.zxing.client.android.Contents;
 import com.google.zxing.client.android.Intents;
 import com.google.zxing.client.android.LocaleManager;
+import com.google.zxing.client.android.PreferencesActivity;
 import com.google.zxing.client.android.R;
 import com.google.zxing.client.android.book.SearchBookContentsActivity;
 import com.google.zxing.client.result.ParsedResult;
 import com.google.zxing.client.result.ParsedResultType;
 
-import android.app.Activity;
-import android.app.AlertDialog;
-import android.content.ActivityNotFoundException;
-import android.content.Intent;
-import android.net.Uri;
-import android.provider.Contacts;
-
 import java.text.DateFormat;
 import java.text.ParsePosition;
 import java.text.SimpleDateFormat;
@@ -315,4 +317,20 @@ public abstract class ResultHandler {
       intent.putExtra(key, value);
     }
   }
+
+  protected void showNotOurResults(int index, AlertDialog.OnClickListener proceedListener) {
+    SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(activity);
+    if (prefs.getBoolean(PreferencesActivity.KEY_NOT_OUR_RESULTS_SHOWN, false)) {
+      // already seen it, just proceed
+      proceedListener.onClick(null, index);
+    } else {
+      // note the user has seen it
+      prefs.edit().putBoolean(PreferencesActivity.KEY_NOT_OUR_RESULTS_SHOWN, true).commit();
+      AlertDialog.Builder builder = new AlertDialog.Builder(activity);
+      builder.setMessage(R.string.msg_not_our_results);
+      builder.setPositiveButton(R.string.button_ok, proceedListener);
+      builder.show();
+    }
+  }
+
 }