From f7f1c36f612ff25916b3fb00c20c75fa5fe03fbd Mon Sep 17 00:00:00 2001
From: Jeffrey Sharkey <>
Date: Thu, 16 Apr 2009 12:32:29 -0700
Subject: [PATCH] AI 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/...
Automated import of CL 146481
---
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 {