Skip to content

Commit 1a39db0

Browse files
committed
Spinner: deprecate spinner and button html extension points
1 parent c2224bf commit 1a39db0

File tree

1 file changed

+54
-20
lines changed

1 file changed

+54
-20
lines changed

ui/spinner.js

Lines changed: 54 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ function spinner_modifier( fn ) {
4444
};
4545
}
4646

47-
return $.widget( "ui.spinner", {
47+
$.widget( "ui.spinner", {
4848
version: "@VERSION",
4949
defaultElement: "<input>",
5050
widgetEventPrefix: "spin",
@@ -214,21 +214,33 @@ return $.widget( "ui.spinner", {
214214
"mouseleave .ui-spinner-button": "_stop"
215215
},
216216

217-
_draw: function() {
218-
var uiSpinner = this.uiSpinner = this.element
217+
// Support mobile enhanced option and make backcompat more sane
218+
_enhance: function() {
219+
this.uiSpinner = this.element
219220
.attr( "autocomplete", "off" )
220-
.wrap( this._uiSpinnerHtml() )
221+
.wrap( "<span>" )
221222
.parent()
223+
222224
// add buttons
223-
.append( this._buttonHtml() );
225+
.append( "" +
226+
"<a>" +
227+
"<span>&#9650;</span>" +
228+
"</a>" +
229+
"<a>" +
230+
"<span>&#9660;</span>" +
231+
"</a>"; );
232+
},
233+
234+
_draw: function() {
235+
this._enhance();
224236

225237
this._addClass( this.uiSpinner, "ui-spinner", "ui-widget ui-widget-content" );
226238
this._addClass( "ui-spinner-input" );
227239

228240
this.element.attr( "role", "spinbutton" );
229241

230242
// button bindings
231-
this.buttons = uiSpinner.children( "a" )
243+
this.buttons = this.uiSpinner.children( "a" )
232244
.attr( "tabIndex", -1 )
233245
.button();
234246

@@ -277,20 +289,6 @@ return $.widget( "ui.spinner", {
277289
return false;
278290
},
279291

280-
_uiSpinnerHtml: function() {
281-
return "<span>";
282-
},
283-
284-
_buttonHtml: function() {
285-
return "" +
286-
"<a>" +
287-
"<span>&#9650;</span>" +
288-
"</a>" +
289-
"<a>" +
290-
"<span>&#9660;</span>" +
291-
"</a>";
292-
},
293-
294292
_start: function( event ) {
295293
if ( !this.spinning && this._trigger( "start", event ) === false ) {
296294
return false;
@@ -533,4 +531,40 @@ return $.widget( "ui.spinner", {
533531
}
534532
} );
535533

534+
// DEPRECATED
535+
// TODO: switch return back to widget declaration at top of file when this is removed
536+
if ( $.uiBackCompat !== false ) {
537+
538+
// Backcompat for dialogClass option
539+
$.widget( "ui.spinner", $.ui.spinner, {
540+
_enhance: function(){
541+
var uiSpinner = this.uiSpinner = this.element
542+
.attr( "autocomplete", "off" )
543+
.wrap( this._uiSpinnerHtml() )
544+
.parent()
545+
546+
// Add buttons
547+
.append( this._buttonHtml() );
548+
549+
this.element.attr( "role", "spinbutton" );
550+
},
551+
_uiSpinnerHtml: function() {
552+
return "<span>";
553+
},
554+
555+
_buttonHtml: function() {
556+
return "" +
557+
"<a>" +
558+
"<span>&#9650;</span>" +
559+
"</a>" +
560+
"<a>" +
561+
"<span>&#9660;</span>" +
562+
"</a>";
563+
}
564+
} );
565+
}
566+
567+
return $.ui.spinner;
568+
569+
536570
} ) );

0 commit comments

Comments
 (0)