FIX: optimize collapse/expand select-kit codepath (#6818)

FIX: optimize collapse/expand select-kit codepath (#6818)

diff --git a/app/assets/javascripts/select-kit/mixins/dom-helpers.js.es6 b/app/assets/javascripts/select-kit/mixins/dom-helpers.js.es6
index edfd300..7d2c247 100644
--- a/app/assets/javascripts/select-kit/mixins/dom-helpers.js.es6
+++ b/app/assets/javascripts/select-kit/mixins/dom-helpers.js.es6
@@ -63,11 +63,6 @@ export default Ember.Mixin.create({
     return this.$(this.filterInputSelector);
   },
 
-  @on("didRender")
-  _schedulePositionRendering() {
-    Ember.run.debounce(this, this._adjustPosition, 50, true);
-  },
-
   _adjustPosition() {
     this._applyDirection();
     this._applyFixedPosition();
@@ -128,15 +123,27 @@ export default Ember.Mixin.create({
     });
     this.focusFilterOrHeader();
     this.autoHighlight();
-    this._boundaryActionHandler("onExpand", this);
+
+    Ember.run.next(() => {
+      this._boundaryActionHandler("onExpand", this);
+      Ember.run.schedule("afterRender", () => {
+        if (!this.isDestroying && !this.isDestroyed) {
+          this._adjustPosition();
+        }
+      });
+    });
   },
 
   collapse() {
     this.set("isExpanded", false);
 
     Ember.run.next(() => {
-      Ember.run.schedule("afterRender", () => this._removeFixedPosition());
       this._boundaryActionHandler("onCollapse", this);
+      Ember.run.schedule("afterRender", () => {
+        if (!this.isDestroying && !this.isDestroyed) {
+          this._removeFixedPosition();
+        }
+      });
     });
   },
 
diff --git a/app/assets/stylesheets/common/select-kit/select-kit.scss b/app/assets/stylesheets/common/select-kit/select-kit.scss
index f70e9c9..a1a9a2b 100644
--- a/app/assets/stylesheets/common/select-kit/select-kit.scss
+++ b/app/assets/stylesheets/common/select-kit/select-kit.scss
@@ -24,6 +24,8 @@
     z-index: z("dropdown");
 
     .select-kit-body {
+      -webkit-animation: fadein 0.25s;
+      animation: fadein 0.25s;
       display: flex;
       flex-direction: column;
       left: 0;

GitHub
sha: 942114b3