diff -up gnome-applets-2.20.0/gweather/gweather.h.icon-name gnome-applets-2.20.0/gweather/gweather.h
--- gnome-applets-2.20.0/gweather/gweather.h.icon-name	2007-10-21 14:04:29.000000000 -0400
+++ gnome-applets-2.20.0/gweather/gweather.h	2007-10-21 14:04:54.000000000 -0400
@@ -49,9 +49,6 @@ struct _GWeatherApplet
 
 	/* dialog stuff */
 	GtkWidget *details_dialog;
-
-	GdkPixbuf *applet_pixbuf;
-	GdkBitmap *applet_mask;
 };
 
 G_END_DECLS
diff -up gnome-applets-2.20.0/gweather/gweather-applet.c.icon-name gnome-applets-2.20.0/gweather/gweather-applet.c
--- gnome-applets-2.20.0/gweather/gweather-applet.c.icon-name	2007-10-21 14:00:54.000000000 -0400
+++ gnome-applets-2.20.0/gweather/gweather-applet.c	2007-10-21 14:11:00.000000000 -0400
@@ -127,6 +127,7 @@ static void place_widgets (GWeatherApple
     gboolean horizontal = FALSE;
     int panel_size = gw_applet->size;
     const gchar *temp;   
+    const gchar *icon_name;
 	
     switch (gw_applet->orient) {
 	case PANEL_APPLET_ORIENT_LEFT:
@@ -140,14 +141,10 @@ static void place_widgets (GWeatherApple
     }
 
     /* Create the weather icon */
-    weather_info_get_pixbuf_mini(gw_applet->gweather_info, 
-    				 &(gw_applet->applet_pixbuf));     
-    gw_applet->image = gtk_image_new_from_pixbuf (gw_applet->applet_pixbuf);
-    gtk_image_set_from_pixbuf (GTK_IMAGE (gw_applet->image), 
-    			       gw_applet->applet_pixbuf);
+    icon_name = weather_info_get_icon_name (gw_applet->gweather_info);
+    gw_applet->image = gtk_image_new_from_icon_name(icon_name, GTK_ICON_SIZE_BUTTON); 
 
-    /* Check the weather icon sizes to determine box layout */
-    if (gw_applet->applet_pixbuf != NULL) {
+    if (icon_name != NULL) {
         gtk_widget_size_request(gw_applet->image, &req);
         if (horizontal)
             total_size += req.height;
@@ -387,6 +384,7 @@ update_finish (WeatherInfo *info, gpoint
     char *s;
     GWeatherApplet *gw_applet = (GWeatherApplet *)data;
     gint nxtSunEvent;
+    const gchar *icon_name;
 
     /* Update timer */
     if (gw_applet->timeout_tag > 0)
@@ -409,10 +407,9 @@ update_finish (WeatherInfo *info, gpoint
 	     (gw_fault_counter >= MAX_CONSECUTIVE_FAULTS))
     {
 	    gw_fault_counter = 0;
-	    weather_info_get_pixbuf_mini (gw_applet->gweather_info, 
-	    				 &(gw_applet->applet_pixbuf));
-	    gtk_image_set_from_pixbuf (GTK_IMAGE (gw_applet->image), 
-	    			       gw_applet->applet_pixbuf);
+            icon_name = weather_info_get_icon_name (gw_applet->gweather_info);
+            gtk_image_set_from_icon_name (GTK_IMAGE(gw_applet->image), 
+                                          icon_name, GTK_ICON_SIZE_BUTTON);
 	      
 	    gtk_label_set_text (GTK_LABEL (gw_applet->label), 
 	        		weather_info_get_temp_summary(
@@ -495,12 +492,11 @@ gint suncalc_timeout_cb (gpointer data)
 void gweather_update (GWeatherApplet *gw_applet)
 {
     WeatherPrefs prefs;
+    const gchar *icon_name;
 
-    weather_info_get_pixbuf_mini(gw_applet->gweather_info, 
-    				 &(gw_applet->applet_pixbuf));
-
-    gtk_image_set_from_pixbuf (GTK_IMAGE (gw_applet->image), 
-    			       gw_applet->applet_pixbuf);
+    icon_name = weather_info_get_icon_name(gw_applet->gweather_info);
+    gtk_image_set_from_icon_name (GTK_IMAGE (gw_applet->image), 
+    			          icon_name, GTK_ICON_SIZE_BUTTON); 
     gtk_widget_set_tooltip_text (GTK_WIDGET(gw_applet->applet),  _("Updating..."));
 
     /* Set preferred forecast type */
diff -up gnome-applets-2.20.0/gweather/gweather-dialog.c.icon-name gnome-applets-2.20.0/gweather/gweather-dialog.c
--- gnome-applets-2.20.0/gweather/gweather-dialog.c.icon-name	2007-10-21 14:11:36.000000000 -0400
+++ gnome-applets-2.20.0/gweather/gweather-dialog.c	2007-10-21 14:47:41.000000000 -0400
@@ -44,8 +44,6 @@ struct _GWeatherDialogPrivate {
 	GtkWidget *forecast_text;
 	GtkWidget *radar_image;
 
-	GdkPixbuf *dialog_pixbuf;
-
 	GWeatherApplet *applet;
 };
 
@@ -478,8 +476,7 @@ gweather_dialog_create (GWeatherDialog *
   gtk_box_pack_end (GTK_BOX (cond_hbox), cond_frame_alignment, FALSE, FALSE, 0);
   gtk_container_set_border_width (GTK_CONTAINER (cond_frame_alignment), 2);
 
-  weather_info_get_pixbuf (NULL, &(priv->dialog_pixbuf));
-  priv->cond_image = gtk_image_new_from_pixbuf (priv->dialog_pixbuf);
+  priv->cond_image = gtk_image_new_from_icon_name ("stock-unknown", GTK_ICON_SIZE_BUTTON);
   gtk_widget_show (priv->cond_image);
   gtk_container_add (GTK_CONTAINER (cond_frame_alignment), priv->cond_image);
 
@@ -526,7 +523,7 @@ gweather_dialog_create (GWeatherDialog *
       gtk_notebook_append_page (GTK_NOTEBOOK (weather_notebook), radar_vbox, radar_note_lbl);
       gtk_container_set_border_width (GTK_CONTAINER (radar_vbox), 6);
 
-      priv->radar_image = gtk_image_new_from_pixbuf (priv->dialog_pixbuf);  /* Tmp hack */
+      priv->radar_image = gtk_image_new ();
       
       imagescroll_window = gtk_scrolled_window_new (NULL, NULL);
       gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (imagescroll_window),
@@ -591,6 +588,7 @@ void gweather_dialog_update (GWeatherDia
     gchar *forecast;
     GtkTextBuffer *buffer;
     PangoFontDescription *font_desc;
+    const gchar *icon_name;
 
     priv = dialog->priv;
     gw_applet = priv->applet;
@@ -599,11 +597,10 @@ void gweather_dialog_update (GWeatherDia
     if(gw_applet->gweather_info == NULL)
     	return;
 
-    /* Update pixbuf */
-    weather_info_get_pixbuf(gw_applet->gweather_info, 
-                            &(priv->dialog_pixbuf));
-    gtk_image_set_from_pixbuf (GTK_IMAGE (priv->cond_image), 
-                               priv->dialog_pixbuf);
+    /* Update icon */
+    icon_name = weather_info_get_icon_name (gw_applet->gweather_info);
+    gtk_image_set_from_icon_name (GTK_IMAGE (priv->cond_image), 
+                                  icon_name, GTK_ICON_SIZE_DIALOG);
 
     /* Update current condition fields and forecast */
     gtk_label_set_text(GTK_LABEL(priv->cond_location), weather_info_get_location_name(gw_applet->gweather_info));
