fix auto width and height of spin button component

refs #5652
- changes the spin-button so that it only sets the size when the button is submitting instead of all of the time
This commit is contained in:
Austin Burdine 2015-08-19 23:39:07 -04:00
parent ae695a3e8e
commit a7ed98cc3e
2 changed files with 14 additions and 18 deletions

View File

@ -4,6 +4,7 @@ export default Ember.Component.extend({
tagName: 'button',
buttonText: '',
submitting: false,
showSpinner: false,
autoWidth: true,
// Disable Button when isLoading equals true
@ -20,19 +21,14 @@ export default Ember.Component.extend({
return true;
},
setSize: function () {
if (!this.get('submitting') && this.get('autoWidth')) {
// this exists so that the spinner doesn't change the size of the button
this.$().width(this.$().width()); // sets width of button
this.$().height(this.$().height()); // sets height of button
setSize: Ember.observer('submitting', function () {
if (this.get('submitting') && this.get('autoWidth')) {
this.$().width(this.$().width());
this.$().height(this.$().height());
} else {
this.$().width('');
this.$().height('');
}
},
width: Ember.observer('buttonText', 'autoWidth', function () {
this.setSize();
}),
didInsertElement: function () {
this.setSize();
}
this.set('showSpinner', this.get('submitting'));
})
});

View File

@ -1,9 +1,9 @@
{{#unless submitting}}
{{#if showSpinner}}
<span class="spinner"></span>
{{else}}
{{#if buttonText}}
{{buttonText}}
{{else}}
{{{yield}}}
{{/if}}
{{else}}
<span class="spinner"></span>
{{/unless}}
{{/if}}