Adds enhanced security settings for the markdown preview. The new flow disable all scripts within the preview itself. Users can enable scripts on a per workspace basis.
When a markdown document that uses scripts is loaded, a warning is shown inside the document itself. This warning triggers a new security selector quick pick which allows users to enable or disable enahanced security in the workspace.
**Bug**
When refreshing a webview, a slight flicker can sometime be seen. This is especially noticable when using the markdown preview.
**Fix**
Instead of replacing the content of the iframe for refresh, create a new iframe with the new content and do a swap to update.
Adds an initial implementation of scroll synrconization from the markdown preview to the editor. When the preview is scrolled, automatically scrolls the editor to reveal the same location.
This required adding a new supported reveal type `AtTop` in our API. This is already supported and used internally, but not really exposed in the public apis (except for the `revealLine` command).
* Adds command to post a message to an html preview
**Bug**
There is currently no easy way to communicate with an html preview document after the preview has been created.
**Fix**
Adds a command called `vscode.htmlPreview.postMessage` to post a message to a visible html preview. This message will only be posted if the target preview is visible.
Inside the preview, the event is recieved using the standard dom event:
* Remove logging
* proto
Continue proto
* clean up rendering
* Gate prototype
* Fix gating
* Remove public command
* Change setting name
* Added current position indicator
* Reveal center