diff --git a/dashboard-ui/bower_components/iron-meta/.bower.json b/dashboard-ui/bower_components/iron-meta/.bower.json index e1304d174b..f4bfef4a7c 100644 --- a/dashboard-ui/bower_components/iron-meta/.bower.json +++ b/dashboard-ui/bower_components/iron-meta/.bower.json @@ -26,14 +26,14 @@ "webcomponentsjs": "webcomponents/webcomponentsjs#^0.7.0" }, "main": "iron-meta.html", - "homepage": "https://github.com/PolymerElements/iron-meta", + "homepage": "https://github.com/polymerelements/iron-meta", "_release": "1.1.1", "_resolution": { "type": "version", "tag": "v1.1.1", "commit": "e171ee234b482219c9514e6f9551df48ef48bd9f" }, - "_source": "git://github.com/PolymerElements/iron-meta.git", + "_source": "git://github.com/polymerelements/iron-meta.git", "_target": "^1.0.0", - "_originalSource": "PolymerElements/iron-meta" + "_originalSource": "polymerelements/iron-meta" } \ No newline at end of file diff --git a/dashboard-ui/music.html b/dashboard-ui/music.html index fb020e470c..84a73af00a 100644 --- a/dashboard-ui/music.html +++ b/dashboard-ui/music.html @@ -13,7 +13,7 @@ ${TabArtists} ${TabSongs} ${TabGenres} - ${TabFolders} + ${TabFolders}
${TabSuggestions} @@ -22,7 +22,7 @@ ${TabArtists} ${TabSongs} ${TabGenres} - ${TabFolders} + ${TabFolders}
diff --git a/dashboard-ui/scripts/localsync.js b/dashboard-ui/scripts/localsync.js index b0b49ea67d..58cd5f985f 100644 --- a/dashboard-ui/scripts/localsync.js +++ b/dashboard-ui/scripts/localsync.js @@ -14,28 +14,28 @@ return syncPromise.promise(); } - var deferred = DeferredBuilder.Deferred(); + return new Promise(function (resolve, reject) { - require(['multiserversync'], function () { + require(['multiserversync'], function () { - options = options || {}; + options = options || {}; - LocalSync.normalizeSyncOptions(options); + LocalSync.normalizeSyncOptions(options); - options.cameraUploadServers = AppSettings.cameraUploadServers(); + options.cameraUploadServers = AppSettings.cameraUploadServers(); - syncPromise = new MediaBrowser.MultiServerSync(ConnectionManager).sync(options).then(function () { + syncPromise = new MediaBrowser.MultiServerSync(ConnectionManager).sync(options).then(function () { - syncPromise = null; - deferred.resolve(); + syncPromise = null; + resolve(); - }, function () { + }, function () { - syncPromise = null; + syncPromise = null; + }); }); - }); - return deferred.promise(); + }); }, normalizeSyncOptions: function (options) { diff --git a/dashboard-ui/scripts/loginpage.js b/dashboard-ui/scripts/loginpage.js index b219151ff3..6111dcb1b8 100644 --- a/dashboard-ui/scripts/loginpage.js +++ b/dashboard-ui/scripts/loginpage.js @@ -3,16 +3,16 @@ getApiClient: function () { var serverId = getParameterByName('serverid'); - var deferred = DeferredBuilder.Deferred(); - if (serverId) { - deferred.resolveWith(null, [ConnectionManager.getOrCreateApiClient(serverId)]); + return new Promise(function (resolve, reject) { - } else { - deferred.resolveWith(null, [ApiClient]); - } + if (serverId) { + resolve(ConnectionManager.getOrCreateApiClient(serverId)); - return deferred.promise(); + } else { + resolve(ApiClient); + } + }); }, onPageShow: function () { diff --git a/dashboard-ui/scripts/nowplayingbar.js b/dashboard-ui/scripts/nowplayingbar.js index fba777e68e..0e829aaf14 100644 --- a/dashboard-ui/scripts/nowplayingbar.js +++ b/dashboard-ui/scripts/nowplayingbar.js @@ -97,6 +97,8 @@ return; } + onfinish(); + return; requestAnimationFrame(function () { var keyframes = [ { height: getHeight(elem), offset: 0 }, @@ -117,6 +119,7 @@ if (!browserInfo.animate || browserInfo.mobile) { return; } + return; requestAnimationFrame(function () { diff --git a/dashboard-ui/scripts/site.js b/dashboard-ui/scripts/site.js index 15298393c4..0e42cd85d7 100644 --- a/dashboard-ui/scripts/site.js +++ b/dashboard-ui/scripts/site.js @@ -1465,21 +1465,17 @@ var Dashboard = { loadExternalPlayer: function () { - var deferred = DeferredBuilder.Deferred(); + return new Promise(function (resolve, reject) { - require(['scripts/externalplayer.js'], function () { + require(['scripts/externalplayer.js'], function () { - if (Dashboard.isRunningInCordova()) { - require(['cordova/externalplayer.js'], function () { - - deferred.resolve(); - }); - } else { - deferred.resolve(); - } + if (Dashboard.isRunningInCordova()) { + require(['cordova/externalplayer.js'], resolve); + } else { + resolve(); + } + }); }); - - return deferred.promise(); }, exitOnBack: function () { @@ -2190,6 +2186,8 @@ var AppInfo = {}; deps.push('scripts/librarymenu'); deps.push('apiclient/deferred'); + deps.push('css!css/card.css'); + require(deps, function () { $.mobile.filterHtml = Dashboard.filterHtml; diff --git a/dashboard-ui/thirdparty/jquerymobile-1.4.5/jqm.popup.css b/dashboard-ui/thirdparty/jquerymobile-1.4.5/jqm.popup.css index 0077d36342..60fbf4dc88 100644 --- a/dashboard-ui/thirdparty/jquerymobile-1.4.5/jqm.popup.css +++ b/dashboard-ui/thirdparty/jquerymobile-1.4.5/jqm.popup.css @@ -411,6 +411,19 @@ +/* Corner styling for dialogs and popups */ +.ui-corner-all > .ui-content:first-child { + -webkit-border-top-left-radius: inherit; + border-top-left-radius: inherit; + -webkit-border-top-right-radius: inherit; + border-top-right-radius: inherit; +} +.ui-corner-all > .ui-content:last-child { + -webkit-border-bottom-left-radius: inherit; + border-bottom-left-radius: inherit; + -webkit-border-bottom-right-radius: inherit; + border-bottom-right-radius: inherit; +} /* Popup arrow */ @@ -420,3 +433,9 @@ top: .6em /*{global-radii-blocks}*/; bottom: .6em /*{global-radii-blocks}*/; } + + +/* Used for hiding elements by the filterable widget. You can also use this class to hide list items or buttons in controlgroups; this ensures correct corner styling. */ +.ui-screen-hidden { + display: none !important; +} \ No newline at end of file diff --git a/dashboard-ui/thirdparty/jquerymobile-1.4.5/jquery.mobile.custom.structure.css b/dashboard-ui/thirdparty/jquerymobile-1.4.5/jquery.mobile.custom.structure.css deleted file mode 100644 index 410ebdcd80..0000000000 --- a/dashboard-ui/thirdparty/jquerymobile-1.4.5/jquery.mobile.custom.structure.css +++ /dev/null @@ -1,293 +0,0 @@ -/* -* jQuery Mobile v1.4.5 -* http://jquerymobile.com -* -* Copyright 2010, 2014 jQuery Foundation, Inc. and other contributors -* Released under the MIT license. -* http://jquery.org/license -* -*/ - -.ui-mobile fieldset, -.ui-page { - padding: 0; - margin: 0; -} -.ui-mobile a img, -.ui-mobile fieldset { - border-width: 0; -} -/* Fixes for fieldset issues on IE10 and FF (see #6077) */ -.ui-mobile fieldset { - min-width: 0; -} -@-moz-document url-prefix() { - .ui-mobile fieldset { - display: table-column; - vertical-align: middle; - } -} - -/* Viewport */ -.ui-mobile-viewport { - margin: 0; - overflow-x: visible; - -webkit-text-size-adjust: 100%; - -ms-text-size-adjust:none; - -webkit-tap-highlight-color: rgba(0, 0, 0, 0); -} -/* Issue #2066 */ -body.ui-mobile-viewport, -div.ui-mobile-viewport { - overflow-x: hidden; -} -/* "page" containers - full-screen views, one should always be in view post-pageload */ -.ui-mobile [data-role=page], -.ui-mobile [data-role=dialog], -.ui-page { - top: 0; - left: 0; - width: 100%; - min-height: 100%; - position: absolute; - display: none; - border: 0; -} -.ui-page { - /*position: static !important;*/ -} -/* On ios4, setting focus on the page element causes flashing during transitions when there is an outline, so we turn off outlines */ -.ui-page { - outline: none; -} -.ui-mobile .ui-page-active { - display: block; - overflow: visible; - overflow-x: hidden; -} -@media screen and (orientation: portrait) { - .ui-mobile .ui-page { - min-height: 420px; - } -} -@media screen and (orientation: landscape) { - .ui-mobile .ui-page { - min-height: 300px; - } -} - -/* Fouc */ -.ui-mobile-rendering > * { - visibility: hidden; -} - -/* Headers, content panels */ -.ui-bar, -.ui-body { - position: relative; - padding: .4em 1em; - overflow: hidden; - display: block; - clear: both; -} -.ui-bar h1, -.ui-bar h2, -.ui-bar h3, -.ui-bar h4, -.ui-bar h5, -.ui-bar h6 { - margin: 0; - padding: 0; - font-size: 1em; - display: inline-block; -} -.ui-content { - border-width: 0; - overflow: visible; - overflow-x: hidden; - padding: 1em; -} -/* Corner styling for dialogs and popups */ -.ui-corner-all > .ui-content:first-child { - -webkit-border-top-left-radius: inherit; - border-top-left-radius: inherit; - -webkit-border-top-right-radius: inherit; - border-top-right-radius: inherit; -} -.ui-corner-all > .ui-content:last-child { - -webkit-border-bottom-left-radius: inherit; - border-bottom-left-radius: inherit; - -webkit-border-bottom-right-radius: inherit; - border-bottom-right-radius: inherit; -} - -/* Buttons and icons */ -.ui-btn { - font-size: 16px; - margin: .5em 0; - padding: .7em 1em; - display: block; - position: relative; - text-align: center; - text-overflow: ellipsis; - overflow: hidden; - white-space: nowrap; - cursor: pointer; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; -} -.ui-btn-icon-notext { - padding: 0; - width: 1.75em; - height: 1.75em; - text-indent: -9999px; - white-space: nowrap !important; -} -.ui-mini { - font-size: 12.5px; -} -.ui-mini .ui-btn { - font-size: inherit; -} -.ui-mini.ui-btn-icon-notext, -.ui-mini .ui-btn-icon-notext { - font-size: 16px; - padding: 0; -} -.ui-btn-inline { - display: inline-block; - vertical-align: middle; - margin-right: .625em; -} -.ui-btn-icon-left { - padding-left: 2.5em; -} -.ui-btn-icon-right { - padding-right: 2.5em; -} -.ui-btn-icon-top { - padding-top: 2.5em; -} -.ui-btn-icon-bottom { - padding-bottom: 2.5em; -} -.ui-btn-icon-left:after, -.ui-btn-icon-right:after, -.ui-btn-icon-top:after, -.ui-btn-icon-bottom:after, -.ui-btn-icon-notext:after { - content: ""; - position: absolute; - display: block; - width: 22px; - height: 22px; -} -.ui-btn-icon-notext:after, -.ui-btn-icon-left:after, -.ui-btn-icon-right:after { - top: 50%; - margin-top: -11px; -} -.ui-btn-icon-left:after { - left: .5625em; -} -.ui-btn-icon-right:after { - right: .5625em; -} -.ui-mini.ui-btn-icon-left:after, -.ui-mini .ui-btn-icon-left:after { - left: .37em; -} -.ui-mini.ui-btn-icon-right:after, -.ui-mini .ui-btn-icon-right:after { - right: .37em; -} -.ui-btn-icon-notext:after, -.ui-btn-icon-top:after, -.ui-btn-icon-bottom:after { - left: 50%; - margin-left: -11px; -} -.ui-btn-icon-top:after { - top: .5625em; -} -.ui-btn-icon-bottom:after { - top: auto; - bottom: .5625em; -} -/* Buttons in header position classes */ -.ui-btn-left > [class*="ui-"], -.ui-btn-right > [class*="ui-"] { - margin: 0; -} -.ui-btn-left, -.ui-btn-right { - position: absolute; - top: .24em; -} -.ui-btn-left { - left: .4em; -} -.ui-btn-right { - right: .4em; -} -.ui-btn-icon-notext.ui-btn-left { - top: .3125em; - left: .3125em; -} -.ui-btn-icon-notext.ui-btn-right { - top: .3125em; - right: .3125em; -} - -/* Button elements */ -button.ui-btn, -.ui-controlgroup-controls button.ui-btn-icon-notext { - -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; - -webkit-appearance: none; - -moz-appearance: none; - width: 100%; -} -button.ui-btn-inline { - width: auto; -} -/* Firefox adds a 1px border in a button element. We negate this to make sure they have the same height as other buttons in controlgroups. */ -button.ui-btn::-moz-focus-inner { - border: 0; -} -button.ui-btn-icon-notext, -.ui-controlgroup-horizontal .ui-controlgroup-controls button.ui-btn { - -webkit-box-sizing: content-box; - -moz-box-sizing: content-box; - box-sizing: content-box; - width: 1.75em; -} - -/* Form labels */ -.ui-mobile label, -.ui-controlgroup-label { - display: block; - margin: 0 0 .4em; -} - -/* Accessible content hiding */ -/* ui-hide-label deprecated in 1.4. TODO: Remove in 1.5 */ -.ui-hide-label > label, -.ui-hide-label .ui-controlgroup-label, -.ui-hide-label .ui-rangeslider label, -.ui-hidden-accessible { - position: absolute !important; - height: 1px; - width: 1px; - overflow: hidden; - clip: rect(1px,1px,1px,1px); -} - -/* Used for hiding elements by the filterable widget. You can also use this class to hide list items or buttons in controlgroups; this ensures correct corner styling. */ -.ui-screen-hidden { - display: none !important; -} \ No newline at end of file diff --git a/dashboard-ui/thirdparty/jquerymobile-1.4.5/jquery.mobile.custom.theme.css b/dashboard-ui/thirdparty/jquerymobile-1.4.5/jquery.mobile.custom.theme.css index aee5d14c98..9c3d00bc2f 100644 --- a/dashboard-ui/thirdparty/jquerymobile-1.4.5/jquery.mobile.custom.theme.css +++ b/dashboard-ui/thirdparty/jquerymobile-1.4.5/jquery.mobile.custom.theme.css @@ -78,25 +78,6 @@ label.ui-btn { background-clip: padding-box; } -/* Shadow ------------------------------------------------------------------------------------------------------------*/ - -.ui-shadow { - -webkit-box-shadow: 0 1px 3px /*{global-box-shadow-size}*/ rgba(0,0,0,.15) /*{global-box-shadow-color}*/; - -moz-box-shadow: 0 1px 3px /*{global-box-shadow-size}*/ rgba(0,0,0,.15) /*{global-box-shadow-color}*/; - box-shadow: 0 1px 3px /*{global-box-shadow-size}*/ rgba(0,0,0,.15) /*{global-box-shadow-color}*/; -} -.ui-shadow-inset { - -webkit-box-shadow: inset 0 1px 3px /*{global-box-shadow-size}*/ rgba(0,0,0,.2) /*{global-box-shadow-color}*/; - -moz-box-shadow: inset 0 1px 3px /*{global-box-shadow-size}*/ rgba(0,0,0,.2) /*{global-box-shadow-color}*/; - box-shadow: inset 0 1px 3px /*{global-box-shadow-size}*/ rgba(0,0,0,.2) /*{global-box-shadow-color}*/; -} -.ui-overlay-shadow { - -webkit-box-shadow: 0 0 12px rgba(0,0,0,.6); - -moz-box-shadow: 0 0 12px rgba(0,0,0,.6); - box-shadow: 0 0 12px rgba(0,0,0,.6); -} - /* Icons -----------------------------------------------------------------------------------------------------------*/ @@ -130,14 +111,6 @@ html .ui-alt-icon .ui-radio-off:after { background-color: transparent; } -/* Icon shadow */ -.ui-shadow-icon.ui-btn:after, -.ui-shadow-icon .ui-btn:after { - -webkit-box-shadow: 0 1px 0 rgba(255,255,255,.3) /*{global-icon-shadow}*/; - -moz-box-shadow: 0 1px 0 rgba(255,255,255,.3) /*{global-icon-shadow}*/; - box-shadow: 0 1px 0 rgba(255,255,255,.3) /*{global-icon-shadow}*/; -} - /* Checkbox and radio */ .ui-btn.ui-checkbox-off:after, .ui-btn.ui-checkbox-on:after, @@ -303,24 +276,6 @@ html body .ui-group-theme-a .ui-radio-on:after, border-color: #3388cc /*{a-active-background-color}*/; } -/* Focus */ -.ui-page-theme-a .ui-btn:focus, -html .ui-bar-a .ui-btn:focus, -html .ui-body-a .ui-btn:focus, -html body .ui-group-theme-a .ui-btn:focus, -html head + body .ui-btn.ui-btn-a:focus, -/* Focus buttons and text inputs with div wrap */ -.ui-page-theme-a .ui-focus, -html .ui-bar-a .ui-focus, -html .ui-body-a .ui-focus, -html body .ui-group-theme-a .ui-focus, -html head + body .ui-btn-a.ui-focus, -html head + body .ui-body-a.ui-focus { - -webkit-box-shadow: 0 0 12px #3388cc /*{a-active-background-color}*/; - -moz-box-shadow: 0 0 12px #3388cc /*{a-active-background-color}*/; - box-shadow: 0 0 12px #3388cc /*{a-active-background-color}*/; -} - /* B -----------------------------------------------------------------------------------------------------------*/ @@ -435,20 +390,263 @@ html body .ui-group-theme-b .ui-radio-on:after, border-color: #22aadd /*{b-active-background-color}*/; } -/* Focus */ -.ui-page-theme-b .ui-btn:focus, -html .ui-bar-b .ui-btn:focus, -html .ui-body-b .ui-btn:focus, -html body .ui-group-theme-b .ui-btn:focus, -html head + body .ui-btn.ui-btn-b:focus, -/* Focus buttons and text inputs with div wrap */ -.ui-page-theme-b .ui-focus, -html .ui-bar-b .ui-focus, -html .ui-body-b .ui-focus, -html body .ui-group-theme-b .ui-focus, -html head + body .ui-btn-b.ui-focus, -html head + body .ui-body-b.ui-focus { - -webkit-box-shadow: 0 0 12px #22aadd /*{b-active-background-color}*/; - -moz-box-shadow: 0 0 12px #22aadd /*{b-active-background-color}*/; - box-shadow: 0 0 12px #22aadd /*{b-active-background-color}*/; +/* +* jQuery Mobile v1.4.5 +* http://jquerymobile.com +* +* Copyright 2010, 2014 jQuery Foundation, Inc. and other contributors +* Released under the MIT license. +* http://jquery.org/license +* +*/ + +.ui-mobile fieldset, +.ui-page { + padding: 0; + margin: 0; +} +.ui-mobile a img, +.ui-mobile fieldset { + border-width: 0; +} +/* Fixes for fieldset issues on IE10 and FF (see #6077) */ +.ui-mobile fieldset { + min-width: 0; +} +@-moz-document url-prefix() { + .ui-mobile fieldset { + display: table-column; + vertical-align: middle; + } +} + +/* Viewport */ +.ui-mobile-viewport { + margin: 0; + overflow-x: visible; + -webkit-text-size-adjust: 100%; + -ms-text-size-adjust:none; + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); +} +/* Issue #2066 */ +body.ui-mobile-viewport, +div.ui-mobile-viewport { + overflow-x: hidden; +} +/* "page" containers - full-screen views, one should always be in view post-pageload */ +.ui-mobile [data-role=page], +.ui-mobile [data-role=dialog], +.ui-page { + top: 0; + left: 0; + width: 100%; + min-height: 100%; + position: absolute; + display: none; + border: 0; +} + +/* On ios4, setting focus on the page element causes flashing during transitions when there is an outline, so we turn off outlines */ +.ui-page { + outline: none; +} +.ui-mobile .ui-page-active { + display: block; + overflow: visible; + overflow-x: hidden; +} +@media screen and (orientation: portrait) { + .ui-mobile .ui-page { + min-height: 420px; + } +} +@media screen and (orientation: landscape) { + .ui-mobile .ui-page { + min-height: 300px; + } +} + +/* Fouc */ +.ui-mobile-rendering > * { + visibility: hidden; +} + +/* Headers, content panels */ +.ui-bar, +.ui-body { + position: relative; + padding: .4em 1em; + overflow: hidden; + display: block; + clear: both; +} +.ui-bar h1, +.ui-bar h2, +.ui-bar h3, +.ui-bar h4, +.ui-bar h5, +.ui-bar h6 { + margin: 0; + padding: 0; + font-size: 1em; + display: inline-block; +} +.ui-content { + border-width: 0; + overflow: visible; + overflow-x: hidden; + padding: 1em; +} + +/* Buttons and icons */ +.ui-btn { + font-size: 16px; + margin: .5em 0; + padding: .7em 1em; + display: block; + position: relative; + text-align: center; + text-overflow: ellipsis; + overflow: hidden; + white-space: nowrap; + cursor: pointer; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} +.ui-btn-icon-notext { + padding: 0; + width: 1.75em; + height: 1.75em; + text-indent: -9999px; + white-space: nowrap !important; +} +.ui-mini { + font-size: 12.5px; +} +.ui-mini .ui-btn { + font-size: inherit; +} +.ui-mini.ui-btn-icon-notext, +.ui-mini .ui-btn-icon-notext { + font-size: 16px; + padding: 0; +} +.ui-btn-inline { + display: inline-block; + vertical-align: middle; + margin-right: .625em; +} +.ui-btn-icon-left { + padding-left: 2.5em; +} +.ui-btn-icon-right { + padding-right: 2.5em; +} +.ui-btn-icon-top { + padding-top: 2.5em; +} +.ui-btn-icon-bottom { + padding-bottom: 2.5em; +} +.ui-btn-icon-left:after, +.ui-btn-icon-right:after, +.ui-btn-icon-top:after, +.ui-btn-icon-bottom:after, +.ui-btn-icon-notext:after { + content: ""; + position: absolute; + display: block; + width: 22px; + height: 22px; +} +.ui-btn-icon-notext:after, +.ui-btn-icon-left:after, +.ui-btn-icon-right:after { + top: 50%; + margin-top: -11px; +} +.ui-btn-icon-left:after { + left: .5625em; +} +.ui-btn-icon-right:after { + right: .5625em; +} +.ui-mini.ui-btn-icon-left:after, +.ui-mini .ui-btn-icon-left:after { + left: .37em; +} +.ui-mini.ui-btn-icon-right:after, +.ui-mini .ui-btn-icon-right:after { + right: .37em; +} +.ui-btn-icon-notext:after, +.ui-btn-icon-top:after, +.ui-btn-icon-bottom:after { + left: 50%; + margin-left: -11px; +} +.ui-btn-icon-top:after { + top: .5625em; +} +.ui-btn-icon-bottom:after { + top: auto; + bottom: .5625em; +} +/* Buttons in header position classes */ +.ui-btn-left > [class*="ui-"], +.ui-btn-right > [class*="ui-"] { + margin: 0; +} +.ui-btn-left, +.ui-btn-right { + position: absolute; + top: .24em; +} +.ui-btn-left { + left: .4em; +} +.ui-btn-right { + right: .4em; +} +.ui-btn-icon-notext.ui-btn-left { + top: .3125em; + left: .3125em; +} +.ui-btn-icon-notext.ui-btn-right { + top: .3125em; + right: .3125em; +} + +/* Button elements */ +button.ui-btn, +.ui-controlgroup-controls button.ui-btn-icon-notext { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + -webkit-appearance: none; + -moz-appearance: none; + width: 100%; +} +button.ui-btn-inline { + width: auto; +} +/* Firefox adds a 1px border in a button element. We negate this to make sure they have the same height as other buttons in controlgroups. */ +button.ui-btn::-moz-focus-inner { + border: 0; +} +button.ui-btn-icon-notext, +.ui-controlgroup-horizontal .ui-controlgroup-controls button.ui-btn { + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + box-sizing: content-box; + width: 1.75em; +} + +/* Form labels */ +.ui-mobile label, +.ui-controlgroup-label { + display: block; + margin: 0 0 .4em; } \ No newline at end of file