From 9a77fe7c1b7aae146d177548dbcf296dc419f8f2 Mon Sep 17 00:00:00 2001
From: Jeffrey Sharkey <>
Date: Sat, 18 Apr 2009 21:31:31 -0700
Subject: [PATCH] AI 146582: am: CL 146481 am: CL 146394 Add
ExampleAppWidgetConfigure to manifest and correct update issues. This adds
widget configuration to manifest so we don't crash when trying to insert. We
also correctly push a second update once prefix title has been saved;
previously we showed a stale title until next widget update. Also return the
title prefix correctly for a given appWidgetId. Original author: jsharkey
Merged from: //branches/cupcake/... Original author: android-build
Automated import of CL 146582
---
samples/ApiDemos/AndroidManifest.xml | 6 ++++++
.../apis/appwidget/ExampleAppWidgetConfigure.java | 13 ++++++++++---
2 files changed, 16 insertions(+), 3 deletions(-)
diff --git a/samples/ApiDemos/AndroidManifest.xml b/samples/ApiDemos/AndroidManifest.xml
index fcb7e7999..d353d31d8 100644
--- a/samples/ApiDemos/AndroidManifest.xml
+++ b/samples/ApiDemos/AndroidManifest.xml
@@ -1655,6 +1655,12 @@
+
+
+
+
+
+
diff --git a/samples/ApiDemos/src/com/example/android/apis/appwidget/ExampleAppWidgetConfigure.java b/samples/ApiDemos/src/com/example/android/apis/appwidget/ExampleAppWidgetConfigure.java
index d7ef9d632..5f8874cab 100644
--- a/samples/ApiDemos/src/com/example/android/apis/appwidget/ExampleAppWidgetConfigure.java
+++ b/samples/ApiDemos/src/com/example/android/apis/appwidget/ExampleAppWidgetConfigure.java
@@ -84,10 +84,17 @@ public class ExampleAppWidgetConfigure extends Activity {
View.OnClickListener mOnClickListener = new View.OnClickListener() {
public void onClick(View v) {
+ final Context context = ExampleAppWidgetConfigure.this;
+
// When the button is clicked, save the string in our prefs and return that they
// clicked OK.
- saveTitlePref(ExampleAppWidgetConfigure.this, mAppWidgetId,
- mAppWidgetPrefix.getText().toString());
+ String titlePrefix = mAppWidgetPrefix.getText().toString();
+ saveTitlePref(context, mAppWidgetId, titlePrefix);
+
+ // Push widget update to surface with newly set prefix
+ AppWidgetManager appWidgetManager = AppWidgetManager.getInstance(context);
+ ExampleAppWidgetProvider.updateAppWidget(context, appWidgetManager,
+ mAppWidgetId, titlePrefix);
// Make sure we pass back the original appWidgetId
Intent resultValue = new Intent();
@@ -108,7 +115,7 @@ public class ExampleAppWidgetConfigure extends Activity {
// If there is no preference saved, get the default from a resource
static String loadTitlePref(Context context, int appWidgetId) {
SharedPreferences prefs = context.getSharedPreferences(PREFS_NAME, 0);
- String prefix = prefs.getString(PREF_PREFIX_KEY, null);
+ String prefix = prefs.getString(PREF_PREFIX_KEY + appWidgetId, null);
if (prefix != null) {
return prefix;
} else {