Index: /Users/sgonzale/Documents/workspace/jQuery UI/ui/ui.dialog.js
===================================================================
--- /Users/sgonzale/Documents/workspace/jQuery UI/ui/ui.dialog.js	(revision 1174)
+++ /Users/sgonzale/Documents/workspace/jQuery UI/ui/ui.dialog.js	(working copy)
@@ -36,8 +36,39 @@
 		var self = this,
 			options = this.options,
 
+			title = options.title || '&nbsp;',
+			titleId = $.ui.dialog.getTitleId(this.element),
+
+			uiDialog = (this.uiDialog = $('<div/>'))
+				.hide()
+				.addClass(
+					'ui-dialog ' +
+					'ui-widget ' +
+					'ui-widget-content ' +
+					'ui-corner-all ' +
+					options.dialogClass
+				)
+				.css({
+					position: 'absolute',
+					overflow: 'hidden',
+					zIndex: options.zIndex
+				})
+				// setting tabIndex makes the div focusable
+				// setting outline to 0 prevents a border on focus in Mozilla
+				.attr('tabIndex', -1).css('outline', 0).keydown(function(ev) {
+					(options.closeOnEscape && ev.keyCode
+						&& ev.keyCode == $.ui.keyCode.ESCAPE && self.close());
+				})
+				.attr({
+					role: 'dialog',
+					'aria-labelledby': titleId
+				})
+				.mouseup(function() {
+					self.moveToTop();
+				})
+				.appendTo(document.body),
+
 			uiDialogContent = this.element
-				.appendTo(document.body)
 				.removeAttr('title')
 				.addClass(
 					'ui-dialog-content ' +
@@ -42,16 +73,7 @@
 				.addClass(
 					'ui-dialog-content ' +
 					'ui-widget-content')
-				.wrap('<div></div>')
-				.wrap('<div></div>'),
-
-			uiDialogContainer = (this.uiDialogContainer = uiDialogContent.parent())
-				.addClass('ui-dialog-container')
-				.css({
-					position: 'relative',
-					width: '100%',
-					height: '100%'
-				}),
+				.appendTo(uiDialog),
 
 			uiDialogTitlebar = (this.uiDialogTitlebar = $('<div></div>'))
 				.addClass(
@@ -63,7 +85,7 @@
 				.mousedown(function() {
 					self.moveToTop();
 				})
-				.prependTo(uiDialogContainer),
+				.prependTo(uiDialog),
 
 			uiDialogTitlebarClose = $('<a href="#"/>')
 				.addClass(
@@ -96,8 +118,6 @@
 				.text(options.closeText)
 				.appendTo(uiDialogTitlebarClose),
 
-			title = options.title || '&nbsp;',
-			titleId = $.ui.dialog.getTitleId(this.element),
 			uiDialogTitle = $('<span/>')
 				.addClass('ui-dialog-title')
 				.attr('id', titleId)
@@ -104,36 +124,6 @@
 				.html(title)
 				.prependTo(uiDialogTitlebar),
 
-			uiDialog = (this.uiDialog = uiDialogContainer.parent())
-				.hide()
-				.addClass(
-					'ui-dialog ' +
-					'ui-widget ' +
-					'ui-widget-content ' +
-					'ui-corner-all'
-				)
-				.addClass(options.dialogClass)
-				.css({
-					position: 'absolute',
-					width: options.width,
-					height: options.height,
-					overflow: 'hidden',
-					zIndex: options.zIndex
-				})
-				// setting tabIndex makes the div focusable
-				// setting outline to 0 prevents a border on focus in Mozilla
-				.attr('tabIndex', -1).css('outline', 0).keydown(function(ev) {
-					(options.closeOnEscape && ev.keyCode
-						&& ev.keyCode == $.ui.keyCode.ESCAPE && self.close());
-				})
-				.attr({
-					role: 'dialog',
-					'aria-labelledby': titleId
-				})
-				.mouseup(function() {
-					self.moveToTop();
-				}),
-
 			uiDialogButtonPane = (this.uiDialogButtonPane = $('<div></div>'))
 				.addClass(
 					'ui-dialog-buttonpane ' +
@@ -140,10 +130,6 @@
 					'ui-widget-content ' +
 					'ui-helper-clearfix'
 				)
-				.css({
-					position: 'absolute',
-					bottom: 0
-				})
 				.appendTo(uiDialog);
 
 		uiDialogTitlebar.find("*").add(uiDialogTitlebar).disableSelection();
@@ -219,9 +205,9 @@
 
 		this.overlay = this.options.modal ? new $.ui.dialog.overlay(this) : null;
 		(this.uiDialog.next().length && this.uiDialog.appendTo('body'));
+		this._size();
 		this._position(this.options.position);
 		this.uiDialog.show(this.options.show);
-		(this.options.autoResize && this._size());
 		this.moveToTop(true);
 
 		// prevent tabbing out of modal dialogs
@@ -306,6 +292,7 @@
 
 		this.uiDialog.resizable({
 			cancel: '.ui-dialog-content',
+			alsoResize: '.ui-dialog-content',
 			helper: options.resizeHelper,
 			maxWidth: options.maxWidth,
 			maxHeight: options.maxHeight,
@@ -315,7 +302,6 @@
 				(options.resizeStart && options.resizeStart.apply(self.element[0], arguments));
 			},
 			resize: function() {
-				(options.autoResize && self._size.apply(self));
 				(options.resize && options.resize.apply(self.element[0], arguments));
 			},
 			handles: resizeHandles,
@@ -320,7 +306,6 @@
 			},
 			handles: resizeHandles,
 			stop: function() {
-				(options.autoResize && self._size.apply(self));
 				(options.resizeStop && options.resizeStop.apply(self.element[0], arguments));
 				$.ui.dialog.overlay.resize();
 			}
@@ -423,19 +408,28 @@
 
 		$.widget.prototype._setData.apply(this, arguments);
 	},
+	
+	_size: function() {
+		/* If the user has resized the dialog, the .ui-dialog and .ui-dialog-content
+		 * divs will both have width and height set
+		 */
 
-	_size: function() {
-		var container = this.uiDialogContainer,
-			titlebar = this.uiDialogTitlebar,
-			content = this.element,
-			tbMargin = (parseInt(content.css('margin-top'), 10) || 0)
-				+ (parseInt(content.css('margin-bottom'), 10) || 0),
-			lrMargin = (parseInt(content.css('margin-left'), 10) || 0)
-				+ (parseInt(content.css('margin-right'), 10) || 0);
-		content.height(container.height() - titlebar.outerHeight() - tbMargin);
-		content.width(container.width() - lrMargin);
+		// reset content sizing
+		this.element.css({
+			height: 0,
+			width: 'auto'
+		});
+		
+		// reset the wrapper sizing and determine the height of all of the
+		// non-content elements
+		var nonContentHeight = this.uiDialog.css({
+				height: 'auto',
+				width: this.options.width
+			})
+			.height();
+		
+		this.element.height(this.options.height - nonContentHeight);
 	}
-
 });
 
 $.extend($.ui.dialog, {
@@ -442,7 +436,6 @@
 	version: "@VERSION",
 	defaults: {
 		autoOpen: true,
-		autoResize: true,
 		bgiframe: false,
 		buttons: {},
 		closeOnEscape: true,
