auto import from //branches/cupcake/...@127101
diff --git a/res/drawable/wallpaper_dale_chihuly.jpg b/res/drawable/wallpaper_dale_chihuly.jpg
index 25c7940..e69de29 100644
--- a/res/drawable/wallpaper_dale_chihuly.jpg
+++ b/res/drawable/wallpaper_dale_chihuly.jpg
Binary files differ
diff --git a/res/drawable/wallpaper_dale_chihuly_small.jpg b/res/drawable/wallpaper_dale_chihuly_small.jpg
index d11827b..e69de29 100644
--- a/res/drawable/wallpaper_dale_chihuly_small.jpg
+++ b/res/drawable/wallpaper_dale_chihuly_small.jpg
Binary files differ
diff --git a/res/drawable/wallpaper_john_maeda.jpg b/res/drawable/wallpaper_john_maeda.jpg
index 2118382..e69de29 100644
--- a/res/drawable/wallpaper_john_maeda.jpg
+++ b/res/drawable/wallpaper_john_maeda.jpg
Binary files differ
diff --git a/res/drawable/wallpaper_john_maeda_small.jpg b/res/drawable/wallpaper_john_maeda_small.jpg
index 08d0827..e69de29 100644
--- a/res/drawable/wallpaper_john_maeda_small.jpg
+++ b/res/drawable/wallpaper_john_maeda_small.jpg
Binary files differ
diff --git a/res/drawable/wallpaper_marc_ecko.jpg b/res/drawable/wallpaper_marc_ecko.jpg
index fd24072..e69de29 100644
--- a/res/drawable/wallpaper_marc_ecko.jpg
+++ b/res/drawable/wallpaper_marc_ecko.jpg
Binary files differ
diff --git a/res/drawable/wallpaper_marc_ecko_small.jpg b/res/drawable/wallpaper_marc_ecko_small.jpg
index 3236cd5..e69de29 100644
--- a/res/drawable/wallpaper_marc_ecko_small.jpg
+++ b/res/drawable/wallpaper_marc_ecko_small.jpg
Binary files differ
diff --git a/res/layout/widget_search.xml b/res/layout/widget_search.xml
index 95e8052..27e591d 100644
--- a/res/layout/widget_search.xml
+++ b/res/layout/widget_search.xml
@@ -43,7 +43,7 @@
          android:layout_marginLeft="1dip"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
-         android:src="@android:drawable/ic_btn_search"
+         android:src="@*android:drawable/ic_btn_search"
          />
     
 </com.android.launcher.Search>
diff --git a/res/values-cs/extra_wallpapers.xml b/res/values-cs/extra_wallpapers.xml
new file mode 100644
index 0000000..f2e61cd
--- /dev/null
+++ b/res/values-cs/extra_wallpapers.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+  <string-array name="extra_wallpapers">
+  </string-array>
+</resources>
diff --git a/res/values-de/extra_wallpapers.xml b/res/values-de/extra_wallpapers.xml
new file mode 100644
index 0000000..f2e61cd
--- /dev/null
+++ b/res/values-de/extra_wallpapers.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+  <string-array name="extra_wallpapers">
+  </string-array>
+</resources>
diff --git a/res/values-es/extra_wallpapers.xml b/res/values-es/extra_wallpapers.xml
new file mode 100644
index 0000000..f2e61cd
--- /dev/null
+++ b/res/values-es/extra_wallpapers.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+  <string-array name="extra_wallpapers">
+  </string-array>
+</resources>
diff --git a/res/values-fr/extra_wallpapers.xml b/res/values-fr/extra_wallpapers.xml
new file mode 100644
index 0000000..f2e61cd
--- /dev/null
+++ b/res/values-fr/extra_wallpapers.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+  <string-array name="extra_wallpapers">
+  </string-array>
+</resources>
diff --git a/res/values-it/extra_wallpapers.xml b/res/values-it/extra_wallpapers.xml
new file mode 100644
index 0000000..f2e61cd
--- /dev/null
+++ b/res/values-it/extra_wallpapers.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+  <string-array name="extra_wallpapers">
+  </string-array>
+</resources>
diff --git a/res/values-ja/extra_wallpapers.xml b/res/values-ja/extra_wallpapers.xml
new file mode 100644
index 0000000..f2e61cd
--- /dev/null
+++ b/res/values-ja/extra_wallpapers.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+  <string-array name="extra_wallpapers">
+  </string-array>
+</resources>
diff --git a/res/values-nl/extra_wallpapers.xml b/res/values-nl/extra_wallpapers.xml
new file mode 100644
index 0000000..f2e61cd
--- /dev/null
+++ b/res/values-nl/extra_wallpapers.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+  <string-array name="extra_wallpapers">
+  </string-array>
+</resources>
diff --git a/res/values-pl/extra_wallpapers.xml b/res/values-pl/extra_wallpapers.xml
new file mode 100644
index 0000000..f2e61cd
--- /dev/null
+++ b/res/values-pl/extra_wallpapers.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+  <string-array name="extra_wallpapers">
+  </string-array>
+</resources>
diff --git a/res/values-ru/extra_wallpapers.xml b/res/values-ru/extra_wallpapers.xml
new file mode 100644
index 0000000..f2e61cd
--- /dev/null
+++ b/res/values-ru/extra_wallpapers.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+  <string-array name="extra_wallpapers">
+  </string-array>
+</resources>
diff --git a/res/values-zh-rCN/extra_wallpapers.xml b/res/values-zh-rCN/extra_wallpapers.xml
new file mode 100644
index 0000000..f2e61cd
--- /dev/null
+++ b/res/values-zh-rCN/extra_wallpapers.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+  <string-array name="extra_wallpapers">
+  </string-array>
+</resources>
diff --git a/res/values-zh-rTW/extra_wallpapers.xml b/res/values-zh-rTW/extra_wallpapers.xml
new file mode 100644
index 0000000..f2e61cd
--- /dev/null
+++ b/res/values-zh-rTW/extra_wallpapers.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+  <string-array name="extra_wallpapers">
+  </string-array>
+</resources>
diff --git a/res/values/extra_wallpapers.xml b/res/values/extra_wallpapers.xml
new file mode 100644
index 0000000..9e0951c
--- /dev/null
+++ b/res/values/extra_wallpapers.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ * Copyright (C) 2009 Google Inc.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ -->
+
+<resources>
+    <string-array name="extra_wallpapers">
+    </string-array>
+</resources>
diff --git a/src/com/android/launcher/Launcher.java b/src/com/android/launcher/Launcher.java
index af1b0f3..465400b 100644
--- a/src/com/android/launcher/Launcher.java
+++ b/src/com/android/launcher/Launcher.java
@@ -819,7 +819,7 @@
                 .setIcon(android.R.drawable.ic_search_category_default)
                 .setAlphabeticShortcut(SearchManager.MENU_KEY);
         menu.add(0, MENU_NOTIFICATIONS, 0, R.string.menu_notifications)
-                .setIcon(android.R.drawable.ic_menu_notifications)
+                .setIcon(com.android.internal.R.drawable.ic_menu_notifications)
                 .setAlphabeticShortcut('N');
 
         final Intent settings = new Intent(android.provider.Settings.ACTION_SETTINGS);
diff --git a/src/com/android/launcher/WallpaperChooser.java b/src/com/android/launcher/WallpaperChooser.java
index a4e583e..afbe6f3 100644
--- a/src/com/android/launcher/WallpaperChooser.java
+++ b/src/com/android/launcher/WallpaperChooser.java
@@ -32,9 +32,12 @@
 import android.graphics.BitmapFactory;
 import android.graphics.Bitmap;
 import android.graphics.drawable.Drawable;
+import android.content.res.Resources;
 
 import java.io.IOException;
 import java.io.InputStream;
+import java.util.ArrayList;
+import java.util.Collections;
 
 public class WallpaperChooser extends Activity implements AdapterView.OnItemSelectedListener,
         OnClickListener {
@@ -55,9 +58,6 @@
             R.drawable.wallpaper_grey_small,
             R.drawable.wallpaper_green_small,
             R.drawable.wallpaper_pink_small,
-            R.drawable.wallpaper_dale_chihuly_small,
-            R.drawable.wallpaper_john_maeda_small,
-            R.drawable.wallpaper_marc_ecko_small,
     };
 
     private static final Integer[] IMAGE_IDS = {
@@ -76,9 +76,6 @@
             R.drawable.wallpaper_grey,
             R.drawable.wallpaper_green,
             R.drawable.wallpaper_pink,
-            R.drawable.wallpaper_dale_chihuly,
-            R.drawable.wallpaper_john_maeda,
-            R.drawable.wallpaper_marc_ecko,
     };
 
     private Gallery mGallery;
@@ -88,11 +85,16 @@
     private BitmapFactory.Options mOptions;
     private Bitmap mBitmap;
 
+    private ArrayList<Integer> mThumbs;
+    private ArrayList<Integer> mImages;
+
     @Override
     public void onCreate(Bundle icicle) {
         super.onCreate(icicle);
         requestWindowFeature(Window.FEATURE_NO_TITLE);
 
+        findWallpapers();
+
         setContentView(R.layout.wallpaper_chooser);
 
         mOptions = new BitmapFactory.Options();
@@ -103,13 +105,41 @@
         mGallery.setAdapter(new ImageAdapter(this));
         mGallery.setOnItemSelectedListener(this);
         mGallery.setCallbackDuringFling(false);
-        
+
         Button b = (Button) findViewById(R.id.set);
         b.setOnClickListener(this);
 
         mImageView = (ImageView) findViewById(R.id.wallpaper);
     }
 
+    private void findWallpapers() {
+        mThumbs = new ArrayList<Integer>(THUMB_IDS.length + 4);
+        Collections.addAll(mThumbs, THUMB_IDS);
+
+        mImages = new ArrayList<Integer>(IMAGE_IDS.length + 4);
+        Collections.addAll(mImages, IMAGE_IDS);
+
+        final Resources resources = getResources();
+        final String[] extras = resources.getStringArray(R.array.extra_wallpapers);
+        final String packageName = getApplication().getPackageName();
+
+        final ArrayList<Integer> images = mImages;
+        final ArrayList<Integer> thumbs = mThumbs;
+
+        for (String extra : extras) {
+            int res = resources.getIdentifier(extra, "drawable", packageName);
+            if (res != 0) {
+                final int thumbRes = resources.getIdentifier(extra + "_small",
+                        "drawable", packageName);
+
+                if (thumbRes != 0) {
+                    images.add(res);
+                    thumbs.add(res);
+                }
+            }
+        }
+    }
+
     @Override
     protected void onResume() {
         super.onResume();
@@ -144,7 +174,7 @@
 
         mIsWallpaperSet = true;
         try {
-            InputStream stream = getResources().openRawResource(IMAGE_IDS[position]);
+            InputStream stream = getResources().openRawResource(mImages.get(position));
             setWallpaper(stream);
             setResult(RESULT_OK);
             finish();
@@ -164,7 +194,7 @@
         }
 
         public int getCount() {
-            return THUMB_IDS.length;
+            return mThumbs.size();
         }
 
         public Object getItem(int position) {
@@ -184,7 +214,7 @@
                 image = (ImageView) convertView;
             }
 
-            image.setImageResource(THUMB_IDS[position]);
+            image.setImageResource(mThumbs.get(position));
             image.getDrawable().setDither(true);
             return image;
         }