From b743e54c24eda96f1f204aec1f16cc646094eed6 Mon Sep 17 00:00:00 2001 From: Rich-Harris Date: Sun, 20 Nov 2016 12:56:13 -0500 Subject: [PATCH] autofocus --- compiler/generate/index.js | 5 +++++ test/compiler/autofocus/_config.js | 9 +++++++++ test/compiler/autofocus/main.svelte | 3 +++ 3 files changed, 17 insertions(+) create mode 100644 test/compiler/autofocus/_config.js create mode 100644 test/compiler/autofocus/main.svelte diff --git a/compiler/generate/index.js b/compiler/generate/index.js index 592bde2ebb..01996fc47c 100644 --- a/compiler/generate/index.js +++ b/compiler/generate/index.js @@ -132,6 +132,11 @@ export default function generate ( parsed, template ) { ${name}.setAttribute( '${attribute.name}', true ); ` ); } + + // special case – autofocus + if ( attribute.name === 'autofocus' ) { + initStatements.push( `${name}.focus();` ); + } } else if ( attribute.value.length === 1 ) { diff --git a/test/compiler/autofocus/_config.js b/test/compiler/autofocus/_config.js new file mode 100644 index 0000000000..d96d107362 --- /dev/null +++ b/test/compiler/autofocus/_config.js @@ -0,0 +1,9 @@ +import * as assert from 'assert'; + +export default { + html: '', + test ( component, target, window ) { + component.set({ visible: true }); + assert.equal( component.refs.input, window.document.activeElement ); + } +}; diff --git a/test/compiler/autofocus/main.svelte b/test/compiler/autofocus/main.svelte new file mode 100644 index 0000000000..9a114344ce --- /dev/null +++ b/test/compiler/autofocus/main.svelte @@ -0,0 +1,3 @@ +{{#if visible}} + +{{/if}}