Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v3.0 #111

Open
CWSpear opened this issue Apr 28, 2015 · 2 comments
Open

v3.0 #111

CWSpear opened this issue Apr 28, 2015 · 2 comments
Milestone

Comments

@CWSpear
Copy link
Collaborator

CWSpear commented Apr 28, 2015

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!):

  • support of hover intent
  • animations (hooks? css?)
  • keeping the code base lean
  • a way to handle clicking parent nav items (high requested feature. easy to implement without this plugin, but similarly should be with to implement with this plugin)
  • source code can utilize es6 (contributors are already low, so I'm not too worried about this being a gate. plus valid es5 is valid es6)
  • nested dropdowns?

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

@CWSpear CWSpear added this to the v3.0 milestone Apr 28, 2015
@redavis
Copy link
Contributor

redavis commented Aug 13, 2015

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.
2. Clicking anywhere inside of .dropdown-menu does not automatically close the dropdown.
3. Hover intent functionality.
4. "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
Copy link
Collaborator Author

CWSpear commented Aug 13, 2015

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).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants