From 315a06069d075940c1dccf57150ee43c6ca9d4bf Mon Sep 17 00:00:00 2001 From: Jasper de Groot Date: Fri, 4 May 2012 14:30:59 +0200 Subject: [PATCH 1/6] Excluded button element from buttonMarkup auto initialization --- js/jquery.mobile.buttonMarkup.js | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/js/jquery.mobile.buttonMarkup.js b/js/jquery.mobile.buttonMarkup.js index c5f32b46188..cc7d208c7f2 100644 --- a/js/jquery.mobile.buttonMarkup.js +++ b/js/jquery.mobile.buttonMarkup.js @@ -80,11 +80,10 @@ $.fn.buttonMarkup = function( options ) { } if ( o.inline !== undefined ) { - // Used to control styling in headers/footers, where buttons default to `mini` style. - buttonClass += o.inline === false ? " ui-btn-block" : " ui-btn-inline"; + // Used to control styling in headers/footers, where buttons default to `inline` style. + buttonClass += o.inline ? " ui-btn-inline" : " ui-btn-block"; } - if ( o.icon ) { o.icon = "ui-icon-" + o.icon; o.iconpos = o.iconpos || "left"; @@ -241,7 +240,7 @@ var attachEvents = function() { $( document ).bind( "pagecreate create", function( e ){ $( ":jqmData(role='button'), .ui-bar > a, .ui-header > a, .ui-footer > a, .ui-bar > :jqmData(role='controlgroup') > a", e.target ) - .not( ".ui-btn, :jqmData(role='none'), :jqmData(role='nojs')" ) + .not( "button, .ui-btn, :jqmData(role='none'), :jqmData(role='nojs')" ) .buttonMarkup(); }); From fc8738a8c771e4d2d173f9049d6e7355f927e5b0 Mon Sep 17 00:00:00 2001 From: Jasper de Groot Date: Fri, 4 May 2012 14:32:47 +0200 Subject: [PATCH 2/6] Added rules for ui-btn-block in header and footer --- css/structure/jquery.mobile.button.css | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/css/structure/jquery.mobile.button.css b/css/structure/jquery.mobile.button.css index 6fdc9ee6e63..26c955ee266 100644 --- a/css/structure/jquery.mobile.button.css +++ b/css/structure/jquery.mobile.button.css @@ -7,6 +7,10 @@ .ui-header .ui-btn, .ui-footer .ui-btn { display: inline-block; margin: 0; } +.ui-header .ui-btn-block, +.ui-footer .ui-btn-block { display: block; margin: .25em 5px; } +.ui-header .ui-btn-block.ui-fullsize, +.ui-footer .ui-btn-block.ui-fullsize { margin: .5em 5px; } .ui-header .ui-btn-inner, .ui-footer .ui-btn-inner, From a618f806bf688064671223a52fd2c1ce04e0a824 Mon Sep 17 00:00:00 2001 From: Jasper de Groot Date: Fri, 4 May 2012 14:38:08 +0200 Subject: [PATCH 3/6] Fixes #3998 - Make button elements default to mini in header and footer --- js/jquery.mobile.forms.button.js | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/js/jquery.mobile.forms.button.js b/js/jquery.mobile.forms.button.js index 9a5146046b3..041b47625e3 100644 --- a/js/jquery.mobile.forms.button.js +++ b/js/jquery.mobile.forms.button.js @@ -13,12 +13,10 @@ $.widget( "mobile.button", $.mobile.widget, { theme: null, icon: null, iconpos: null, - inline: false, corners: true, shadow: true, iconshadow: true, - initSelector: "button, [type='button'], [type='submit'], [type='reset'], [type='image']", - mini: false + initSelector: "button, [type='button'], [type='submit'], [type='reset'], [type='image']" }, _create: function() { var $el = this.element, @@ -26,6 +24,8 @@ $.widget( "mobile.button", $.mobile.widget, { o = this.options, type, name, + inline = $el.jqmData( "inline" ), + mini = $el.jqmData( "mini" ), classes = "", $buttonPlaceholder; @@ -61,11 +61,11 @@ $.widget( "mobile.button", $.mobile.widget, { theme: o.theme, icon: o.icon, iconpos: o.iconpos, - inline: o.inline, + inline: inline, corners: o.corners, shadow: o.shadow, iconshadow: o.iconshadow, - mini: o.mini + mini: mini }) .addClass( classes ) .append( $el.addClass( "ui-btn-hidden" ) ); From bd02a4276649895f13deb3a62173bf13e7cf9e47 Mon Sep 17 00:00:00 2001 From: Jasper de Groot Date: Sun, 6 May 2012 17:35:21 +0200 Subject: [PATCH 4/6] Excluded input element from buttonMarkup auto initialization --- js/jquery.mobile.buttonMarkup.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/js/jquery.mobile.buttonMarkup.js b/js/jquery.mobile.buttonMarkup.js index cc7d208c7f2..5c2c6d5ca2d 100644 --- a/js/jquery.mobile.buttonMarkup.js +++ b/js/jquery.mobile.buttonMarkup.js @@ -240,7 +240,7 @@ var attachEvents = function() { $( document ).bind( "pagecreate create", function( e ){ $( ":jqmData(role='button'), .ui-bar > a, .ui-header > a, .ui-footer > a, .ui-bar > :jqmData(role='controlgroup') > a", e.target ) - .not( "button, .ui-btn, :jqmData(role='none'), :jqmData(role='nojs')" ) + .not( "button, input, .ui-btn, :jqmData(role='none'), :jqmData(role='nojs')" ) .buttonMarkup(); }); From e0872f33db2aefa3b1bc999b3f892220a7fc965c Mon Sep 17 00:00:00 2001 From: Jasper de Groot Date: Thu, 17 May 2012 17:23:02 +0200 Subject: [PATCH 5/6] keep posibility to set inline and focus options programmatically --- js/jquery.mobile.forms.button.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/js/jquery.mobile.forms.button.js b/js/jquery.mobile.forms.button.js index 041b47625e3..f070b4ffe83 100644 --- a/js/jquery.mobile.forms.button.js +++ b/js/jquery.mobile.forms.button.js @@ -24,8 +24,8 @@ $.widget( "mobile.button", $.mobile.widget, { o = this.options, type, name, - inline = $el.jqmData( "inline" ), - mini = $el.jqmData( "mini" ), + inline = o.inline || $el.jqmData( "inline" ), + mini = o.mini || $el.jqmData( "mini" ), classes = "", $buttonPlaceholder; From 7484654ecc547a1bc8d6160829cfc5404e76328b Mon Sep 17 00:00:00 2001 From: Jasper de Groot Date: Thu, 17 May 2012 18:58:29 +0200 Subject: [PATCH 6/6] update allow to override default inline and mini styling in header and footer --- js/jquery.mobile.buttonMarkup.js | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/js/jquery.mobile.buttonMarkup.js b/js/jquery.mobile.buttonMarkup.js index 5c2c6d5ca2d..d88b556ca7f 100644 --- a/js/jquery.mobile.buttonMarkup.js +++ b/js/jquery.mobile.buttonMarkup.js @@ -70,18 +70,17 @@ $.fn.buttonMarkup = function( options ) { } buttonClass = "ui-btn ui-btn-up-" + o.theme; - buttonClass += o.inline ? " ui-btn-inline" : ""; buttonClass += o.shadow ? " ui-shadow" : ""; buttonClass += o.corners ? " ui-btn-corner-all" : ""; if ( o.mini !== undefined ) { // Used to control styling in headers/footers, where buttons default to `mini` style. - buttonClass += o.mini ? " ui-mini" : " ui-fullsize"; + buttonClass += o.mini === true ? " ui-mini" : " ui-fullsize"; } if ( o.inline !== undefined ) { // Used to control styling in headers/footers, where buttons default to `inline` style. - buttonClass += o.inline ? " ui-btn-inline" : " ui-btn-block"; + buttonClass += o.inline === true ? " ui-btn-inline" : " ui-btn-block"; } if ( o.icon ) {