-
-
Notifications
You must be signed in to change notification settings - Fork 3.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Notebook minimap in the virtual scrollbar #16432
Notebook minimap in the virtual scrollbar #16432
Conversation
Thanks for making a pull request to jupyterlab! |
Ohh, very cool! Some minor feedback:
If it isn't too much trouble, could you generate some alternate screenshots to help us explore and weight the different visual options. |
Thank you for leaving feedback @ellisonbg!
I agree that it should be smaller than the actual prompt. There is of course a limit as to how small we can make it to keep it legible. Currently the prompt in the notebook cells are 13px and in the the minimap they are 80% of that which works out to 10.4px. Visually they may seem more similar because the former are grey and the latter are black (left - minimap as of now, right - cell in a notebook)
To clarify, this PR is not adding the hamburger icon button to the toolbar. For context, that button (and the initial virtual scrollbar implementation) was added 6 months ago in #15533 by @afshin after previous discussion in #15109 (and discussing this on multiple JupyterLab calls). Discussing it in a dedicated issue rather than here would give it more prominence and allow users who only monitor the issues by screening the titles to participate so I opened #16478 for it. Also, if we were to make this change here, this PR would grow to touch dozens of snapshot files and toolbar tests, so I would really prefer not to do that. |
a9c0881
to
6381c41
Compare
I tested this and it works well for me (Ubuntu 20.04.6 LTS, firefox 114.0.2). Scrolling works well, execution indicator, ect. all work smoothly and as expected on the |
Thanks @krassowski for adding this feature, it's really nice. In my opinion, we should make it configurable, with this display as default.
We could have an option to fully render the cells, which would remove the
In the case of a simple rendering (rectangle with cell index), would it be easy (and necessary) to fallback to a simple |
I agree. My original intent was to add settings in this PR but I realised that we will probably want the minimap to be an extension point and therefore we should not be adding settings to the Notebook package because then it would be a breaking change to remove them (which would be needed to move then to a new plugin providing the default implementation so that extensions can provide their own settings schema), so let's settle on the extension API for minimap first and implement settings second. I opened #16528 to track this. |
This could be implemented as a separate plugin (disabled by default) which could be swapped by the user if they wanted the other implementation once we implement an extension point for the minimap (#16528); that said I am not sure how much value there would be in it. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the changes and details @krassowski, this looks good.
Should we add #16528 in 4.3 release plan ?
* Notebook minimap in the virtual scrollbar * Remove `updateOutput` in favour of making `updatePrompt` an arrow func * Improve line breaks behaviour in markdown cell previews * Adjust prompt positioning after c26de19
* Thread in kernel manager * remove kernel search function * docstring driven development * Pass in kernel ID, etc * Refactor dropdown * do not await session context ready for reasons * more clean up * fix tests * more tests * Show the prefix of kernel ID in change kernel dropdown that is visible in the running kernels pane * Update group order * Make kernelManager optional for this version * fix docstring and unknown kernel name * minor type signature update * simplify arguments * Make kernelManager optional in the ISessionContext interface for this version * If kernel manager is not present, default to rendering all kernels from running sessions * Expose the ability to make a temp dir so test creators can generate their own data directories * Expose a public API for populating a <select> tag with kernel creation – both for testing and potentially for others to use * Add an external kernel directory and item for the apputils sessioncontext tests to test external kernels rendering in the change kernel dialog * Notebook minimap in the virtual scrollbar (#16432) * Notebook minimap in the virtual scrollbar * Remove `updateOutput` in favour of making `updatePrompt` an arrow func * Improve line breaks behaviour in markdown cell previews * Adjust prompt positioning after c26de19 * Add option to dismiss "Server Connection Error" dialog for the duration of the session (#16269) * add option to dismiss dialog * Update packages/application/src/connectionlost.ts Co-authored-by: Jason Weill <93281816+JasonWeill@users.noreply.github.com> * Update packages/application/src/connectionlost.ts Co-authored-by: Jason Weill <93281816+JasonWeill@users.noreply.github.com> * Update packages/application/src/connectionlost.ts Co-authored-by: Michał Krassowski <5832902+krassowski@users.noreply.github.com> * added types, promise cached in variable, pop-up comes back up if clicked away from or dismissed * clean up logic * Update packages/application/src/connectionlost.ts Co-authored-by: Michał Krassowski <5832902+krassowski@users.noreply.github.com> * make variables private and move to end of file, add get and set methods * Update packages/application/src/connectionlost.ts Co-authored-by: Michał Krassowski <5832902+krassowski@users.noreply.github.com> * Update packages/application/src/connectionlost.ts Co-authored-by: Michał Krassowski <5832902+krassowski@users.noreply.github.com> * Update packages/application/src/connectionlost.ts Co-authored-by: Michał Krassowski <5832902+krassowski@users.noreply.github.com> * Update packages/application/src/connectionlost.ts Co-authored-by: Michał Krassowski <5832902+krassowski@users.noreply.github.com> * Update packages/application/src/connectionlost.ts Co-authored-by: Michał Krassowski <5832902+krassowski@users.noreply.github.com> * Update packages/application/src/connectionlost.ts Co-authored-by: Michał Krassowski <5832902+krassowski@users.noreply.github.com> * Simplify the changeset --------- Co-authored-by: Jason Weill <93281816+JasonWeill@users.noreply.github.com> Co-authored-by: Michał Krassowski <5832902+krassowski@users.noreply.github.com> * Update to Playwright 1.45.0 (#16530) * [ci skip] Publish 4.3.0a1 SHA256 hashes: jupyterlab-4.3.0a1-py3-none-any.whl: b844cebfd717ff0bdf9b14ff682eabbf4f7ab9969609f7087452f7968a82860f jupyterlab-4.3.0a1.tar.gz: fd33ee07649c10d2c84a141dacb7cecf709f283e8e79af248e5d69f1110c04e2 jupyterlab-application-4.3.0-alpha.1.tgz: 62275c90773b497c9ef79fe6bf7ac3e0375c2f960599c7e76e41db7f786a3026 jupyterlab-application-extension-4.3.0-alpha.1.tgz: 550308d9390a3620ee6782c548e0c336a66618d917a90026a9448284b0c09d01 jupyterlab-apputils-4.4.0-alpha.1.tgz: a4fb5a4366b6b674dd22a7145065094c4fcad7adbdc4fac2c6957ec45254d7c9 jupyterlab-apputils-extension-4.3.0-alpha.1.tgz: d2fe04543ea3ed69822a328e3742418072e81de6ad42fbc0272038e1708ddafa jupyterlab-attachments-4.3.0-alpha.1.tgz: 506b3da0cac56e40e9ef351fbe5c9712afd4611b73a47fc9dd4988b2ee7a228e jupyterlab-builder-4.3.0-alpha.1.tgz: 986e9653c1f264cd0899d5bc4561203bb5e2cead21d878a7faa1764753c1edb1 jupyterlab-buildutils-4.3.0-alpha.1.tgz: fc971e4f041f2380c18c84112d3f5c55a0cfb4cd2c157a938a41d527780f2458 jupyterlab-cell-toolbar-4.3.0-alpha.1.tgz: d4ac4777221e4ff7404a730ac50edfa0790115443584aee6168ad888dd71c6dd jupyterlab-cell-toolbar-extension-4.3.0-alpha.1.tgz: 48f277f956dfb151714294f29adf031ee9beffa1526a8dbed4404cd6a81635e2 jupyterlab-cells-4.3.0-alpha.1.tgz: b99f07fd44b1f6afb8153244c0567467e43767f855bee07da6377037f71690d1 jupyterlab-celltags-extension-4.3.0-alpha.1.tgz: 91f0a008a01dde142b8a35f274f07ee31933dc0abe08608ea747920d16fa1e04 jupyterlab-codeeditor-4.3.0-alpha.1.tgz: c67086158f11096f6eac38d6cc850b528884e4de0e1965929c55ab1d17047944 jupyterlab-codemirror-4.3.0-alpha.1.tgz: a26d358465e2e586969c322e7a56956a91ab65f325c5cde0d99b3e9aaa82d2d7 jupyterlab-codemirror-extension-4.3.0-alpha.1.tgz: aacd5fa4f1ae8166859ea96a873e1751ce569cd4f4e45018a4c3d96525afd825 jupyterlab-completer-4.3.0-alpha.1.tgz: 1878233761159485d1c05ebe3028b839050207d018ff04423b9e8c740b612cf9 jupyterlab-completer-extension-4.3.0-alpha.1.tgz: 9916936c0f0dce79dc12cceb3ea6d54d501edb1e09743936008a339f05c2299f jupyterlab-console-4.3.0-alpha.1.tgz: 80a2522012b44e5ae74590c829412b3ccf7661b83a46e813a0f1d2bf78495a80 jupyterlab-console-extension-4.3.0-alpha.1.tgz: 2d7011471df012b6bb4197d3a747b7df3bda11dcd7f0feab4625d19cee809db0 jupyterlab-coreutils-6.3.0-alpha.1.tgz: a41e1e3c83329f2311f8a98bc406601a4a2ad5eac4ed0456b9658f110bc551cd jupyterlab-csvviewer-4.3.0-alpha.1.tgz: c0da65eafc6b83ef6d53fa297345635dce8d9eea3958d95442db34b1c5a15a2a jupyterlab-csvviewer-extension-4.3.0-alpha.1.tgz: e09e1cbad600d8ba405ff576aeeb1f19c77d34a3c1f906387aa254532bbef8f7 jupyterlab-debugger-4.3.0-alpha.1.tgz: df54b90ce47f95a4256b8dbe3ec242a9e57ab7413790ce5f64635983e1c2638f jupyterlab-debugger-extension-4.3.0-alpha.1.tgz: 395480113048dd903efe71b44f759651a09242dc0ca0325a3cdb6aeece93aa85 jupyterlab-docmanager-4.3.0-alpha.1.tgz: bd02316d7615b879b2e5d0a0a8eb91dbeab80e7a24ce6b32d212beb4e47fdee1 jupyterlab-docmanager-extension-4.3.0-alpha.1.tgz: b8f044c0b1a2544cd3609a80077ce63fd1e7d6f6b20c8d059d1afe7c22f9195b jupyterlab-docregistry-4.3.0-alpha.1.tgz: c94c97f883a1f7b5ea7bfd4aa2b5e6f22dbfa20a364e35601a833a4206e22bac jupyterlab-documentsearch-4.3.0-alpha.1.tgz: 3faac028114d5087126ba855364b64ba643fc004008d703b4357fc11c5df15cc jupyterlab-documentsearch-extension-4.3.0-alpha.1.tgz: 6860ed3a3ca86858dd383738b2b212763cdaf560e4ab742b648610ac87221e5f jupyterlab-extensionmanager-4.3.0-alpha.1.tgz: fc194aebb5d9ff2113e99b880b5da2164bd3d4401f4f8d237a39e3f85df8ec54 jupyterlab-extensionmanager-extension-4.3.0-alpha.1.tgz: 13c6c5d8e03ae6f1a12ef7e4fde6c8bd8dfa5638692dbb9196651d814d161af3 jupyterlab-filebrowser-4.3.0-alpha.1.tgz: f77c67e35ce0b8862780390e10597d4cc7d3cc286a434b45dc5ed7643f550db3 jupyterlab-filebrowser-extension-4.3.0-alpha.1.tgz: aabaeb0c2d168e78b0ec5f1d9dc6ff4f85b2072f4bb0ddaab2d277d8274a88a9 jupyterlab-fileeditor-4.3.0-alpha.1.tgz: ceb138e4d9dac8d2732a93d2e97839c629897c39c2dcb1d74f4e177d2198af59 jupyterlab-fileeditor-extension-4.3.0-alpha.1.tgz: 48d68926fd624e702fe7958eae6589c65a7e2ecbfbcf89430ed603d1aff5f986 jupyterlab-galata-5.3.0-alpha.1.tgz: d5803f8ff84f25a7a3f58bf672026cf524f288fd32f4bc3849d4b263e2e7605c jupyterlab-help-extension-4.3.0-alpha.1.tgz: aa663c1bed76f1c0b7f1783a2b5e8733b80d0c9814fbeff58ff105acd6f12bf8 jupyterlab-htmlviewer-4.3.0-alpha.1.tgz: 17b7663ef309e98e838854abdf7111e8c459a29d60b3f19896afffac48b24f87 jupyterlab-htmlviewer-extension-4.3.0-alpha.1.tgz: 3dcd4a6622a78bf71491f422f6e1398fe67a225d8cdfe629ca2b28de69035516 jupyterlab-hub-extension-4.3.0-alpha.1.tgz: 613e356906de930ec90a92cfb8c12e175112b303c439b217ce56a76b0d851105 jupyterlab-imageviewer-4.3.0-alpha.1.tgz: 7530054ba05b367be77e5a3c18f9dbab83e4b5d3bfc9970efe22bc879b0deb33 jupyterlab-imageviewer-extension-4.3.0-alpha.1.tgz: 19c25b66913d4d886094e78660993c3dd8ec5534f9c52ae9729918e7aa5504ae jupyterlab-inspector-4.3.0-alpha.1.tgz: 1a154d51a0a89c45998d2fe183277ca2ec00d4979f2428402347fde48b469b21 jupyterlab-inspector-extension-4.3.0-alpha.1.tgz: 2ad76584db27ca41c1cc4958c71037e95378f2dcbbf6ac06e519a6ee9caf75e2 jupyterlab-javascript-extension-4.3.0-alpha.1.tgz: c125af9b6273897e07e15ae1492018257c6f053ace2921faf162d36059bf1544 jupyterlab-json-extension-4.3.0-alpha.1.tgz: a6a386a9deb7cc0242a426d618465e37db312af14e9a08ba60197c1f4b996fd1 jupyterlab-launcher-4.3.0-alpha.1.tgz: df598c0f370276db77724352b3ab08efae43598f7ac7444d1cb54b0ea9f68065 jupyterlab-launcher-extension-4.3.0-alpha.1.tgz: 1798928af46911cf34a8baefcc6e81517558ad7a9bdbaa1172b0c40124ff0ba9 jupyterlab-logconsole-4.3.0-alpha.1.tgz: 943f2a4882a38ffc4f3a66a60d7462525c7eff5520273379d46752a17f4aa62a jupyterlab-logconsole-extension-4.3.0-alpha.1.tgz: a5af8707c82a1862cc141be4fbcae07359d3ebcf136c00a708ca10ac889fc138 jupyterlab-lsp-4.3.0-alpha.1.tgz: 447fb0b815b81c8da2034bcd3ea39de69b5c8ae9c339f2ce0cf53932c53553d0 jupyterlab-lsp-extension-4.3.0-alpha.1.tgz: 3e1d5395b60b049db515a90e75025e85b83e49c6bf13193e4394465c1d6d19c2 jupyterlab-mainmenu-4.3.0-alpha.1.tgz: cb8374c43828f4a13bf87ccd1b4f2122f6877c785c1c3f8bce24d8257ae13da9 jupyterlab-mainmenu-extension-4.3.0-alpha.1.tgz: 1fa39d367aed51da40ecf73cfd3cceeea7e38561baf1078f1f36c99810702f1e jupyterlab-markdownviewer-4.3.0-alpha.1.tgz: 2482ca1144ba0289141b200ae014fa67e80d1a95d3221e40d8fff941b9ab289d jupyterlab-markdownviewer-extension-4.3.0-alpha.1.tgz: 0e2157d61b62c67bab090da9d3c5c1404e519bce168e24055bd32eefa1d03b32 jupyterlab-markedparser-extension-4.3.0-alpha.1.tgz: 9f9bbf952c3ab214c139815f960ceeeddb2ca1ae9d5f1f0aa574959a1054798b jupyterlab-mathjax-extension-4.3.0-alpha.1.tgz: d35a9fb0b3fc07ef760db310a9d9b199dfdd4ac6ecbfa42dc4e27b10edd297b5 jupyterlab-mermaid-4.3.0-alpha.1.tgz: 2912f917b17be7ab2aac8d16709254f7d8f4e402e472596c624718bd9d57d6ca jupyterlab-mermaid-extension-4.3.0-alpha.1.tgz: 92951f22f3150e8d091b72e84e263b072bff62ae093018c9f53c761508e05eaa jupyterlab-metadataform-4.3.0-alpha.1.tgz: 9fbca9b12231b54bc179af200843155af82c1836d0c70b1bae49fc0b7ae1d261 jupyterlab-metadataform-extension-4.3.0-alpha.1.tgz: 22797754823a8c34db07789b93e81dd99a30c8de54fe0c93a6d24e7e691f7cf1 jupyterlab-metapackage-4.3.0-alpha.1.tgz: 403f3490b0cf8366b3ce021577154a95f6aaa81b1c477d1ea89e3ecd3bc255c6 jupyterlab-nbconvert-css-4.3.0-alpha.1.tgz: 81ee952eef731ef7f61db8f2222748dd668ba0ca699aced6748c2a830096ee65 jupyterlab-nbformat-4.3.0-alpha.1.tgz: 78148c6d690eaaf4627d6238ddd9eb131fb71694e8ad0f51d70bcf6c3ad9b45e jupyterlab-notebook-4.3.0-alpha.1.tgz: f346d39ff47a778e89fd3e6ce67dce798c0f6fc9f745749dfca897fba48619fc jupyterlab-notebook-extension-4.3.0-alpha.1.tgz: ed936232825b64382ebbcdfe90126958b7e2984a79238023c54694c925d888e1 jupyterlab-observables-5.3.0-alpha.1.tgz: af21c016c7d715d75339559bad081ef6eba755afd1df08dd27aac2820c3634c3 jupyterlab-outputarea-4.3.0-alpha.1.tgz: 25cf942b4079b7b7760c0e991de2316af7267e3f846e87ec5423730667c59ed1 jupyterlab-pdf-extension-4.3.0-alpha.1.tgz: b849e919380dbc2f113e6d49c9959c888a51cb08c64e1acabb81c3aa7e64cf0e jupyterlab-pluginmanager-4.3.0-alpha.1.tgz: 3156470c3c98efd42b415b9ed72b4a4ad91ab9c7173a255693ba064b029680f1 jupyterlab-pluginmanager-extension-4.3.0-alpha.1.tgz: 0521ced83575412ebec42be748c92a1d5868bfb0a3f13343c695b30948437557 jupyterlab-property-inspector-4.3.0-alpha.1.tgz: 104bab2e6e6721150315150f2af87998b85614a330bc22460e7f2c1487e9934a jupyterlab-rendermime-4.3.0-alpha.1.tgz: baf5e24e691b952edc6620038cba7962ccd0c48e888748209f4485f67244791a jupyterlab-rendermime-extension-4.3.0-alpha.1.tgz: d7e9e1f7fe21bff8fa6c102e457bad7ae85cb496f784baec9069c696c2b75f6d jupyterlab-rendermime-interfaces-3.11.0-alpha.1.tgz: 06e1a9ef09a65102922c3fc9c90b4f44bd2f1949b6dc37919e23700db4d4c412 jupyterlab-running-4.3.0-alpha.1.tgz: e25c4f08a96badfe0c0b91afe45d64b85648e43a787517833a85f29f225c75d6 jupyterlab-running-extension-4.3.0-alpha.1.tgz: d0d3acb5ba2db9b30a70552ea0f4199e5a30cc08fa1674f6fa7f3059b51722de jupyterlab-services-7.3.0-alpha.1.tgz: d55a50b87073cd3fc256c41ae7dd82d84bebee1593b2bf339c67fc0d19db04de jupyterlab-settingeditor-4.3.0-alpha.1.tgz: 0d62d1965a5ae6e8c2805b4c8e7eee377341dc7aaf348a458d3ed0ad6ebecc71 jupyterlab-settingeditor-extension-4.3.0-alpha.1.tgz: 96755d568e63e8e263967f53618eb5890189223c3fe3fc03cdeb91638644fef2 jupyterlab-settingregistry-4.3.0-alpha.1.tgz: ea6de5086f5ad656b0b3b3c94a32269996af4e0279b9c5f83d82b6bdc21ed123 jupyterlab-shortcuts-extension-5.1.0-alpha.1.tgz: 40b4af8d80365c21f7b9bffe34b14abe3f43333335691071a163a916c1430841 jupyterlab-statedb-4.3.0-alpha.1.tgz: a566c0423efc174e3dec30a3fddd706e1ceb0ee39fa30cb2767867a895d2bc27 jupyterlab-statusbar-4.3.0-alpha.1.tgz: 7e7138708c88bc54d62523e0ed44a3ffed625e6556094b277a06dc473ae6402c jupyterlab-statusbar-extension-4.3.0-alpha.1.tgz: 0bdbc2cbc633a5032ba5e41cb481959294cc3ef3a6960a70e03ed8ead8f0ca43 jupyterlab-template-4.3.0-alpha.1.tgz: 5b4473b16933ff5985cd1511c5c79f0497f861123e8c0a47cb6d4845ebc7e730 jupyterlab-terminal-4.3.0-alpha.1.tgz: 482d57c324ab87bf874d1b7da894011911b45902be1ae02c975c126be492ad42 jupyterlab-terminal-extension-4.3.0-alpha.1.tgz: 58231169cad75f698eeced49a30c53a6d6d03425c65a5de1500d30a79eae27c9 jupyterlab-testing-4.3.0-alpha.1.tgz: 1df2fcb56b5bf71294e4c67b492eb00edf24c4090c3a0aff2a01be4332137900 jupyterlab-testutils-4.3.0-alpha.1.tgz: d57acf14166354dec2e40fc5429b0645a9df69774e4e08b39f035da219e86c85 jupyterlab-theme-dark-extension-4.3.0-alpha.1.tgz: 7411a22ba4195ef8f530015a56781bbce1b999133a0d89190613d9e66e5bbf6e jupyterlab-theme-dark-high-contrast-extension-4.3.0-alpha.1.tgz: 25b5d024e3b99b8b982924bc66b591a9d52d4fb0abe5331ec880a26c8b675860 jupyterlab-theme-light-extension-4.3.0-alpha.1.tgz: 1c06f65fe710105b6ca91b5099c943ce5cab93dce75c438bf7d0b038a152c75c jupyterlab-toc-6.3.0-alpha.1.tgz: cb6dc0c79f2800b0b616aabc9b2d06c9fa0cd11a333c847f9cbf25f890e94c37 jupyterlab-toc-extension-6.3.0-alpha.1.tgz: 096e485e928f031ea578b9914ca257c2b1289d96df745c020a22e04b6f0d4258 jupyterlab-tooltip-4.3.0-alpha.1.tgz: 467723d14304f905a5dae7452967792beaa80f48f4e7d5d1054b9202d83b562c jupyterlab-tooltip-extension-4.3.0-alpha.1.tgz: 032a689a78dec5dfd9bcaf6d30fea98717762a6c6203c311fab2b76cd2040965 jupyterlab-translation-4.3.0-alpha.1.tgz: 58065a9bc36f2be1b1f2b7ad49cfaf53821e528b1f1c778855648b8522ac36ca jupyterlab-translation-extension-4.3.0-alpha.1.tgz: 692fd0e689b138feae71b8cfe4b12880c2f263e5599b47c29cb66a0f95f92a4f jupyterlab-ui-components-4.3.0-alpha.1.tgz: 792ac2297c2c4c281c50a09111234617f723267b416b9ad8247b777976565b60 jupyterlab-ui-components-extension-4.3.0-alpha.1.tgz: b5b7417c791431f0d78b6fd44ce70ead2dad71ced678c9ca00b6d0e6acf58bca jupyterlab-vega5-extension-4.3.0-alpha.1.tgz: 5ee81de4122a12a77f13ea5f629c04d904ed096d28f6ae17ffa333e8aa8916a7 jupyterlab-workspaces-4.3.0-alpha.1.tgz: eced161f00029ceb049482ea5a40db10ce1c46c18a55b2326278c0c27c7a1497 jupyterlab-workspaces-extension-4.3.0-alpha.1.tgz: 64c72d2ea1b3574c5f1de0e050a0d87c469d20846ce75a0cdab82be40a7038e1 * Add checkbox to skip showing the kernel restart dialog (#16265) * Add checkbox to skip showing the kernel restart dialog * Swap to Setting Registry * add ISettingRegistry to sessionDialogs * Add null option for ISettingRegistry * unlink checkbox with setting * Suggested changes * typo * Leave the API of testing JupyterServer as it exists in main * Refactor per Fred's suggestion * no reify * dedupe * tweak * Consolidate the types used in the kernel options function into one interface --------- Co-authored-by: Michał Krassowski <5832902+krassowski@users.noreply.github.com> Co-authored-by: Rosio <rosio_reyes@yahoo.com> Co-authored-by: Jason Weill <93281816+JasonWeill@users.noreply.github.com> Co-authored-by: Jeremy Tuloup <jeremy.tuloup@gmail.com> Co-authored-by: krassowski <krassowski@users.noreply.github.com> Co-authored-by: Elijah McMorris <NexVeridian@gmail.com>
References
For now this PR includes two PRs on which it depends:
ICodeCellModel.executionState
, deprecatesetPrompt()
#16431Code changes
Creates a private (non-exported)
ScrollbarItem
class which implements reactive scrollbar item allowing for high-performance rendering of minimap even in very large notebooks.User-facing changes
The virtual scrollbar now exposes information on whether the cell:
[*]
), idle ([ ]
) or was already run (e.g.[1]
)[X]
for code, nothing for markdown)Plan
Depending on feedback:
Ideas for future improvements:
Backwards-incompatible changes
None