Widgets UI: make the whole "header" clickable to open/close the widget (same as postboxes), remove deprecated jQuery .live(), part props lessbloat, fixes #21247

git-svn-id: http://core.svn.wordpress.org/trunk@21281 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
azaozz 2012-07-18 22:41:43 +00:00
parent d74e83ec52
commit 3c0c21747a
1 changed files with 30 additions and 30 deletions

View File

@ -31,39 +31,39 @@ wpWidgets = {
$(this).css( 'minHeight', h + 'px' );
});
$('a.widget-action').live('click', function(){
var css = {}, widget = $(this).closest('div.widget'), inside = widget.children('.widget-inside'), w = parseInt( widget.find('input.widget-width').val(), 10 );
$(document.body).bind('click.widgets-toggle', function(e){
var target = $(e.target), css = {}, widget, inside, w;
if ( inside.is(':hidden') ) {
if ( w > 250 && inside.closest('div.widgets-sortables').length ) {
css['width'] = w + 30 + 'px';
if ( inside.closest('div.widget-liquid-right').length )
css[margin] = 235 - w + 'px';
widget.css(css);
if ( target.parents('.widget-top').length && ! target.parents('#available-widgets').length ) {
widget = target.closest('div.widget');
inside = widget.children('.widget-inside');
w = parseInt( widget.find('input.widget-width').val(), 10 );
if ( inside.is(':hidden') ) {
if ( w > 250 && inside.closest('div.widgets-sortables').length ) {
css['width'] = w + 30 + 'px';
if ( inside.closest('div.widget-liquid-right').length )
css[margin] = 235 - w + 'px';
widget.css(css);
}
wpWidgets.fixLabels(widget);
inside.slideDown('fast');
} else {
inside.slideUp('fast', function() {
widget.css({'width':'', margin:''});
});
}
wpWidgets.fixLabels(widget);
inside.slideDown('fast');
} else {
inside.slideUp('fast', function() {
widget.css({'width':'', margin:''});
});
e.preventDefault();
} else if ( target.hasClass('widget-control-save') ) {
wpWidgets.save( target.closest('div.widget'), 0, 1, 0 );
e.preventDefault();
} else if ( target.hasClass('widget-control-remove') ) {
wpWidgets.save( target.closest('div.widget'), 1, 1, 0 );
e.preventDefault();
} else if ( target.hasClass('widget-control-close') ) {
wpWidgets.close( target.closest('div.widget') );
e.preventDefault();
}
return false;
});
$('input.widget-control-save').live('click', function(){
wpWidgets.save( $(this).closest('div.widget'), 0, 1, 0 );
return false;
});
$('a.widget-control-remove').live('click', function(){
wpWidgets.save( $(this).closest('div.widget'), 1, 1, 0 );
return false;
});
$('a.widget-control-close').live('click', function(){
wpWidgets.close( $(this).closest('div.widget') );
return false;
});
sidebars.children('.widget').each(function() {