mirror of
https://github.com/TryGhost/Ghost.git
synced 2024-11-30 21:40:39 +03:00
Do not add autofocus attribute unless set to focus
No Issue - Don't add the "autofocus" attribute to the input element unless the "focus" property is set to true.
This commit is contained in:
parent
aa4bcda52c
commit
db693b50cb
@ -5,16 +5,20 @@ var TrimFocusInput = Ember.TextField.extend({
|
||||
attributeBindings: ['autofocus'],
|
||||
|
||||
autofocus: Ember.computed(function () {
|
||||
return (device.ios()) ? false : 'autofocus';
|
||||
if (this.get('focus')) {
|
||||
return (device.ios()) ? false : 'autofocus';
|
||||
}
|
||||
|
||||
return false;
|
||||
}),
|
||||
|
||||
setFocus: function () {
|
||||
didInsertElement: function () {
|
||||
// This fix is required until Mobile Safari has reliable
|
||||
// autofocus, select() or focus() support
|
||||
if (this.focus && !device.ios()) {
|
||||
if (this.get('focus') && !device.ios()) {
|
||||
this.$().val(this.$().val()).focus();
|
||||
}
|
||||
}.on('didInsertElement'),
|
||||
},
|
||||
|
||||
focusOut: function () {
|
||||
var text = this.$().val();
|
||||
|
@ -15,4 +15,26 @@ describeComponent('gh-trim-focus-input', function () {
|
||||
component.$().focusout();
|
||||
expect(component.$().val()).to.equal('some random stuff');
|
||||
});
|
||||
|
||||
it('does not have the autofocus attribute if not set to focus', function () {
|
||||
var component = this.subject({
|
||||
value: 'some text',
|
||||
focus: false
|
||||
});
|
||||
|
||||
this.render();
|
||||
|
||||
expect(component.$().attr('autofocus')).to.not.be.ok;
|
||||
});
|
||||
|
||||
it('has the autofocus attribute if set to focus', function () {
|
||||
var component = this.subject({
|
||||
value: 'some text',
|
||||
focus: true
|
||||
});
|
||||
|
||||
this.render();
|
||||
|
||||
expect(component.$().attr('autofocus')).to.be.ok;
|
||||
});
|
||||
});
|
||||
|
Loading…
Reference in New Issue
Block a user