1
0
Fork 0
mirror of https://github.com/documize/community.git synced 2025-07-19 13:19:43 +02:00

Use tether service in dropdown menu

This commit is contained in:
zinyando 2016-07-19 18:14:53 +02:00
parent fe1e457d96
commit 4a5efd2697

View file

@ -1,11 +1,11 @@
// Copyright 2016 Documize Inc. <legal@documize.com>. All rights reserved.
//
// This software (Documize Community Edition) is licensed under
// This software (Documize Community Edition) is licensed under
// GNU AGPL v3 http://www.gnu.org/licenses/agpl-3.0.en.html
//
// You can operate outside the AGPL restrictions by purchasing
// Documize Enterprise Edition and obtaining a commercial license
// by contacting <sales@documize.com>.
// by contacting <sales@documize.com>.
//
// https://documize.com
@ -13,40 +13,44 @@ import Ember from 'ember';
import stringUtil from '../utils/string';
export default Ember.Component.extend({
target: null,
open: "click",
position: 'bottom right',
contentId: "",
drop: null,
target: null,
open: "click",
position: 'bottom right',
contentId: "",
drop: null,
tether: Ember.inject.service(),
didReceiveAttrs() {
this.set("contentId", 'dropdown-menu-' + stringUtil.makeId(10));
didReceiveAttrs() {
this.set("contentId", 'dropdown-menu-' + stringUtil.makeId(10));
// if (this.session.get('isMobile')) {
// this.set('open', "click");
// }
},
// if (this.session.get('isMobile')) {
// this.set('open', "click");
// }
},
didInsertElement() {
this._super(...arguments);
let self = this;
didInsertElement() {
this._super(...arguments);
let self = this;
let drop = new Drop({
target: document.getElementById(self.get('target')),
content: self.$(".dropdown-menu")[0],
classes: 'drop-theme-menu',
position: self.get('position'),
openOn: self.get('open'),
tetherOptions: {
offset: "5px 0",
targetOffset: "10px 0"
}
});
let drop = this.get('tether').createDrop({
target: document.getElementById(self.get('target')),
content: self.$(".dropdown-menu")[0],
classes: 'drop-theme-menu',
position: self.get('position'),
openOn: self.get('open'),
tetherOptions: {
offset: "5px 0",
targetOffset: "10px 0"
}
});
self.set('drop', drop);
},
self.set('drop', drop);
},
willDestroyElement() {
this.get('drop').destroy();
}
});
willDestroyElement() {
let drop = this.get('drop');
if (drop) {
drop.destroy();
}
}
});