When creating page shortcut, Editor has to open setting tab, then click Manage link on shortcut property and then find a destination page in tree. So when he found a target page in Navigation Pane, then to create a shortcut he has to find it once again in the dialog. I prepared a functionality of creating shortcuts using D&D directly from Navigation Pane.


The final effect should look like:
page shortcut

To add D&D feature to shortcut property I extended default ShortcutEditor widget and added _DndStateMixin mixin. Next I implemented methods from mixin (canAccept, _onDndStart, _onDndCancel, _onDndDrop and onDropData). The acceptedTypes are not hardcoded but they came from metadata of the contentShortcutLink property (this.metadata.properties[3].settings.allowedTypes).

When moving content over property, the drag item is highlighted.

In onDropData method, the shortcut property value is set to “Shortcut to another content item” (pageShortcutType = 1) and contentShortcutLink property is set to target URL.
After clicking “Manage” link, the Type and Internal Shortcusts are preselected:

The new property editor (DroppableShortcutBlockEditorDescriptor) has to be registered on the server. It’s done using InitializationModule.