Blame view

bower_components/paper-behaviors/paper-button-behavior.html 2.77 KB
73bcce88   luigser   COMPONENTS
1
2
3
4
5
6
7
8
9
10
11
12
  <!--
  @license
  Copyright (c) 2015 The Polymer Project Authors. All rights reserved.
  This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt
  The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt
  The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt
  Code distributed by Google as part of the polymer project is also
  subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
  -->
  
  <link rel="import" href="../polymer/polymer.html">
  <link rel="import" href="../iron-behaviors/iron-button-state.html">
eb240478   Luigi Serra   public room cards...
13
  <link rel="import" href="paper-ripple-behavior.html">
73bcce88   luigser   COMPONENTS
14
15
16
  
  <script>
  
eb240478   Luigi Serra   public room cards...
17
    /** @polymerBehavior Polymer.PaperButtonBehavior */
73bcce88   luigser   COMPONENTS
18
19
20
21
    Polymer.PaperButtonBehaviorImpl = {
  
      properties: {
  
eb240478   Luigi Serra   public room cards...
22
23
24
25
26
27
28
29
30
31
32
33
34
        /**
         * The z-depth of this element, from 0-5. Setting to 0 will remove the
         * shadow, and each increasing number greater than 0 will be "deeper"
         * than the last.
         *
         * @attribute elevation
         * @type number
         * @default 1
         */
        elevation: {
          type: Number,
          reflectToAttribute: true,
          readOnly: true
73bcce88   luigser   COMPONENTS
35
36
37
38
39
        }
  
      },
  
      observers: [
eb240478   Luigi Serra   public room cards...
40
41
        '_calculateElevation(focused, disabled, active, pressed, receivedFocusFromKeyboard)',
        '_computeKeyboardClass(receivedFocusFromKeyboard)'
73bcce88   luigser   COMPONENTS
42
43
44
45
      ],
  
      hostAttributes: {
        role: 'button',
eb240478   Luigi Serra   public room cards...
46
47
        tabindex: '0',
        animated: true
73bcce88   luigser   COMPONENTS
48
49
50
51
52
53
54
55
56
57
58
      },
  
      _calculateElevation: function() {
        var e = 1;
        if (this.disabled) {
          e = 0;
        } else if (this.active || this.pressed) {
          e = 4;
        } else if (this.receivedFocusFromKeyboard) {
          e = 3;
        }
eb240478   Luigi Serra   public room cards...
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
        this._setElevation(e);
      },
  
      _computeKeyboardClass: function(receivedFocusFromKeyboard) {
        this.classList.toggle('keyboard-focus', receivedFocusFromKeyboard);
      },
  
      /**
       * In addition to `IronButtonState` behavior, when space key goes down,
       * create a ripple down effect.
       *
       * @param {!KeyboardEvent} event .
       */
      _spaceKeyDownHandler: function(event) {
        Polymer.IronButtonStateImpl._spaceKeyDownHandler.call(this, event);
        if (this.hasRipple()) {
          this._ripple.uiDownAction();
        }
      },
  
      /**
       * In addition to `IronButtonState` behavior, when space key goes up,
       * create a ripple up effect.
       *
       * @param {!KeyboardEvent} event .
       */
      _spaceKeyUpHandler: function(event) {
        Polymer.IronButtonStateImpl._spaceKeyUpHandler.call(this, event);
        if (this.hasRipple()) {
          this._ripple.uiUpAction();
        }
73bcce88   luigser   COMPONENTS
90
      }
eb240478   Luigi Serra   public room cards...
91
  
73bcce88   luigser   COMPONENTS
92
93
94
95
96
97
    };
  
    /** @polymerBehavior */
    Polymer.PaperButtonBehavior = [
      Polymer.IronButtonState,
      Polymer.IronControlState,
eb240478   Luigi Serra   public room cards...
98
      Polymer.PaperRippleBehavior,
73bcce88   luigser   COMPONENTS
99
100
101
102
      Polymer.PaperButtonBehaviorImpl
    ];
  
  </script>