OLD | NEW |
---|---|
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 /** | 5 /** |
6 * @fileoverview Polymer element for displaying a bluetooth device in a list. | 6 * @fileoverview Polymer element for displaying a bluetooth device in a list. |
7 */ | 7 */ |
8 | 8 |
9 Polymer({ | 9 Polymer({ |
10 is: 'bluetooth-device-list-item', | 10 is: 'bluetooth-device-list-item', |
11 | 11 |
12 behaviors: [I18nBehavior], | 12 behaviors: [I18nBehavior], |
13 | 13 |
14 properties: { | 14 properties: { |
15 /** | 15 /** |
16 * The bluetooth device. | 16 * The bluetooth device. |
17 * @type {!chrome.bluetooth.Device} | 17 * @type {!chrome.bluetooth.Device} |
18 */ | 18 */ |
19 device: { | 19 device: { |
20 type: Object, | 20 type: Object, |
21 }, | 21 }, |
22 }, | 22 }, |
23 | 23 |
24 listeners: { | |
25 'keydown': 'onKeyDown_', | |
26 }, | |
27 | |
28 /** | |
29 * This is necessary, otherwise pressing enter will first trigger iron-list's | |
30 * keydown handler and intefere with icon-button's on-tap behavior. | |
31 * @param {!Event} event | |
32 * @private | |
33 */ | |
34 onKeyDown_: function(event) { | |
35 if (event.key == 'Enter' && | |
36 Polymer.dom(event).rootTarget == | |
37 this.$$('button[is="paper-icon-button-light"]')) { | |
38 event.stopPropagation(); | |
39 } | |
40 }, | |
dschuyler
2017/06/20 18:46:51
When we have a chance, I'd like to chat about whet
scottchen
2017/06/20 19:17:19
I think we might've talked about this before, but
stevenjb
2017/07/10 22:48:53
Can this be done more simply like:
<button ... on
scottchen
2017/07/12 19:12:49
Looks like yes we can! PTAL.
| |
41 | |
24 /** | 42 /** |
25 * @param {!Event} event | 43 * @param {!Event} event |
26 * @private | 44 * @private |
27 */ | 45 */ |
28 onMenuButtonTap_: function(event) { | 46 onMenuButtonTap_: function(event) { |
29 var button = /** @type {!HTMLElement} */ (event.target); | 47 var button = /** @type {!HTMLElement} */ (event.target); |
30 var menu = /** @type {!CrActionMenuElement} */ (this.$.dotsMenu); | 48 var menu = /** @type {!CrActionMenuElement} */ (this.$.dotsMenu); |
31 menu.showAt(button); | 49 menu.showAt(button); |
32 event.stopPropagation(); | 50 event.stopPropagation(); |
33 }, | 51 }, |
(...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
129 case 'tablet': | 147 case 'tablet': |
130 return 'settings:tablet'; | 148 return 'settings:tablet'; |
131 case 'mouse': | 149 case 'mouse': |
132 return 'settings:mouse'; | 150 return 'settings:mouse'; |
133 default: | 151 default: |
134 return device.connected ? | 152 return device.connected ? |
135 'settings:bluetooth-connected' : 'settings:bluetooth'; | 153 'settings:bluetooth-connected' : 'settings:bluetooth'; |
136 } | 154 } |
137 }, | 155 }, |
138 }); | 156 }); |
OLD | NEW |