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

ViewManager Enhancements #3854

Open
9 of 24 tasks
ghsolomon opened this issue Dec 16, 2024 · 2 comments
Open
9 of 24 tasks

ViewManager Enhancements #3854

ghsolomon opened this issue Dec 16, 2024 · 2 comments
Labels

Comments

@ghsolomon
Copy link
Contributor

ghsolomon commented Dec 16, 2024

Immediate TODO

  • Omit "Shared" when disabled (Tom PR)
  • Add option to (all around) disable global views, drop out of UI
  • Pinned view state should be persisted in a similar manner as views so they are refreshed at the same time.
    • Add VMM.persistPendingValue, with default to persist to sessionStorage
    • Pinned view selection, last selection persisted to new "metadata blob" for the user
    • Support new VMM config instance|key|name (?) to differentiate between multiple copies of VMM instantiated against the same viewType
  • When deleting a view that is the active view, we should auto-select default view. Currently the deleted view stays in place.
  • Auto-save menu option does not disable when global view selected if already on/enabled
  • Ensure menu is closed when popover is no longer rendered. Currently, if you have the menu open and change tabs, it's possible to end up with an orphaned menu floating on the screen (although not consistently, for some reason).

Near-term TODO

  • Remove lastUpdated from mgr dialog grid - use grid for names/pin action only
  • Add pre-validation to avoid name collisions when promoting views to global
  • Refresh views each time menu is opened
    • Replaces the in-menu refresh
  • Add ability to pin / unpin multiple views at once
  • Add (pretty) tooltip to viewManager button with owner, group, description
  • Inline explanation in menu as to why autosave is disabled (this is a global/shared)
  • Make ViewManagerModel.api private. Promote updateViewAsync and makeViewGlobal top-level method son ViewManagerModel
  • Create grid Context Menu version of View Manager menu
  • Create alternate UI in Toolbox - eg quick-pick button bar to show another subset of user-selected views

Nice to Have / Possible Future

  • Option within manager dialog to save a copy of a selected view
  • Make visibility of save button a user-driven option
  • Warn within mgr on sel change if there are unsaved changes to prev view
  • Allow custom ordering of pinned views
  • Promote Groups to their own object / add ability to share an entire folder
    • Use tree grid in mgr dialog so group rows could be selected
    • An initial much cheaper version of this would be to support bulk rename of groups via multi-select
  • Support ViewInfo.appData to allow app-specific extra data to be stored in a view

Unclear if we want this

  • Expose ability to customize button text for "Pinning" / "Unpinning"
    • I am wary of creating different language around this + we use pin icon - atm
  • Expose ability to customize descriptive text in manager
    • Referring to the inline help text? I would prefer for that to remain standardized -atm
  • Consider renaming "Activate + Close" button. Possibly "Load"?
    • I would say the current text is more clear - atm
@TomTirapani
Copy link
Member

If I may suggest another item for this list... we should automatically close the menu if the route changes. Currently, if you have the menu open and change tabs, it's possible to end up with an orphaned menu floating on the screen (although not consistently, for some reason).

@ghsolomon
Copy link
Contributor Author

Well that's certainly not good! Adding to the list, though maybe something worth looking at with popovers in general.

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

No branches or pull requests

2 participants