diff --git a/samples/ApiDemos/AndroidManifest.xml b/samples/ApiDemos/AndroidManifest.xml
index fcb7e79..d353d31 100644
--- a/samples/ApiDemos/AndroidManifest.xml
+++ b/samples/ApiDemos/AndroidManifest.xml
@@ -1655,6 +1655,12 @@
             </intent-filter>
         </receiver>
 
+        <activity android:name=".appwidget.ExampleAppWidgetConfigure">
+            <intent-filter>
+                <action android:name="android.appwidget.action.APPWIDGET_CONFIGURE" />
+            </intent-filter>
+        </activity>
+
         <receiver android:name=".appwidget.ExampleBroadcastReceiver" android:enabled="false">
             <intent-filter>
                 <action android:name="android.intent.ACTION_TIMEZONE_CHANGED" />
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 d7ef9d6..5f8874c 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 @@
 
     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 @@
     // 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 {
