* Add dialog for creating books
* create empty book
* add localized constants
* add validation to dialog
* reset the create book command to original
* address pr comments
* change error message
* Init book toc manager in bookTreeView
* Reworking notebook action bar functionality and appearance.
* added separator
* Revised notebookActions for collapse, clear and trusted such that they can be implemented with a boolean set to T of F and show labels or shift them into tooltip for accessibility. Updated styles for select boxes. Added toolbar icons to common icon location. Split icon definition for use as masked or background-image.
* Completed styles for action icons: collapse, clear and trusted. Added theme colors. Simplified icon behavior styles.
* Made maskedIconClass optional. Added theme colors for toolbar icons, select box border and dropdown arrow. Experimenting with adding masked icon to pseudo element so I can pull out label text from icons.
* Added icons styles to handle masked SVG elements as pseudo element beside button text. Added icons using this method to respect the color theming system.
* Adjusted styles for the cell and run all icons in notebook toolbar.
* Prepped notebook toolbar with placeholder icon for Underline action. Implemented Underline action. Added custom --wip-- ButtonMenu control, a modified copy of DropDown.
* Revised colorRegistry and corresponding notebook styles. Removed unused code from new custom control: buttonMneu. Revised icon styles to create a dropdown arrow for buttonMenu.
* Added new icon for Underline action.
* Removed comment from needed markup.
* Replaced actionItemProvider with optional undefined per DropdownMenuActionViewItem constructor.
* Cleaned up new control, removing unneeded code and referencing what the class needs. Corrected style declaration for overriding input box padding. Removed unused notebook color styles. Scoped element styles to the toolbar so others outside the toolbar are not affected.
* Removed unnecessary !important from style override.
* Removed reference to unused color entry.
* Syntax cleanup.
* Put notebook toolbar improvements behind the preview flag. This involves some conditionals and CSS classes.
* Updated icon used for Manage Packages. Created and updated styles for notebook toolbar icon spacing. Modified notebook.component contributed actions so that the label text is shifted into the title attribute. Added new icon for Not Trusted toggle.
* Replaced SVG code for not-trusted icon.
* Addressed PR feedback: changed masked classname. Revised component and CSS accordingly. Removed unnecessary instance of in-preview class. Fixed code logic that assigns label text to tooltip on incoming contributed action
* add saved/untitled views to the books viewlet and provide save option to untitled
* addressed comments
* fixes after merge
* await on async methods
* reverted back
* await on promise
* added localize for books view names
* initial commit
* missed a file change
* changes to make the merges work part1
* fixes after merges 2
* getChildren to get all books
* chnages to address comments
* fsPromises instead of fs.readSync
* merged master
* replaced deprecated fs.exists async call with pathExists
* renamed method
Fixed #5236
- Change the icon to blue image. Existing icons are not deleted. We will use them when the icons are - - moved as the secondary actions.
- Change the font size to 13px
- Change the height to 21px
- Move Add actions to the left
initial support for Notebook extensibility. Fixes#3148 , Fixes#3382.
## Design notes
The extensibility patterns are modeled after the VSCode Document and Editor APIs but need to be different since core editor concepts are different - for example Notebooks have cells, and cells have contents rather than editors which have text lines.
Most importantly, a lot of the code is based on the MainThreadDocumentsAndEditors class, with some related classes (the MainThreadDocuments, and MainThreadEditors) brought in too. Given our current limitations I felt moving to add 3 full sets of extension host API classes was overkill so am currently using one. Will see if we need to change this in the future based on what we add in the additional APIs
## Limitations
The current implementation is limited to visible editors, rather than all documents in the workspace. We are not following the `openDocument` -> `showDocument` pattern, but instead just supporting `showDocument` directly.
## Changes in this PR
- Renamed existing APIs to make clear that they were about notebook contents, not about notebook behavior
- Added new APIs for querying notebook documents and editors
- Added new API for opening a notebook
- Moved `New Notebook` command to an extension, and added an `Open Notebook` command too
- Moved notebook feature flag to the extension
## Not covered in this PR
- Need to actually implement support for defining the provider and connection IDs for a notebook. this will be important to support New Notebook from a big data connection in Object Explorer
- Need to add APIs for adding cells, to support
- Need to implement the metadata for getting full notebook contents. I've only implemented to key APIs needed to make this all work.