1 <!-- 2 @license 3 Copyright (c) 2015 The Polymer Project Authors. All rights reserved. 4 This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt 5 The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt 6 The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt 7 Code distributed by Google as part of the polymer project is also 8 subject 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="../iron-behaviors/iron-button-state.html"> 13 <link rel="import" href="paper-ripple-behavior.html"> 14 15 <script> 16 17 /** 18 * `Polymer.PaperInkyFocusBehavior` implements a ripple when the element has keyboard focus. 19 * 20 * @polymerBehavior Polymer.PaperInkyFocusBehavior 21 */ 22 Polymer.PaperInkyFocusBehaviorImpl = { 23 24 observers: [ 25 '_focusedChanged(receivedFocusFromKeyboard)' 26 ], 27 28 _focusedChanged: function(receivedFocusFromKeyboard) { 29 if (receivedFocusFromKeyboard) { 30 this.ensureRipple(); 31 } 32 if (this.hasRipple()) { 33 this._ripple.holdDown = receivedFocusFromKeyboard; 34 } 35 }, 36 37 _createRipple: function() { 38 var ripple = Polymer.PaperRippleBehavior._createRipple(); 39 ripple.id = 'ink'; 40 ripple.setAttribute('center', ''); 41 ripple.classList.add('circle'); 42 return ripple; 43 } 44 45 }; 46 47 /** @polymerBehavior Polymer.PaperInkyFocusBehavior */ 48 Polymer.PaperInkyFocusBehavior = [ 49 Polymer.IronButtonState, 50 Polymer.IronControlState, 51 Polymer.PaperRippleBehavior, 52 Polymer.PaperInkyFocusBehaviorImpl 53 ]; 54 55 </script> 56