1<!-- 2@license 3Copyright (c) 2015 The Polymer Project Authors. All rights reserved. 4This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt 5The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt 6The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt 7Code distributed by Google as part of the polymer project is also 8subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt 9--> 10 11<link rel="import" href="../../polymer/polymer.html"> 12<link rel="import" href="../neon-animation-behavior.html"> 13<link rel="import" href="../web-animations.html"> 14 15<!-- 16`<opaque-animation>` makes an element `opacity:1` for the duration of the animation. Used to prevent 17webkit/safari from drawing a frame before an animation for elements that animate from display:none. 18--> 19 20<script> 21 22 Polymer({ 23 24 is: 'opaque-animation', 25 26 behaviors: [ 27 Polymer.NeonAnimationBehavior 28 ], 29 30 configure: function(config) { 31 var node = config.node; 32 this._effect = new KeyframeEffect(node, [ 33 {'opacity': '1'}, 34 {'opacity': '1'} 35 ], this.timingFromConfig(config)); 36 node.style.opacity = '0'; 37 return this._effect; 38 }, 39 40 complete: function(config) { 41 config.node.style.opacity = ''; 42 } 43 44 }); 45 46</script> 47