Allow Plugins to Customize All Context Menus

Use case or problem

As a developer I would like to be able to extend the context menu that appears when someone right-clicks on an element (e.g. text in editor mode, a rendered callout, text in reader mode) so that I can write plugins which add additional options to these menus (e.g. to copy that block, copy a link to that block, copy the contents of a selected link, etc.)

Proposed solution

Today we can extend the content menu by subscribing to the editor-menu event, but this only works in editing/live-preview mode, and does not work when the user right-clicks on a rendered callout.

I propose that similar events be exposed for the other right-click menus.

Current workaround (optional)

There is no workaround for the reading view.

For rendered callouts, one must first edit the callout so it appears as markdown.

Related feature requests (optional)

This would help with the following core requests (or allow them to be addressed via plugins):

This would enable the following plugin requests:

moved to developers and api