Binärdateien metacity/po/de.gmo and metacity.neu/po/de.gmo sind verschieden.
Binärdateien metacity/po/messages.mo and metacity.neu/po/messages.mo sind verschieden.
diff -u -r metacity/src/metacity.schemas.in metacity.neu/src/metacity.schemas.in
--- metacity/src/metacity.schemas.in	2002-08-21 20:30:47.000000000 +0200
+++ metacity.neu/src/metacity.schemas.in	2002-09-09 17:27:06.000000000 +0200
@@ -23,6 +23,21 @@
     </schema>
 
     <schema>
+      <key>/schemas/apps/metacity/general/enable_animations</key>
+      <applyto>/apps/metacity/general/enable_animations</applyto>
+      <owner>metacity</owner>
+      <type>bool</type>
+      <default>true</default>
+      <locale name="C">
+         <short>Display animations</short>
+	 <long>
+	  This key toggles whether an animation is displayed when a window
+	  is minimized.
+	 </long>
+      </locale>
+    </schema>
+
+    <schema>
       <key>/schemas/apps/metacity/general/auto_raise</key>
       <applyto>/apps/metacity/general/auto_raise</applyto>
       <owner>metacity</owner>
diff -u -r metacity/src/prefs.c metacity.neu/src/prefs.c
--- metacity/src/prefs.c	2002-08-21 20:30:47.000000000 +0200
+++ metacity.neu/src/prefs.c	2002-09-09 17:18:56.000000000 +0200
@@ -31,6 +31,7 @@
  * notify listener and of course in the .schemas file
  */
 #define KEY_FOCUS_MODE "/apps/metacity/general/focus_mode"
+#define KEY_ENABLE_ANIMATIONS "/apps/metacity/general/enable_animations"
 #define KEY_AUTO_RAISE "/apps/metacity/general/auto_raise"
 #define KEY_AUTO_RAISE_DELAY "/apps/metacity/general/auto_raise_delay"
 #define KEY_THEME "/apps/metacity/general/theme"
@@ -54,11 +55,12 @@
 static char* current_theme = NULL;
 static int num_workspaces = 4;
 static gboolean application_based = FALSE;
+static gboolean enable_animations = TRUE;
 static gboolean disable_workarounds = FALSE;
 static gboolean auto_raise = FALSE;
 static gboolean auto_raise_delay = 500;
-#define NUM_COMMANDS 12
-static char *commands[NUM_COMMANDS] = { NULL, NULL, NULL, NULL, NULL, NULL,
+#define NUM_COMMANDS 13
+static char *commands[NUM_COMMANDS] = { NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                                         NULL, NULL, NULL, NULL, NULL, NULL };
 
 static gboolean update_use_system_font   (gboolean    value);
@@ -67,6 +69,7 @@
 static gboolean update_theme              (const char *value);
 static gboolean update_num_workspaces     (int         value);
 static gboolean update_application_based  (gboolean    value);
+static gboolean update_enable_animations  (gboolean    value);
 static gboolean update_disable_workarounds (gboolean   value);
 static gboolean update_auto_raise          (gboolean   value);
 static gboolean update_auto_raise_delay    (int        value);
@@ -242,6 +245,11 @@
   update_focus_mode (str_val);
   g_free (str_val);  
 
+  bool_val = gconf_client_get_bool (default_client, KEY_ENABLE_ANIMATIONS,
+				    &err);
+  cleanup_error(&err);
+  update_enable_animations (bool_val);
+
   bool_val = gconf_client_get_bool (default_client, KEY_AUTO_RAISE,
 				    &err);
   cleanup_error (&err);
@@ -485,6 +493,21 @@
       if (update_screen_binding (key, str))
         queue_changed (META_PREF_SCREEN_KEYBINDINGS);
     }
+  else if (strcmp (key, KEY_ENABLE_ANIMATIONS) == 0)
+    {
+      gboolean b;
+      
+      if (value && value->type != GCONF_VALUE_BOOL)
+        {
+	  meta_warning (_("GConf key \"%s\" is set to an invalid type\n"),
+			KEY_ENABLE_ANIMATIONS);
+	  goto out;
+	}
+      b = value ? gconf_value_get_bool (value) : enable_animations;
+      
+      if (update_enable_animations (b))
+        queue_changed (META_PREF_ENABLE_ANIMATIONS);
+    }
   else if (strcmp (key, KEY_AUTO_RAISE) == 0)
     {
       gboolean b;
@@ -706,6 +729,16 @@
 }
 
 static gboolean
+update_enable_animations (gboolean value)
+{
+  gboolean old = enable_animations;
+  
+  enable_animations = value;
+
+  return old != enable_animations;
+}
+
+static gboolean
 update_disable_workarounds (gboolean value)
 {
   gboolean old = disable_workarounds;
@@ -788,6 +821,9 @@
     case META_PREF_WINDOW_KEYBINDINGS:
       return "WINDOW_KEYBINDINGS";
 
+    case META_PREF_ENABLE_ANIMATIONS:
+      return "ENABLE_ANIMATIONS";
+
     case META_PREF_DISABLE_WORKAROUNDS:
       return "DISABLE_WORKAROUNDS";
 
@@ -1160,6 +1196,12 @@
 }
 
 gboolean
+meta_prefs_get_enable_animations ()
+{
+  return enable_animations;
+}
+
+gboolean
 meta_prefs_get_auto_raise ()
 {
   return auto_raise;
diff -u -r metacity/src/prefs.h metacity.neu/src/prefs.h
--- metacity/src/prefs.h	2002-08-21 20:30:47.000000000 +0200
+++ metacity.neu/src/prefs.h	2002-09-09 17:16:17.000000000 +0200
@@ -29,6 +29,7 @@
 typedef enum
 {
   META_PREF_FOCUS_MODE,
+  META_PREF_ENABLE_ANIMATIONS,
   META_PREF_AUTO_RAISE,
   META_PREF_AUTO_RAISE_DELAY,
   META_PREF_THEME,
@@ -59,6 +60,7 @@
 int                         meta_prefs_get_num_workspaces     (void);
 gboolean                    meta_prefs_get_application_based  (void);
 gboolean                    meta_prefs_get_disable_workarounds (void);
+gboolean		    meta_prefs_get_enable_animations  (void);
 gboolean                    meta_prefs_get_auto_raise         (void);
 int                         meta_prefs_get_auto_raise_delay   (void);

diff -u -r metacity/src/window.c metacity.neu/src/window.c
--- metacity/src/window.c	2002-09-05 20:26:56.000000000 +0200
+++ metacity.neu/src/window.c	2002-09-09 17:11:47.000000000 +0200
@@ -1182,14 +1182,17 @@
             }
 
           meta_window_get_outer_rect (window, &window_rect);
-          
-          /* Draw a nice cool animation */
-          meta_effects_draw_box_animation (window->screen,
-                                           &window_rect,
-                                           &icon_rect,
-                                           META_MINIMIZE_ANIMATION_LENGTH,
-                                           META_BOX_ANIM_SCALE);
-	}
+
+	  if (meta_prefs_get_enable_animations())
+	    {          
+            /* Draw a nice cool animation */
+            meta_effects_draw_box_animation (window->screen,
+					     &window_rect,
+					     &icon_rect,
+					     META_MINIMIZE_ANIMATION_LENGTH,
+					     META_BOX_ANIM_SCALE);
+	    }
+	  }
 
       meta_window_hide (window);
     }
