Commit Graph

469 Commits

Author SHA1 Message Date
Cory Rivera
6b535b7945 Dispose underlying text model when disposing notebook editor model (#19955) 2022-07-08 11:23:50 -07:00
Lucy Zhang
2e2fcbe5fc Add telemetry for WYSIWYG (#19908)
* add telemetry for wysiwyg

* add view mode

* add back WYSIWYGKeyboardAction

* nit extra line

* update action property to transformAction
2022-07-06 09:39:02 -07:00
Lucy Zhang
4ec2d78269 Add Notebook telemetry events (#19848)
* add telemetry events

* remove error message in telemetry
2022-07-01 09:14:29 -07:00
Barbara Valdez
74f01c429a Add more tests to cell image attachments (#19851)
* add more tests to cell image attachments

* remove cell attachment image name with spaces test
2022-06-29 14:13:54 -07:00
Lucy Zhang
23feac100a Add telemetry for notebook toolbar actions (#19750)
* add telemetry for notebook toolbar actions

* fix tests

* remove events with no metadata + connection info

* add optional connectioninfo param

* fix param
2022-06-23 05:57:17 -07:00
Barbara Valdez
7b16a78176 add tests for anchor links (#19659) 2022-06-20 09:29:33 -07:00
Cory Rivera
7696157084 Refresh cell toolbar when changing cell type. (#19704) 2022-06-10 17:15:50 -07:00
Cory Rivera
a265224701 Show an error in cell output when trying to load an unsupported output type. (#19693) 2022-06-09 12:32:42 -07:00
Cory Rivera
7007e18314 Add new cells after the current one when adding a cell from the notebook toolbar. (#19649) 2022-06-07 10:12:15 -07:00
Daniel Grajeda
4fd2f92e27 Introduce tabs for notebook views (#19526)
* Introduce tabs for notebook views

Cards have been restructured to contain tabs instead of cells directly.
Tabs then contain the cards that are displayed. Cards may contain one or
more cards.

The panel component has been reused to implement the cells. There is
still some cleanup left to do of unused functions, but I want to reduce
the size of the PR as much as possible.
2022-06-06 03:07:08 -07:00
Charles Gagnon
d3c474162d Fix renderer error string (#19599)
* Fix error string localization

* fix

* fix
2022-06-02 12:42:27 -07:00
Barbara Valdez
f06fd7f6f7 Fix split cell not working with attachments (#19587) 2022-06-01 16:23:46 -07:00
Cory Rivera
5afdf04aba Remove preview restriction for various notebook toolbar features. (#19296) 2022-05-05 19:15:34 -07:00
Cory Rivera
13b722eaf8 Show a notification when trying to run an untitled notebook with parameters. (#19286) 2022-05-04 13:26:26 -07:00
Cory Rivera
8cc66dade3 Fix intellisense for .NET Interactive SQL kernel (#19254) 2022-05-02 13:44:33 -07:00
Cory Rivera
7b58568d26 Convert .NET Interactive notebook's kernel spec to a VS Code compatible kernel when saving. (#19176) 2022-04-22 16:00:13 -07:00
Chris LaFreniere
6c4bf812cd Notebooks: Preventing "previousSibling of Null" Errors on Cell Selection (#19153)
* Defensive programming

* PR comments
2022-04-20 17:37:38 -07:00
Alan Ren
6395402b80 fix activitybar icon focus style (#19150)
* fix activity bar icon accessibility issue

* use state
2022-04-19 14:26:49 -07:00
Barbara Valdez
7a8681481e fix cell nav (#19082) 2022-04-14 10:49:17 -07:00
Cory Rivera
c2cc32a4a0 Add option to use notebook json contents instead of file string when creating a notebook. (#18972) 2022-04-08 16:39:14 -07:00
Maddy
4191ef8aa5 Fix active cell update on tabbing (#18614)
* listen on focus_in of toolbar

* update styles on focus_in

* listen for active cell change on notebook componen

* add tabbing order to textcells

* remove duplicate listener

* clean up

* undo

* remove visible check from cellToolbar

* remove duplicate detectChanges on updateActiveCell

* only update active cell if it's already not

* add aria-label for accessibility

* localize the aria label

* refactor

* add cellLabel property to CellModel

* remove updateActiveCell from code component

* regression from merge fix

* set edit mode as true when focusing on cell

* moce check to model

* merge changes correctly

* update edit mode if code cell

* fixes

Co-authored-by: barbaravaldez <bavaldez@microsoft.com>
Co-authored-by: chgagnon <chgagnon@microsoft.com>
2022-04-08 12:31:30 -07:00
Cory Rivera
7c399e84eb Add markdown smoke tests for changing text size and inserting links (#18888)
* Temporarily disabled text size tests due to issues running on Unix.
2022-04-05 15:53:06 -07:00
Chris LaFreniere
af3d307d40 Restart kernel initial implementation (#18835)
* Restart kernel initial implementation

* Update notebook extension TestKernel

* PR comments
2022-03-29 12:56:52 -07:00
Cory Rivera
d9501ffc03 Enable loading spinner for notebook editor. (#18810) 2022-03-24 16:31:33 -07:00
Maddy
23a69f9b69 Add test for last edit mode (#18734)
* add test for persisting last edit mode

* remove empty line

* address comments

* update comment
2022-03-18 16:13:58 -07:00
Cory Rivera
95980130c8 Correctly handle creating and saving untitled notebook .dib files. (#18744) 2022-03-16 14:37:21 -07:00
Cory Rivera
f013a88163 Only update active cell if the cell isn't currently in edit mode. (#18672) 2022-03-07 17:11:05 -08:00
Cory Rivera
eccb77aca3 Preserve previous code cell's language when creating a new code cell from an existing context. (#18646) 2022-03-06 21:35:57 -08:00
Barbara Valdez
8b543d1d12 check find widget is not focused (#18506)
* remove logic to check that the find widget is visible
2022-03-02 16:57:37 -08:00
Cory Rivera
79cda5cbe5 Add language picker to notebook cells. (#18601) 2022-03-02 10:25:55 -08:00
Cory Rivera
ffdefd3b52 Add notebook extension support for .NET Interactive. (#18334)
* Also updated kernel dropdown to only include SQL aliased kernels when using SQL notebook provider.
2022-02-25 11:58:59 -08:00
Barbara Valdez
75d9246f5e Fix search experience in notebooks (#18474)
* fix search on notebooks

* keep focus on findwidget
2022-02-18 10:53:45 -08:00
Barbara Valdez
cbaffd0b0d fix section markdown and html link (#18478)
* fix section markdown and html link
2022-02-18 10:08:33 -08:00
Charles Gagnon
a1a1793221 Add timeout delay to Notebook cell connect (#18475) 2022-02-18 09:05:13 -08:00
Barbara Valdez
ede0937c2b fix holding down key scrolling issue (#18322)
* Stop propagation + debounce scroll

Co-authored-by: chgagnon <chgagnon@microsoft.com>
2022-02-17 00:25:01 -08:00
Barbara Valdez
87d5da00bf Fix on click edit mode states (#18321)
* fix click code cell

* modified editmode when updating active cell
2022-02-16 15:52:05 -08:00
Charles Gagnon
e78a95e7d3 Fix Notebook navigation key events triggering incorrectly (#18329) 2022-02-11 13:40:17 -08:00
Maddy
f17e70472f check for encoded components (#18231)
* check for encoded components

* address comments

* relocate and simplify test

* move encodeUrl to notebookLinkHandler

* added comments

* add containsEncodedUri to network.ts
2022-02-09 13:36:23 -08:00
Barbara Valdez
8695b463dc Enable keyboard navigation in notebooks (#18176) 2022-02-08 14:30:58 -08:00
Lucy Zhang
94cbae55ca Fix file links not opening in Notebooks on Mac (#18202)
* convert vscode-file to file

* update comment

* check for undefined uri
2022-02-07 12:53:40 -08:00
Chris LaFreniere
230c0f317f Notebooks: Add telemetry event for mime type renderer not found (#18200)
* Add event for mime type renderer not found

* Add back missing return statement
2022-02-03 09:48:06 -08:00
Charles Gagnon
1c9ba64ee0 check-param-names (#18189) 2022-01-31 12:39:22 -08:00
Charles Gagnon
ad06fc7321 Fix images in Notebook not showing (#18160)
* Fix images in Notebook not showing

* fixes

* more fixes
2022-01-27 15:00:00 -08:00
Charles Gagnon
911c185dcd Fix untitled notebook save opening as JSON (#18156) 2022-01-26 13:25:40 -08:00
Maddy
bf5f18ea72 set mode explicitly to notebook (#18089)
* set mode explicitly to notebook

* move setMode to untitledNotebookInput

* wait until input is resolved for setMode

* invoke only when textInput is undefined

* pass the untitledTextInput in test
2022-01-24 14:17:34 -08:00
Chris LaFreniere
3cd9a562c8 Remove Extra Split Cell in notebook task bar (#18020) 2022-01-07 12:57:05 -08:00
Charles Gagnon
2bc6a0cd01 VS Code merge to df8fe74bd55313de0dd2303bc47a4aab0ca56b0e (#17979)
* Merge from vscode 504f934659740e9d41501cad9f162b54d7745ad9

* delete unused folders

* distro

* Bump build node version

* update chokidar

* FIx hygiene errors

* distro

* Fix extension lint issues

* Remove strict-vscode

* Add copyright header exemptions

* Bump vscode-extension-telemetry to fix webpacking issue with zone.js

* distro

* Fix failing tests (revert marked.js back to current one until we decide to update)

* Skip searchmodel test

* Fix mac build

* temp debug script loading

* Try disabling coverage

* log error too

* Revert "log error too"

This reverts commit af0183e5d4ab458fdf44b88fbfab9908d090526f.

* Revert "temp debug script loading"

This reverts commit 3d687d541c76db2c5b55626c78ae448d3c25089c.

* Add comments explaining coverage disabling

* Fix ansi_up loading issue

* Merge latest from ads

* Use newer option

* Fix compile

* add debug logging warn

* Always log stack

* log more

* undo debug

* Update to use correct base path (+cleanup)

* distro

* fix compile errors

* Remove strict-vscode

* Fix sql editors not showing

* Show db dropdown input & fix styling

* Fix more info in gallery

* Fix gallery asset requests

* Delete unused workflow

* Fix tapable resolutions for smoke test compile error

* Fix smoke compile

* Disable crash reporting

* Disable interactive

Co-authored-by: ADS Merger <karlb@microsoft.com>
2022-01-06 09:06:56 -08:00
Charles Gagnon
4a2b31f3ba Hook up Notebook execution edits (#17943)
* Start rerouting VSCode cell execution APIs.

* Add more conversion code.

* Convert VSCode notebook registrations into ADS equivalents.

* Update vscode notebook provider kernels when notebook controller's supportedLanguages are set.

* Update an error message.

* Add another session argument.

* Add base classes for converting notebook serializers.

* Disable some vscode notebook methods.

* Disable more vscode APIs.

* Disable more stuff.

* Start implementing serializer notebook data conversions.

* Use direct references to extension host notebook methods, rather than azdata ones.

* Add a comment.

* Remove a space.

* Use import type to fix module loading errors.

* Use internal cancellation token class.

* Start adding cell output conversion.

* Convert data from byte array to a string.

* More output work.

* Use a Set for proxy filtering.

* Start adding tests.

* Include metadata in cell conversion. Fix other test failures.

* Fix serialize tests.

* Add more tests.

* Remove wildcard characters from vscode filenames.

* Start implementing session details.

* Add more kernel info.

* Add kernel spec.

* Add Future callback wrapper class.

* Start implementing execute conversion.

* Pass notebook URI to requestExecute.

* Start working on CellExecution methods.

* Move some code around to fix layering issues.

* Use proxy to access browser code, rather than direct imports.

* Move files around to fix layering issues.

* Remove unused imports.

* Start implementing some notebook cell execution behaviors.

* Revert some unnecessary extHost API changes.

* Check for nbformat.

* Also handle nbformat in serialize case.

* Active notebook extensions when resolving NotebookInput.

* Fix nbformat handling.

* Disable VSCode notebooks code.

* Filter out notebook services from registration assertion.

* Wait for providers to load before calling canResolve.

* Use controller's viewType for notebook provider ID, instead of controller ID.

* Start adding extHostNotebook tests for new APIs.

* Re-order proxy calls.

* Remove commented code.

* Move vscode provider files to browser folder. Fix RPC serialization issues by using readonly field instead of getter for providerId.

* Add a comment.

* Remove unnecessary dispose call.

* Handle disposable from registerExecuteProvider.

* Remove a comment.

* Remove unnecessary provider fields.

* Remove reference to notebook service to fix circular reference issue in stringify.

* Add object types for methods in ADSNotebookController.

* Wait for controller languages to be ready before marking session manager as ready.

* Add correct promise.

* Add undefined return type for optional supportedLanguages property.

* Refine promise logic.

* Move vscode functionality back to ExtHostNotebook, since the NotebookService can't be passed back over RPC (some kind of circular reference error).

* Fix remaining issues from last commit.

* Replace "not implemented" methods with placeholder return types in order to enable testing.

* Also wait for execution handler to be set before marking session manager as ready.

* Fix usage of NotebookRegistry when updating provider description languages.

* Refine file extension conversion.

* Fix file extension conversion to match ADS extension behavior.

* Emit new provider registration event when adding supported languages.

* Remove checks for duplicate file providers and kernels.

* Fix a test failure.

* Fix file extension parsing.

* Use default executeManager if one isn't defined for provider in notebookModel.

* Add descriptors for waiting on standardKernels registration.

* Increase timeout

* Add an error message.

* Start working on retrieving default kernel from registered providers, rather than always falling back to SQL.

* Revert "Start working on retrieving default kernel from registered providers, rather than always falling back to SQL."

This reverts commit 1916ea1ce3a0072f51bec683116dc7bb6c7aefdc.

* Emit activation events after provider registration.

* Wait on standard kernels availability when getting an execute provider.

* Throw an error if session manager isn't ready yet.

* Actually resolve language promise correctly.

* Add some checks for undefined notebook data objects.

* Create kernel spec data correctly.

* Add extension changes for local testing only.

* Clean up test class.

* Add a reminder comment.

* Undo commented out notebook stuff

* Temporarily hard code default kernel.

* Retrieve default kernel in notebookModel if it's not already provided.

* Revert an import change.

* Remove unnecessary method from extHostNotebook.

* Move an interface around.

* wip

* Check for proposed API for some VSCode extHost methods.

* Remove a comment.

* Fix notebookUtils tests.

* Fix notebookModel tests.

* Fix notebookFindModel tests.

* Fix notebookViewsExtension tests.

* Fix remaining notebookView tests.

* Refactor output conversion functionality into separate methods.

* Update some unit tests for output conversion.

* Move a method.

* Rename conversion methods to fit acronym styling.

* Add another conversion test case.

* Revert local testing changes.

* Remove old method.

* cleanup

* Remove some comments.

* Move localized string to locConstants.

* Add a space to loc string.

* Add comments to new SQL Carbon Edit tags.

* Create constants for nbformat and nbformat_minor.

* Move some vscode-only fields to proposed APIs.

* Check for valid state

* Properly null check

* Adding logging for provider wait timeouts.

* wip update

* Fix compile

* Switch to cell edits

* Update docs

* Remove custom output type

* cleanup

* fix

* cleanup

* more cleanup

* Fixes

* Fix tests and lint errors

Co-authored-by: Cory Rivera <corivera@microsoft.com>
2022-01-04 16:35:16 -08:00
Cory Rivera
2ecc3d35ca Initial implementation for VSCode Notebook support (#17885) 2022-01-03 15:59:37 -08:00
Barbara Valdez
f8e4969ab1 Remove undo/redo listeners from notebook component (#17966)
* remove undo/redo hostlisteners
2021-12-21 14:22:26 -06:00