FIX: select-kit perf and positioning improvements (#7093)
This commit is contained in:
parent
dc4001370c
commit
2e881adb6e
|
@ -331,20 +331,31 @@ export default SelectKitComponent.extend({
|
|||
|
||||
deselect(rowComputedContentItems) {
|
||||
this.willDeselect(rowComputedContentItems);
|
||||
|
||||
rowComputedContentItems = makeArray(rowComputedContentItems);
|
||||
const generatedComputedContents = this._filterRemovableComputedContents(
|
||||
makeArray(rowComputedContentItems)
|
||||
);
|
||||
this.set("highlighted", null);
|
||||
this.set("highlightedSelection", []);
|
||||
this.setProperties({ highlighted: null, highlightedSelection: [] });
|
||||
this.get("computedValues").removeObjects(
|
||||
rowComputedContentItems.map(r => r.value)
|
||||
);
|
||||
this.get("computedContent").removeObjects(generatedComputedContents);
|
||||
run.next(() => this.mutateAttributes());
|
||||
run.schedule("afterRender", () => {
|
||||
this.didDeselect(rowComputedContentItems);
|
||||
this.autoHighlight();
|
||||
this.get("computedContent").removeObjects([
|
||||
...rowComputedContentItems,
|
||||
...generatedComputedContents
|
||||
]);
|
||||
|
||||
run.next(() => {
|
||||
this.mutateAttributes();
|
||||
|
||||
run.schedule("afterRender", () => {
|
||||
this.didDeselect(rowComputedContentItems);
|
||||
this.autoHighlight();
|
||||
|
||||
if (!this.isDestroying && !this.isDestroyed) {
|
||||
this._positionWrapper();
|
||||
}
|
||||
});
|
||||
});
|
||||
},
|
||||
|
||||
|
|
|
@ -116,6 +116,7 @@ export default Ember.Mixin.create({
|
|||
|
||||
expand() {
|
||||
if (this.get("isExpanded")) return;
|
||||
|
||||
this.setProperties({
|
||||
isExpanded: true,
|
||||
renderedBodyOnce: true,
|
||||
|
@ -135,6 +136,8 @@ export default Ember.Mixin.create({
|
|||
},
|
||||
|
||||
collapse() {
|
||||
if (!this.get("isExpanded")) return;
|
||||
|
||||
this.set("isExpanded", false);
|
||||
|
||||
Ember.run.next(() => {
|
||||
|
|
Loading…
Reference in New Issue