We are in the final stages of deploying a custom WAB site, and during final testing, a bug was found in the Launchpad Theme. During testing, it was noted that when you use the application, opening and closing docked widgets becomes slower and eventually significantly lags the application. A browsers refresh clears the issue but reoccurs with continued use. We use WAB v2.23 and have confirmed that the issue occurs in the default configuration from a fresh download.
While monitoring the application, it was found that each time a docked widget is closed, either from the AnchorBarController or the close widget button, the _onNodeClick event is fired an additional time. For example, the first time a widget is closed, the event fires once, the second time the event twice, etc. If you open another widget, the same occurs starting at once the first time it is opened and incrementing after that.
The issue can be demonstrated by placing a counsel.log at line 168 of the setOpened function of the BaseIconItems.js script in the Launchpad Theme, AnchorBarController widget.
setOpened: function(value){
console.log("BaseIconItem.setOpened")
// console.trace()
if(value){
if(this.iconItemStatus){
domClass.add(this.iconItemStatus, 'selected');
}
if(this.iconItemNode){
domClass.add(this.iconItemNode, 'selected');
}
this.isOpen = true;
}else{
if(this.iconItemStatus){
domClass.remove(this.iconItemStatus, 'selected');
}
if(this.iconItemNode){
domClass.remove(this.iconItemNode, 'selected');
}
this.isOpen = false;
this.panelIndex = -1;
}
},
Below is a console.trace() from the setOpened function on the first time closing widget button in the AnchorBarController.

We were planning on releasing our new website this week, and any help would be appreciated. I am NOT a developer and only know enough JavaScript to get myself into trouble. @DerekLaw or @RobertScheitlin__GISP any ideas or suggestions?
Thanks.