Nested mdMenu broken by recent PR #11427
Nested mdMenu now behaves weirdly with mouse interactions (see videos at the end and codepen links below for repro). With some investigation I was able to pinpoint the issue to be a recent change in InterimElement's hide() function. This change was made with PR #11427, merged into master 20 days ago (around Oct 19th).
Apparently the PR was trying to fix another issue but unfortunately it brings a new issue. It's related to how nested mdMenu dismisses 2 level items when user hover on first level items. I can't see how this works yet (mdMenu and mdMenuBar are complex components/services), but I've proven that this caused the exact issue by having side by side controlled experiment.
Since it's quite common to have nested menu in AngularJS and it significantly downgrade the usability of websites, I recommend this as a high priority issue.
Note the links of AngularMaterial I used in the demos are
It's possible that the behavior changes when the CDNs update the sources. In that case you can download the file and manually replace the hide(reason, options) function. You can also find video recording at the end
Nested mdMenu should work reliably with dimiss/hover/develop/close as it was before.
Nested mdMenu stops working when used several times. It became unusable as it randomly dismisses itself when moving the mouse.
Any version after PR #11427 , commit: f616b25.
@gameboy1024 Thank you for reporting it.
I made some changes to my fix.
Please check the CodePens:
@Splaktar Please check this one. I have a fix ready as you can see above. Should I create another PR as #11427 is already closed?
Thanks @marosoft for the quick fix, I can confirm that it works as intended with your demo.
@gameboy1024 thank you for testing against master and reporting this before 1.1.11 was released!
@marosoft yes, please create a new PR. Thanks for looking at this!