Only apply metabox handle styles and JS events to `.postbox .hndle`, as opposed to all `h3`s in a `.postbox`.

Developers previously relying on the `h3` behavior may be affected. You may want to investigate `do_meta_boxes()` rather than recreating markup.

props SergeyBiryukov, nabil_kadimi.
fixes #28485.

Built from https://develop.svn.wordpress.org/trunk@28940


git-svn-id: http://core.svn.wordpress.org/trunk@28738 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
Helen Hou-Sandí 2014-07-01 16:23:15 +00:00
parent 177fe21194
commit 38e5e13b1f
10 changed files with 25 additions and 35 deletions

View File

@ -705,8 +705,8 @@ td.help {
------------------------------------------------------------------------------*/ ------------------------------------------------------------------------------*/
.widget .widget-top, .widget .widget-top,
.postbox h3, .postbox .hndle,
.stuffbox h3, .stuffbox .hndle,
.control-section .accordion-section-title, .control-section .accordion-section-title,
h3.dashboard-widget-title, h3.dashboard-widget-title,
h3.dashboard-widget-title span, h3.dashboard-widget-title span,
@ -729,9 +729,8 @@ h3.dashboard-widget-title small,
color: #222; color: #222;
} }
.postbox h3, .postbox .hndle,
#namediv h3, .stuffbox .hndle {
#submitdiv h3 {
border-bottom: 1px solid #eee; border-bottom: 1px solid #eee;
} }
@ -1349,6 +1348,7 @@ html.wp-toolbar {
} }
} }
.js .widget .widget-top,
.js .postbox .hndle { .js .postbox .hndle {
cursor: move; cursor: move;
} }
@ -1380,20 +1380,15 @@ html.wp-toolbar {
line-height: 1; line-height: 1;
} }
.postbox h3, /* user-select is not a part of the CSS standard - may change behavior in the future */
.stuffbox h3 { .postbox .hndle,
margin-top: 1px; .stuffbox .hndle {
-webkit-user-select: none; -webkit-user-select: none;
-moz-user-select: none; -moz-user-select: none;
-ms-user-select: none; -ms-user-select: none;
user-select: none; user-select: none;
} }
.js .widget .widget-top,
.js .postbox h3 {
cursor: move;
}
.postbox .inside, .postbox .inside,
.stuffbox .inside { .stuffbox .inside {
padding: 0 12px 12px; padding: 0 12px 12px;

View File

@ -705,8 +705,8 @@ td.help {
------------------------------------------------------------------------------*/ ------------------------------------------------------------------------------*/
.widget .widget-top, .widget .widget-top,
.postbox h3, .postbox .hndle,
.stuffbox h3, .stuffbox .hndle,
.control-section .accordion-section-title, .control-section .accordion-section-title,
h3.dashboard-widget-title, h3.dashboard-widget-title,
h3.dashboard-widget-title span, h3.dashboard-widget-title span,
@ -729,9 +729,8 @@ h3.dashboard-widget-title small,
color: #222; color: #222;
} }
.postbox h3, .postbox .hndle,
#namediv h3, .stuffbox .hndle {
#submitdiv h3 {
border-bottom: 1px solid #eee; border-bottom: 1px solid #eee;
} }
@ -1349,6 +1348,7 @@ html.wp-toolbar {
} }
} }
.js .widget .widget-top,
.js .postbox .hndle { .js .postbox .hndle {
cursor: move; cursor: move;
} }
@ -1380,20 +1380,15 @@ html.wp-toolbar {
line-height: 1; line-height: 1;
} }
.postbox h3, /* user-select is not a part of the CSS standard - may change behavior in the future */
.stuffbox h3 { .postbox .hndle,
margin-top: 1px; .stuffbox .hndle {
-webkit-user-select: none; -webkit-user-select: none;
-moz-user-select: none; -moz-user-select: none;
-ms-user-select: none; -ms-user-select: none;
user-select: none; user-select: none;
} }
.js .widget .widget-top,
.js .postbox h3 {
cursor: move;
}
.postbox .inside, .postbox .inside,
.stuffbox .inside { .stuffbox .inside {
padding: 0 12px 12px; padding: 0 12px 12px;

View File

@ -260,7 +260,7 @@ table.fixed td {
border: 1px solid #dfdfdf; border: 1px solid #dfdfdf;
} }
#wpbody-content .postbox h3 { #wpbody-content .postbox .hndle {
margin-bottom: -1px; margin-bottom: -1px;
} }

File diff suppressed because one or more lines are too long

View File

@ -260,7 +260,7 @@ table.fixed td {
border: 1px solid #dfdfdf; border: 1px solid #dfdfdf;
} }
#wpbody-content .postbox h3 { #wpbody-content .postbox .hndle {
margin-bottom: -1px; margin-bottom: -1px;
} }

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -9,7 +9,7 @@ var postboxes;
self.init(page, args); self.init(page, args);
$('.postbox h3, .postbox .handlediv').bind('click.postboxes', function() { $('.postbox .hndle, .postbox .handlediv').bind('click.postboxes', function() {
var p = $(this).parent('.postbox'), id = p.attr('id'); var p = $(this).parent('.postbox'), id = p.attr('id');
if ( 'dashboard_browser_nag' == id ) if ( 'dashboard_browser_nag' == id )
@ -28,7 +28,7 @@ var postboxes;
} }
}); });
$('.postbox h3 a').click( function(e) { $('.postbox .hndle a').click( function(e) {
e.stopPropagation(); e.stopPropagation();
}); });

View File

@ -1 +1 @@
var postboxes;!function(a){postboxes={add_postbox_toggles:function(b,c){var d=this;d.init(b,c),a(".postbox h3, .postbox .handlediv").bind("click.postboxes",function(){var c=a(this).parent(".postbox"),e=c.attr("id");"dashboard_browser_nag"!=e&&(c.toggleClass("closed"),"press-this"!=b&&d.save_state(b),e&&(!c.hasClass("closed")&&a.isFunction(postboxes.pbshow)?d.pbshow(e):c.hasClass("closed")&&a.isFunction(postboxes.pbhide)&&d.pbhide(e)))}),a(".postbox h3 a").click(function(a){a.stopPropagation()}),a(".postbox a.dismiss").bind("click.postboxes",function(){var b=a(this).parents(".postbox").attr("id")+"-hide";return a("#"+b).prop("checked",!1).triggerHandler("click"),!1}),a(".hide-postbox-tog").bind("click.postboxes",function(){var c=a(this).val();a(this).prop("checked")?(a("#"+c).show(),a.isFunction(postboxes.pbshow)&&d.pbshow(c)):(a("#"+c).hide(),a.isFunction(postboxes.pbhide)&&d.pbhide(c)),d.save_state(b),d._mark_area()}),a('.columns-prefs input[type="radio"]').bind("click.postboxes",function(){var c=parseInt(a(this).val(),10);c&&(d._pb_edit(c),d.save_order(b))})},init:function(b,c){var d=a(document.body).hasClass("mobile");a.extend(this,c||{}),a("#wpbody-content").css("overflow","hidden"),a(".meta-box-sortables").sortable({placeholder:"sortable-placeholder",connectWith:".meta-box-sortables",items:".postbox",handle:".hndle",cursor:"move",delay:d?200:0,distance:2,tolerance:"pointer",forcePlaceholderSize:!0,helper:"clone",opacity:.65,stop:function(){return a(this).find("#dashboard_browser_nag").is(":visible")&&"dashboard_browser_nag"!=this.firstChild.id?void a(this).sortable("cancel"):void postboxes.save_order(b)},receive:function(b,c){"dashboard_browser_nag"==c.item[0].id&&a(c.sender).sortable("cancel"),postboxes._mark_area()}}),d&&(a(document.body).bind("orientationchange.postboxes",function(){postboxes._pb_change()}),this._pb_change()),this._mark_area()},save_state:function(b){var c=a(".postbox").filter(".closed").map(function(){return this.id}).get().join(","),d=a(".postbox").filter(":hidden").map(function(){return this.id}).get().join(",");a.post(ajaxurl,{action:"closed-postboxes",closed:c,hidden:d,closedpostboxesnonce:jQuery("#closedpostboxesnonce").val(),page:b})},save_order:function(b){var c,d=a(".columns-prefs input:checked").val()||0;c={action:"meta-box-order",_ajax_nonce:a("#meta-box-order-nonce").val(),page_columns:d,page:b},a(".meta-box-sortables").each(function(){c["order["+this.id.split("-")[0]+"]"]=a(this).sortable("toArray").join(",")}),a.post(ajaxurl,c)},_mark_area:function(){var b=a("div.postbox:visible").length,c=a("#post-body #side-sortables");a("#dashboard-widgets .meta-box-sortables:visible").each(function(){var c=a(this);1==b||c.children(".postbox:visible").length?c.removeClass("empty-container"):c.addClass("empty-container")}),c.length&&(c.children(".postbox:visible").length?c.removeClass("empty-container"):"280px"==a("#postbox-container-1").css("width")&&c.addClass("empty-container"))},_pb_edit:function(b){var c=a(".metabox-holder").get(0);c&&(c.className=c.className.replace(/columns-\d+/,"columns-"+b))},_pb_change:function(){var b=a('label.columns-prefs-1 input[type="radio"]');switch(window.orientation){case 90:case-90:b.length&&b.is(":checked")||this._pb_edit(2);break;case 0:case 180:a("#poststuff").length?this._pb_edit(1):b.length&&b.is(":checked")||this._pb_edit(2)}},pbshow:!1,pbhide:!1}}(jQuery); var postboxes;!function(a){postboxes={add_postbox_toggles:function(b,c){var d=this;d.init(b,c),a(".postbox .hndle, .postbox .handlediv").bind("click.postboxes",function(){var c=a(this).parent(".postbox"),e=c.attr("id");"dashboard_browser_nag"!=e&&(c.toggleClass("closed"),"press-this"!=b&&d.save_state(b),e&&(!c.hasClass("closed")&&a.isFunction(postboxes.pbshow)?d.pbshow(e):c.hasClass("closed")&&a.isFunction(postboxes.pbhide)&&d.pbhide(e)))}),a(".postbox .hndle a").click(function(a){a.stopPropagation()}),a(".postbox a.dismiss").bind("click.postboxes",function(){var b=a(this).parents(".postbox").attr("id")+"-hide";return a("#"+b).prop("checked",!1).triggerHandler("click"),!1}),a(".hide-postbox-tog").bind("click.postboxes",function(){var c=a(this).val();a(this).prop("checked")?(a("#"+c).show(),a.isFunction(postboxes.pbshow)&&d.pbshow(c)):(a("#"+c).hide(),a.isFunction(postboxes.pbhide)&&d.pbhide(c)),d.save_state(b),d._mark_area()}),a('.columns-prefs input[type="radio"]').bind("click.postboxes",function(){var c=parseInt(a(this).val(),10);c&&(d._pb_edit(c),d.save_order(b))})},init:function(b,c){var d=a(document.body).hasClass("mobile");a.extend(this,c||{}),a("#wpbody-content").css("overflow","hidden"),a(".meta-box-sortables").sortable({placeholder:"sortable-placeholder",connectWith:".meta-box-sortables",items:".postbox",handle:".hndle",cursor:"move",delay:d?200:0,distance:2,tolerance:"pointer",forcePlaceholderSize:!0,helper:"clone",opacity:.65,stop:function(){return a(this).find("#dashboard_browser_nag").is(":visible")&&"dashboard_browser_nag"!=this.firstChild.id?void a(this).sortable("cancel"):void postboxes.save_order(b)},receive:function(b,c){"dashboard_browser_nag"==c.item[0].id&&a(c.sender).sortable("cancel"),postboxes._mark_area()}}),d&&(a(document.body).bind("orientationchange.postboxes",function(){postboxes._pb_change()}),this._pb_change()),this._mark_area()},save_state:function(b){var c=a(".postbox").filter(".closed").map(function(){return this.id}).get().join(","),d=a(".postbox").filter(":hidden").map(function(){return this.id}).get().join(",");a.post(ajaxurl,{action:"closed-postboxes",closed:c,hidden:d,closedpostboxesnonce:jQuery("#closedpostboxesnonce").val(),page:b})},save_order:function(b){var c,d=a(".columns-prefs input:checked").val()||0;c={action:"meta-box-order",_ajax_nonce:a("#meta-box-order-nonce").val(),page_columns:d,page:b},a(".meta-box-sortables").each(function(){c["order["+this.id.split("-")[0]+"]"]=a(this).sortable("toArray").join(",")}),a.post(ajaxurl,c)},_mark_area:function(){var b=a("div.postbox:visible").length,c=a("#post-body #side-sortables");a("#dashboard-widgets .meta-box-sortables:visible").each(function(){var c=a(this);1==b||c.children(".postbox:visible").length?c.removeClass("empty-container"):c.addClass("empty-container")}),c.length&&(c.children(".postbox:visible").length?c.removeClass("empty-container"):"280px"==a("#postbox-container-1").css("width")&&c.addClass("empty-container"))},_pb_edit:function(b){var c=a(".metabox-holder").get(0);c&&(c.className=c.className.replace(/columns-\d+/,"columns-"+b))},_pb_change:function(){var b=a('label.columns-prefs-1 input[type="radio"]');switch(window.orientation){case 90:case-90:b.length&&b.is(":checked")||this._pb_edit(2);break;case 0:case 180:a("#poststuff").length?this._pb_edit(1):b.length&&b.is(":checked")||this._pb_edit(2)}},pbshow:!1,pbhide:!1}}(jQuery);