Added a helper function for showing feedback dialog prompts

pull/14/head
Sam Bosley 12 years ago
parent 0619a3b2a0
commit 40dc1fcc79

@ -975,6 +975,20 @@ Astrid is open-source and proudly maintained by Todoroo, Inc.</string>
<!-- ============================================================= Misc == -->
<string name="feedback_positive_title">Rate Astrid?</string>
<string name="feedback_positive_body">Glad I\'m helpful! Got a moment to help us with a 5-star rating?</string>
<string name="feedback_negative_title">Rate Astrid?</string>
<string name="feedback_negative_body">Glad I\'m helpful! Got a moment to help us with a 5-star rating?</string>
<string name="feedback_activity_error">Oops! We weren\'t able to launch the market feedback section--it might not be available on your device.</string>
<string name="feedback_button">Rate Astrid</string>
<string name="feedback_not_now">Not now</string>
<!-- Displayed when task killer found. %s => name of the application -->
<string name="task_killer_help">
It looks like you are using an app that can kill processes (%s)! If you can,

@ -0,0 +1,45 @@
package com.todoroo.astrid.ui;
import android.content.Intent;
import android.net.Uri;
import android.view.View;
import android.widget.Toast;
import com.timsu.astrid.R;
import com.todoroo.astrid.activity.AstridActivity;
public class FeedbackPromptDialogs {
public static void showFeedbackDialog(final AstridActivity activity, boolean positive) {
final AstridDialog d = new AstridDialog(activity, false);
int titleRes = positive ? R.string.feedback_positive_title : R.string.feedback_negative_title;
int bodyRes = positive ? R.string.feedback_positive_body : R.string.feedback_negative_body;
d.setAstridTitle(titleRes)
.setAstridText(bodyRes)
.setButtonText(R.string.feedback_button, 0)
.setButtonText(R.string.feedback_not_now, 1)
.setButtonListeners(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(Intent.ACTION_VIEW,
Uri.parse("https://play.google.com/store/apps/details?id=com.timsu.astrid&write_review=true")); //$NON-NLS-1$
try {
activity.startActivity(intent);
} catch (Exception e) {
Toast.makeText(activity, R.string.feedback_activity_error, Toast.LENGTH_LONG).show();
}
d.dismiss();
}
}, new View.OnClickListener() {
@Override
public void onClick(View v) {
d.dismiss();
}
});
d.show();
}
}
Loading…
Cancel
Save