Index: plugins/widgets/dragdrop.js
===================================================================
--- plugins/widgets/dragdrop.js	(revision 1649)
+++ plugins/widgets/dragdrop.js	(revision 1650)
@@ -16,39 +16,56 @@
 		connectWith: ".connected, .sortable-delete",
 		start: function( event, ui ) {
-			ui.item.css('left', ui.item.position().left + 30);
+			// petit décalage éstétique
+			ui.item.css('left', ui.item.position().left + 20);
 		},
 		update: function(event, ui) {
 			
-			// mes a zéro le décalage
+			ul = $(this);
+			widget = ui.item;
+			field = ul.parents('.widgets');
+			
+			// met a zéro le décalage
 			ui.item.css('left', 'auto');
 			
-			if( $(this).find('li').length == 0 ) {
-				$(this).parents('.widgets').find('.empty-widgets').show();
-			} else {
-				$(this).parents('.widgets').find('.empty-widgets').hide();
+			// signale les zone vide
+			if( ul.find('li').length == 0 )
+				 field.find('.empty-widgets').show();
+			else field.find('.empty-widgets').hide();
+			
+			// remove
+			if( widget.parents('ul').is('.sortable-delete') ) {
+				widget.hide('slow', function() {
+					$(this).remove();
+				});
 			}
 			
 			// réordonne
-			if( $(this).attr('id') ) {
-				$(this).find('input[title=ordre]').each(function(i){
-					tab = $(this).val(i);
+			if( ul.attr('id') ) {
+				ul.find('li').each(function(i) {
+					
+					// trouve la zone de récéption
+					var name = ul.attr('id').split('dnd').join('');
+					
+					// modifie le name en conséquence
+					$(this).find('*[name^=w]').each(function(){
+						tab = $(this).attr('name').split('][');
+						tab[0] = "w["+name;
+						tab[1] = i;
+						$(this).attr('name', tab.join(']['));
+					});
+					
+					// ainssi que le champ d'ordre sans js (au cas ou)
+					$(this).find('input[title=ordre]').val(i);
+					
 				});
 			}
 			
-			// switch
-			if( $(this).attr('id') != ui.item.parents('ul').attr('id') ) {
-				//oldname = $(this).attr('id').split('dnd').join('');
-				var name = ui.item.parents('ul').attr('id').split('dnd').join('');
-				ui.item.find('*[name^=w]').each(function(){
-					tab = $(this).attr('name').split('][');
-					tab[0] = "w["+name;
-					$(this).attr('name', tab.join(']['));
-				});
+			// expand
+			if(widget.find('img.expand').length == 0) {
+				dotclear.postExpander(widget);
+				dotclear.viewPostContent(widget, 'close');
 			}
 			
-		} //,
-		//change: function( event, ui ) {
-			//ui.helper.css('height', $('#dndnav .widget-name').css('height'));
-		//}
+		}
 	});
 	
@@ -62,7 +79,4 @@
 		start: function( event, ui ) {
 			ui.helper.css({'width': $('#widgets > li').css('width')});
-			//ui.helper.css({'min-height': $('#dndnav .widget-name').css('height')});
-			//ui.helper.find('.form-note').hide();
-			//ui.helper.find('.widget-name').css({'min-height': $('#dndnav .widget-name').css('height')});
 		}
 	});
Index: plugins/widgets/index.php
===================================================================
--- plugins/widgets/index.php	(revision 1649)
+++ plugins/widgets/index.php	(revision 1650)
@@ -201,6 +201,6 @@
 	echo
 	'<li>'.form::hidden(array('w[void][0][id]'),html::escapeHTML($w->id())).
-	'<p class="widget-name">'.form::field(array('w[void][0][order]'),2,3,0,'hideControl').' '.
-	$w->name().($w->desc() != '' ? ' <span class="form-note">'.__($w->desc()).'</span>' : '').'</p>'.
+	'<p class="widget-name">'.form::field(array('w[void][0][order]'),2,3,0,'js-hide','',0,'title="'.__('order').'"').' '.$w->name().
+	($w->desc() != '' ? ' <span class="form-note">'.__($w->desc()).'</span>' : '').'</p>'.
 	'<p class="js-remove"><label class="classic">'.__('Append to:').'</label> '.
 	form::combo(array('addw['.$w->id().']'),$append_combo).'</p>'.
@@ -221,6 +221,6 @@
 '<div id="sidebarNav" class="widgets fieldset">'.
 sidebarWidgets('dndnav',__('Navigation sidebar'),$widgets_nav,'nav',$__default_widgets['nav'],$j).
-'<ul class="sortable-delete"></ul>'.
-'</div>';
+'</div>'.
+'<ul class="sortable-delete"></ul>';
 
 # Extra sidebar
@@ -228,6 +228,6 @@
 '<div id="sidebarExtra" class="widgets fieldset">'.
 sidebarWidgets('dndextra',__('Extra sidebar'),$widgets_extra,'extra',$__default_widgets['extra'],$j).
-'<ul class="sortable-delete"></ul>'.
-'</div>';
+'</div>'.
+'<ul class="sortable-delete"></ul>';
 
 # Custom sidebar
@@ -235,6 +235,6 @@
 '<div id="sidebarCustom" class="widgets fieldset">'.
 sidebarWidgets('dndcustom',__('Custom sidebar'),$widgets_custom,'custom',$__default_widgets['custom'],$j).
-'<ul class="sortable-delete"></ul>'.
-'</div>';
+'</div>'.
+'<ul class="sortable-delete"></ul>';
 
 echo
@@ -336,7 +336,7 @@
 		
 		$res .=
-		'<li>'.form::hidden(array($iname.'[id]'),html::escapeHTML($w->id()), 'blop').
-		'<p class="widget-name">'.form::field(array($iname.'[order]'),2,3,(string) $i,'js-hide','',0,'title="'.__('order').'"').' '.
-		$w->name().($w->desc() != '' ? ' <!-- <span class="form-note">'.__($w->desc()).'</span> -->' : '').'</p>'.
+		'<li>'.form::hidden(array($iname.'[id]'),html::escapeHTML($w->id())).
+		'<p class="widget-name">'.form::field(array($iname.'[order]'),2,3,(string) $i,'js-hide','',0,'title="'.__('order').'"').' '.$w->name().
+		($w->desc() != '' ? ' <span class="form-note">'.__($w->desc()).'</span>' : '').'</p>'.
 		'<p class="removeWidget js-remove"><label class="classic">'.
 		form::checkbox(array($iname.'[_rem]'),'1',0).' '.__('Remove widget').
Index: plugins/widgets/style.css
===================================================================
--- plugins/widgets/style.css	(revision 1649)
+++ plugins/widgets/style.css	(revision 1650)
@@ -37,8 +37,10 @@
 }
 .widgets.fieldset {
-	margin-bottom: 2em;
+	margin-bottom: 0;
+	border-radius: 6px 6px 0 0;
 }
 #widgets, #dndnav, #dndextra, #dndcustom {
 	padding: 1em 0;
+	margin: 1em 0 0;
 }
 #dndnav > li,
@@ -62,5 +64,5 @@
 	border: 1px dashed #999;
 	height: 2rem;
-	padding: 4px 6px;
+	padding: 3px;
 }
 
@@ -97,11 +99,16 @@
 }
 
+
 .sortable-delete {
-    background: url("index.php?pf=pages/icon.png") no-repeat 6px 8px #FFBABA;
-    border: 1px solid #999999;
+    background: url("index.php?pf=pages/icon.png") no-repeat scroll 6px 8px #FFBABA;
+    border-color: #999999;
+    border-radius: 0 0 6px 6px;
+    border-right: 1px solid #999999;
+    border-style: solid;
+    border-width: 0 1px 1px;
     color: #000000;
     font-weight: bold;
     list-style: none outside none;
-    margin: 0 0 1em;
+    margin: 0 0 2em;
     min-height: 25px;
     padding: 4px 4px 0 24px;
Index: plugins/widgets/widgets.js
===================================================================
--- plugins/widgets/widgets.js	(revision 1648)
+++ plugins/widgets/widgets.js	(revision 1650)
@@ -39,5 +39,4 @@
 		dotclear.viewPostContent(this, 'close');
 	});
-	
 });
 	
