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

higher-level zoom features #101

Open
gordonwoodhull opened this issue Jan 2, 2019 · 2 comments
Open

higher-level zoom features #101

gordonwoodhull opened this issue Jan 2, 2019 · 2 comments

Comments

@gordonwoodhull
Copy link
Contributor

Splitting a bullet from #100 "pan/resize/zoom defaults" into its own issue.

It seems like zoom is more complicated than just one set "strategy" - you want one behavior for the first display, which is usually but not always the render (sigh), and even after that it may be a little more complicated.

fitStrategy 'zoom' is a stupid name; it should be bring-in-bounds or something.

What's usually wanted is

  • fit once, stretching the least of vertical or horizontal ('default')
  • but if that's more than the max zoom, align top left or optionally center
  • after that, respect the user's zoom except bring things in bounds, and also bring things in bounds when the layout changes
  • alternately, the client may want to zoom to fit on any change to the data, but that's kind of disruptive (unless mouse zooming is entirely disabled?)
@gordonwoodhull
Copy link
Contributor Author

We can keep it all configurable like it is now, but there are probably only 2-3 cases which almost everyone will want. E.g. maybe it's just "zoom once and then leave it to the user but bring things in bounds" or "always zoom and don't give the user any control"

@gordonwoodhull
Copy link
Contributor Author

gordonwoodhull commented Apr 11, 2019

Render should cause "zoom once", and the client should be able to invoke "zoom once" for the next redraw when some action occurs, like a change of filters.

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

1 participant