Upstream version 10.39.225.0
[platform/framework/web/crosswalk.git] / src / third_party / polymer / components-chromium / core-menu / core-submenu-extracted.js
1
2
3   Polymer('core-submenu', {
4
5     publish: {
6       active: {value: false, reflect: true}
7     },
8
9     opened: false,
10
11     get items() {
12       return this.$.submenu.items;
13     },
14
15     hasItems: function() {
16       return !!this.items.length;
17     },
18
19     unselectAllItems: function() {
20       this.$.submenu.selected = null;
21       this.$.submenu.clearSelection();
22     },
23
24     activeChanged: function() {
25       if (this.hasItems()) {
26         this.opened = this.active;
27       }
28       if (!this.active) {
29         this.unselectAllItems();
30       }
31     },
32     
33     toggle: function() {
34       this.opened = !this.opened;
35     },
36
37     activate: function() {
38       if (this.hasItems() && this.active) {
39         this.toggle();
40         this.unselectAllItems();
41       }
42     }
43     
44   });
45