Page History
Specifications
Related
http://wiki.magnolia-cms.com/display/DEV/Concept+-+Action+availability+and+access+control
What is the definition for an Action Popup?
Overview
An ActionPopup is similar to an Actionbar in that it is a vertical list of actions with the same appearance.
An ActionPopup is used in the following cases:
- Right click on a an item in a tree, list, thumbnail view.
- Here the actions will be a limited subset of the actions in the Actionbar for the browser subapp. (Usually less then 5)
- Click on a "more actions" button - a little icon that shows up in the FileUploadField for example.
- Here the actions are not
Consider that in the case of a browser view - the actionpopup needs to be defined to handle what kind of item is clicked on - nodeType, is it a property, etc.
Options
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?? |
How to display it in the UI?
Can we leverage existing code?
Vaadin Popup - http://demo.vaadin.com/sampler/#ui/structure/popup-view
Vaadin Addon - https://vaadin.com/directory#addon/contextmenu:vaadin
Generic menu
Could we extract a generic menu out of the actionbar that could be used in actionbar and in actionpopup? (section)
What about in cases where we need the popup - but there is no regular actionbar?
Where is the right place to instantiate the ActionPopup
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
- TreeViewImpl.addItemClickListener > presenterOnRightClick()
- TreeViewImpl.presenterOnRightClick() >
- ContentPresenter.onRightClick() > fires ItemRightClickedEvent() on SubAppEventBus.
- BrowserSubApp