Index: layout/ExpandoPane.js
===================================================================
--- layout/ExpandoPane.js	(revision 12512)
+++ layout/ExpandoPane.js	(working copy)
@@ -31,11 +31,14 @@
 	// duration: Integer
 	//		duration to run show/hide animations
 	duration:420,
-
+	
 	postCreate:function(){
 
 		this.inherited(arguments);
 		this._animConnects = [];
+
+		this._isHorizontal = true;
+		
 		this._container = this.getParent();
 		this._titleHeight = dojo._getBorderBox(this.titleWrapper).h + 2;
 	
@@ -55,6 +58,7 @@
 					dojo.addClass(this.titleWrapper,"iconRight");
 					break;
 			}
+			this.isHorizontal = !/top|bottom/.test(region);
 		}
 		this._setupAnims();
 	},
@@ -66,19 +70,26 @@
 			node:this.domNode,
 			duration:this.duration
 		};
+
+		var isHorizontal = this._isHorizontal;
+		var showProps = {}, hideProps = {}, dimension = isHorizontal ? "width" : "height"; 
+
+		showProps[dimension] = { 
+			end:this[( isHorizontal ? "maxWidth" : "maxHeight")] || 275, 
+			unit:"px" 
+		};
+		hideProps[dimension] = { 
+			end: (this._titleHeight - 6), 
+			unit:"px"
+		};
+
 		this._showAnim = dojo.animateProperty(dojo.mixin(_common,{
 			easing:this.easeIn,
-			properties: {
-				width:{ end:this.maxWidth||275, unit:"px" }
-			}
+			properties: showProps 
 		}));
 		this._hideAnim = dojo.animateProperty(dojo.mixin(_common,{
 			easing:this.easeOut,
-			properties: {
-				width:{
-					end: (this._titleHeight - 6), unit:"px"
-				}
-			}
+			properties: hideProps
 		}));
 
 		this._animConnects = [
