diff --git a/Makefile b/Makefile index 0b4ef527b8c..ee487cd2342 100644 --- a/Makefile +++ b/Makefile @@ -18,7 +18,7 @@ STRUCTUREFILE = jquery.mobile.structure-${VER} nightly: DIR = jquery.mobile # The output folder for the finished files -OUTPUT = compiled +OUTPUT = ../../../public/libs/jqm # Command to remove the latest directory from the CDN before uploading, only if using latest target RMLATEST = echo "" diff --git a/css/structure/jquery.mobile.button.css b/css/structure/jquery.mobile.button.css index 7632e3132c2..2b79d983219 100644 --- a/css/structure/jquery.mobile.button.css +++ b/css/structure/jquery.mobile.button.css @@ -9,6 +9,27 @@ .ui-btn-inner { padding: .6em 25px; display: block; text-overflow: ellipsis; overflow: hidden; white-space: nowrap; position: relative; zoom: 1; } .ui-btn input, .ui-btn button { z-index: 2; } .ui-header .ui-btn-inner, .ui-footer .ui-btn-inner, .ui-bar .ui-btn-inner { padding: .4em 8px .5em; } +/* +.ui-btn-icon-notext { display: inline-block; width: 20px; height: 20px; padding: 2px 1px 2px 3px; text-indent: -9999px; } +.ui-btn-icon-notext > .ui-btn-inner { padding: 0; } +.ui-btn-icon-notext .ui-btn-text { position: absolute; left: -999px; } +.ui-btn-icon-left > .ui-btn-inner { padding-left: 33px; } +.ui-header .ui-btn-icon-left > .ui-btn-inner, +.ui-footer .ui-btn-icon-left > .ui-btn-inner, +.ui-bar .ui-btn-icon-left > .ui-btn-inner { padding-left: 27px; } +.ui-btn-icon-right > .ui-btn-inner { padding-right: 33px; } +.ui-header .ui-btn-icon-right > .ui-btn-inner, +.ui-footer .ui-btn-icon-right > .ui-btn-inner, +.ui-bar .ui-btn-icon-right > .ui-btn-inner { padding-right: 27px; } +.ui-btn-icon-top > .ui-btn-inner { padding-top: 33px; } +.ui-header .ui-btn-icon-top > .ui-btn-inner, +.ui-footer .ui-btn-icon-top > .ui-btn-inner, +.ui-bar .ui-btn-icon-top > .ui-btn-inner { padding-top: 27px; } +.ui-btn-icon-bottom > .ui-btn-inner { padding-bottom: 33px; } +.ui-header .ui-btn-icon-bottom > .ui-btn-inner, +.ui-footer .ui-btn-icon-bottom > .ui-btn-inner, +.ui-bar .ui-btn-icon-bottom > .ui-btn-inner { padding-bottom: 27px; } +*/ .ui-btn-icon-notext { width: 24px; height: 24px; } .ui-btn-icon-notext .ui-btn-inner { padding: 2px 1px 2px 3px; } .ui-btn-text { position: relative; z-index: 1; } diff --git a/css/themes/default/jquery.mobile.theme.css b/css/themes/default/jquery.mobile.theme.css index 9ae1976d198..3b106e902e3 100644 --- a/css/themes/default/jquery.mobile.theme.css +++ b/css/themes/default/jquery.mobile.theme.css @@ -842,7 +842,7 @@ a.ui-link-inherit { .ui-icon-searchfield:after { background: #666 /*{global-icon-color}*/; background: rgba(0,0,0,.4) /*{global-icon-disc}*/; - background-image: url(images/icons-18-white.png) /*{global-icon-set}*/; + background-image: url(/images/icons-18-white.png) /*{global-icon-set}*/; background-repeat: no-repeat; -moz-border-radius: 9px; -webkit-border-radius: 9px; @@ -856,7 +856,7 @@ a.ui-link-inherit { .ui-icon-alt { background: #fff; background: rgba(255,255,255,.3); - background-image: url(images/icons-18-black.png); + background-image: url(/images/icons-18-black.png); background-repeat: no-repeat; } @@ -872,14 +872,14 @@ a.ui-link-inherit { .ui-icon-gear, .ui-icon-refresh, .ui-icon-forward, .ui-icon-back, .ui-icon-grid, .ui-icon-star, .ui-icon-alert, .ui-icon-info, .ui-icon-home, .ui-icon-search, .ui-icon-searchfield:after, .ui-icon-checkbox-off, .ui-icon-checkbox-on, .ui-icon-radio-off, .ui-icon-radio-on { - background-image: url(images/icons-36-white.png); + background-image: url(/images/icons-36-white.png); -moz-background-size: 776px 18px; -o-background-size: 776px 18px; -webkit-background-size: 776px 18px; background-size: 776px 18px; } .ui-icon-alt { - background-image: url(images/icons-36-black.png); + background-image: url(/images/icons-36-black.png); } } @@ -976,7 +976,7 @@ a.ui-link-inherit { /* loading icon */ .ui-icon-loading { - background-image: url(images/ajax-loader.png); + background-image: url(/images/ajax-loader.png); width: 40px; height: 40px; -moz-border-radius: 20px; diff --git a/js/jquery.mobile.buttonMarkup.js b/js/jquery.mobile.buttonMarkup.js index dc0af0976bf..b5145ef1a28 100644 --- a/js/jquery.mobile.buttonMarkup.js +++ b/js/jquery.mobile.buttonMarkup.js @@ -58,7 +58,15 @@ $.fn.buttonMarkup = function( options ) { } } - if ( o.corners ) { + if ( el.attr('class') && el.attr('class').indexOf('ui-btn-corner-') != -1){ + // The button was already given corner classes manually + var sides = ['left', 'right', 'top', 'bottom']; + for (var i=0; i < sides.length; i++){ + if (el.hasClass('ui-btn-corner-' + sides[i])){ + innerClass += " ui-btn-corner-" + sides[i]; + } + } + } else if ( o.corners ) { buttonClass += " ui-btn-corner-all"; innerClass += " ui-btn-corner-all"; } diff --git a/js/jquery.mobile.core.js b/js/jquery.mobile.core.js index a5b3068a4d0..8e9d9ca1091 100644 --- a/js/jquery.mobile.core.js +++ b/js/jquery.mobile.core.js @@ -35,13 +35,13 @@ linkBindingEnabled: true, // Set default page transition - 'none' for no transitions - defaultPageTransition: "slide", + defaultPageTransition: "none", // Minimum scroll distance that will be remembered when returning to a page minScrollBack: 250, // Set default dialog transition - 'none' for no transitions - defaultDialogTransition: "pop", + defaultDialogTransition: "none", // Show loading message during Ajax requests // if false, message will not appear, but loading classes will still be toggled on html el diff --git a/js/jquery.mobile.forms.textinput.js b/js/jquery.mobile.forms.textinput.js index e5dc0acb5fa..5fe97007806 100644 --- a/js/jquery.mobile.forms.textinput.js +++ b/js/jquery.mobile.forms.textinput.js @@ -80,7 +80,9 @@ $.widget( "mobile.textinput", $.mobile.widget, { .focus( toggleClear ); } else { - input.addClass( "ui-corner-all ui-shadow-inset" + themeclass ); + input.addClass( "ui-shadow-inset" + themeclass ); + if (input.attr('class').indexOf('ui-corner-') == -1) + input.addClass('ui-corner-all'); } input.focus(function() { diff --git a/js/jquery.mobile.listview.filter.js b/js/jquery.mobile.listview.filter.js index 4d8d4024a2f..d906c855f7d 100755 --- a/js/jquery.mobile.listview.filter.js +++ b/js/jquery.mobile.listview.filter.js @@ -86,19 +86,26 @@ $( ":jqmData(role='listview')" ).live( "listviewcreate", function() { // Show items, not marked to be hidden listItems .filter( ":not(.ui-filter-hidequeue)" ) + .toggleClass( "ui-screen-highlight", true ) .toggleClass( "ui-screen-hidden", false ); // Hide items, marked to be hidden listItems .filter( ".ui-filter-hidequeue" ) + .toggleClass( "ui-screen-highlight", false ) .toggleClass( "ui-screen-hidden", true ) .toggleClass( "ui-filter-hidequeue", false ); } else { //filtervalue is empty => show all - listItems.toggleClass( "ui-screen-hidden", false ); + listItems + .toggleClass( "ui-screen-highlight", false ) + .toggleClass( "ui-screen-hidden", false ); + } + + list.trigger('filter', [val]); listview._refreshCorners(); }) .appendTo( wrapper ) @@ -109,9 +116,10 @@ $( ":jqmData(role='listview')" ).live( "listviewcreate", function() { } wrapper.bind( "submit", function() { + list.trigger('filterSubmit'); return false; }) .insertBefore( list ); }); -})( jQuery ); \ No newline at end of file +})( jQuery ); diff --git a/js/jquery.mobile.navigation.js b/js/jquery.mobile.navigation.js index 49d079465aa..bcce35bb0d3 100755 --- a/js/jquery.mobile.navigation.js +++ b/js/jquery.mobile.navigation.js @@ -584,7 +584,9 @@ if( $.support.touchOverflow && $.mobile.touchOverflowEnabled ){ return; } - $( "." + $.mobile.activePageClass ).css( "min-height", getScreenHeight() ); + var $page = $( "." + $.mobile.activePageClass ); + if ($page.attr('data-' + $.mobile.ns + 'expand-height') !== 'false') + $page.css( "min-height", getScreenHeight() ); } //shared page enhancements @@ -1261,7 +1263,7 @@ if ( link ) { if ( path.parseUrl( link.getAttribute( "href" ) || "#" ).hash !== "#" ) { removeActiveLinkClass( true ); - $activeClickedLink = $( link ).closest( ".ui-btn" ).not( ".ui-disabled" ); + $activeClickedLink = $( link ).closest( ".ui-btn:visible" ).not( ".ui-disabled" ); $activeClickedLink.addClass( $.mobile.activeBtnClass ); $( "." + $.mobile.activePageClass + " .ui-btn" ).not( link ).blur(); } @@ -1347,6 +1349,8 @@ // moved into more comprehensive isExternalLink isExternal = useDefaultUrlHandling || ( path.isExternal( href ) && !isCrossDomainPageLoad ); + $activeClickedLink = $link.closest( ".ui-btn:visible" ); + if( isExternal ) { httpCleanup(); //use default click handling @@ -1469,4 +1473,10 @@ };//_registerInternalEvents callback + $(function(){ + var loc = document.location.toString(); + if (loc.indexOf(dialogHashKey) != -1) + document.location = path.getFilePath(loc); + }); + })( jQuery ); diff --git a/js/jquery.mobile.page.js b/js/jquery.mobile.page.js index 5f492393cf9..aa233f8e39a 100644 --- a/js/jquery.mobile.page.js +++ b/js/jquery.mobile.page.js @@ -9,6 +9,25 @@ $.widget( "mobile.page", $.mobile.widget, { options: { + backBtnText: "Back", + addBackBtn: false, + backBtnTheme: null, + degradeInputs: { + color: false, + date: true, + datetime: true, + "datetime-local": true, + email: false, + month: false, + number: false, + range: "number", + search: true, + tel: false, + time: false, + url: false, + week: false + }, + keepNative: null, theme: "c", domCache: false, keepNativeDefault: ":jqmData(role='none'), :jqmData(role='nojs')"