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

Layout Phase 2 #49122

Closed
14 tasks
timductive opened this issue Oct 23, 2019 · 8 comments
Closed
14 tasks

Layout Phase 2 #49122

timductive opened this issue Oct 23, 2019 · 8 comments
Labels
design enhancement New value added to drive a business result Feature:Canvas impact:high Addressing this issue will have a high level of impact on the quality/strength of our product. Meta Team:Presentation Presentation Team for Dashboard, Input Controls, and Canvas

Comments

@timductive
Copy link
Member

timductive commented Oct 23, 2019

This phase of the layout engine will add some key features and update/fix some previous issues.

Layout Engine

Layers

Next generation tools like Maps and Lens utilize the concept of layers and Canvas should as well. This will help with finding/selecting elements, grouping, manipulating, etc...

Fine-tuned controls

Canvas would benefit from more explicit and fine-tuned controls for how users can layout the page.

Layout UI

Layers

Fine-tuned controls

Right-click menu

Performance

I've taken a best-guess at performance work that is related to the layout engine.

@timductive timductive added Meta enhancement New value added to drive a business result Team:Presentation Presentation Team for Dashboard, Input Controls, and Canvas impact:high Addressing this issue will have a high level of impact on the quality/strength of our product. labels Oct 23, 2019
@elasticmachine
Copy link
Contributor

Pinging @elastic/kibana-canvas (Team:Canvas)

@clintandrewhall
Copy link
Contributor

clintandrewhall commented Oct 23, 2019

Some suggested additions:

  • Right-click menu as a standalone issue. We need to standardize the UI and API.
  • Work on Layer Selector should include/consider Element selection, as well, (e.g. selecting elements from a menu/list rather than on the page).

@ryankeairns
Copy link
Contributor

Design tools, such as Sketch, are a good reference point for how the UI could work:

Screenshot 2019-10-24 08 32 38

@timductive
Copy link
Member Author

Updated the issue to reflect @clintandrewhall's suggestions

@shaunmcgough
Copy link

++ @ryankeairns screenshot. We could have a greyed out lock that you just click when the element is highlight, and then in an accordion view be able to select multiple elements. Also, editing a single element in a group of selected or custom elements would be possible here.

@monfera
Copy link
Contributor

monfera commented Oct 31, 2019

Thanks @timductive, great collection!

These, on an initial look, don't seem directly related to the layout engine, ie. fixing or providing them don't appear to need (or solvable by) an aeroelastic code change, glad to discuss them one by one next week:
#34880
#23056
#23060
#23041
#32523
#32521
#28536
#30095

Maybe there are just varying definitions of the LE boundary, still it'd be useful to keep the placement and direct manipulation calculations (what I understand under LE - it's just calcs; no DOM involvement) separate from other UI affordances such as menus, context menus, DOM element capture, actual element insertion and update by React etc. (Having said this, it might make sense to have the concept of a "Layout UI" abstraction, because, if such drag&drop is needed elsewhere, it's nice to have a React component encapsulation for all the context menus, future layer/element manipulation side panels, keyboard shortcuts etc.- but currently, these things are not cleanly separated from unrelated menu, button etc. UI, not sure if @cqliu1 thinks it's even feasible to separate though)

For clarity, I'm adding a question mark in the original post, and also for these:

#23602 should be triaged as the issue isn't clear from the gif (which I filed :🦆🦆🦆:)
##33011 should also be triaged to see if there's still an issue; if so, glad to check if it comes from the layout engine

@timductive
Copy link
Member Author

Hey @monfera thanks for taking a look. I agree, what I will do is edit this issue to clearly indicate things that are the Layout Engine and things that are Layout UI and then we can discuss what the right abstractions are. I'll also take a look and re-triage the issues that you mentioned.

@timductive timductive changed the title Layout Engine Phase 2 Layout Phase 2 Oct 31, 2019
@ThomThomson
Copy link
Contributor

Closing this for the time being as we are currently not prioritizing Canvas layout updates.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
design enhancement New value added to drive a business result Feature:Canvas impact:high Addressing this issue will have a high level of impact on the quality/strength of our product. Meta Team:Presentation Presentation Team for Dashboard, Input Controls, and Canvas
Projects
None yet
Development

No branches or pull requests

8 participants