Page History
...
Idea | Pros | Cons | ||
---|---|---|---|---|
ActionPopup definition | Similar to the Actionbar definition. |
|
| |
Extend Actionbar definition | An ActionPopup definition that extends the Actionbar definition instead of totally redefining it. |
|
| |
Action definition | An additional flag in each action that marks that it should show up in the popup
|
|
| |
Something else?? |
...
Where is the right place to instantiate the ActionPopup
Questions
Probably define an actionbar for this case.
Parts
- Invokation
- Right click on workbench row invokes ActionPopup:
- BrowserSubApp.registerSubAppEventsHandlers()
- Click on a button in FileUploadField can invoke ActionPopup - probably needs to point to which one it wants.
- Shell has a method - or UIContext, so you can get it from anywhere? openActionPopup("name") (could take the name of an actionpopup or of an actionbar)
- Right click on workbench row invokes ActionPopup:
UI
ActionPopup should float above all UI.
ActionPopup should be positioned at mouse (and fully onscreen)
It should go away if
Click on menu Item
or click mouse (It could display a modal curtain while it is open)
or timeout
or switch apps, or subapps, or open an Overlay, or open a shellapp,
Does Vaadin have concept of foccused item - could this help us know when the popup should close?
Generalize UI menu
Actionbar becomes ActionMenu
Css must get tuned.
Actionbar uses ActionMenu
Actionpopup uses ActionMenu
ActionPopup takes an ActionMenu definition
can be build from configuration
can be construct manually.
Right Clicking
Tasks
Implement a host for the ActionPopup
Shell has a server component which is the actionpopup? You can hide and show it + position it.
- TreeViewImpl.addItemClickListener > presenterOnRightClick()
- TreeViewImpl.presenterOnRightClick() >
- ContentPresenter.onRightClick() > fires ItemRightClickedEvent() on SubAppEventBus.
- BrowserSubApp