mdbootstrap / bootstrap-hover-dropdown

An unofficial Bootstrap plugin to enable Bootstrap dropdowns to activate on hover and provide a nice user experience.
http://cameronspear.com/demos/bootstrap-hover-dropdown/
MIT License
1.26k stars 503 forks source link

v3.0 #111

Open CWSpear opened 9 years ago

CWSpear commented 9 years ago

Putting this here in a more prominent place than the Milestone note:

Version 3.0 will be a new plugin, built completely on tests, especially acceptance tests, since dealing with this plugin cross-device and browser is a very high priority and it's nearly impossible without automated testing.

We're introducing this as a major version so that we can clean up the code and optimize it. Historically, a good number of strange edge cases have been dealt with, but without tests, regressions are almost a certainty. Thus, with a major version, we can focus on what we need to, notify everyone of the risk of regressions best we can, and then hopefully fix any regressions with tests to back them up.

Other considerations (but not guarantees!):

That is of course on top of the highest priority: better handling for mobile, touch-enabled desktops and any other browser/device edge cases.

redavis commented 9 years ago

Not sure where you are at on this but figured I'd share my changes to this plugin. It does fix some of the existing issues I have found and contains a couple of considerations for version 3.

http://mediaflydesign.com/plugins/bs-hover.revised.js

1.Allows for parent URL to work when it's in an open state.

  1. Clicking anywhere inside of .dropdown-menu does not automatically close the dropdown.
  2. Hover intent functionality.
  3. "Better" touch support? This one as you know is a pain considering all the false positives for ontouchstart in the document and didn't want to introduce another library for detection. I added a one shot event listener for touchstart that later voids any mouse events. It's still to determined on how well it's working until it's been released into the wild.

Feel free to pick apart anything you may find useful.

CWSpear commented 9 years ago

Thank you for this!

So it seems like we are a little hung up... it appears as though the one thing we really need to test, can't be test with any current technology that we can find... and that's sort of blocking progress to 3.0.

We have some promising solutions, but we still don't have the means to thoroughly test them (automated or otherwise).