Skip to content
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

Notebooks code cleanup #131808

Closed
2 of 4 tasks
roblourens opened this issue Aug 27, 2021 · 6 comments
Closed
2 of 4 tasks

Notebooks code cleanup #131808

roblourens opened this issue Aug 27, 2021 · 6 comments
Assignees
Labels
debt Code quality issues notebook
Milestone

Comments

@roblourens
Copy link
Member

roblourens commented Aug 27, 2021

@roblourens roblourens added debt Code quality issues notebook labels Aug 27, 2021
@roblourens roblourens added this to the September 2021 milestone Aug 27, 2021
@rebornix
Copy link
Member

rebornix commented Aug 30, 2021

My wish list of internal API of the notebook editor component:

  • No .viewModel usage in contrib
    • This means we would need API on NotebookEditorWidget
  • Unify mulit-selection aware notebook actions

@roblourens
Copy link
Member Author

I think probably everything except my cellRenderer task is done? Anything else you plan to do?

@rebornix
Copy link
Member

Yeah, the only thing left is polishing cell renderer. Let's finish that next month.

@rebornix
Copy link
Member

Potential issues found while refactoring the cell renderer:

roblourens added a commit that referenced this issue Nov 17, 2021
roblourens added a commit that referenced this issue Nov 17, 2021
fix issue where progress bar doesn't appear when collapsing input while cell is running.
Also small cleanup to cell dnd in renderer
#131808
@rebornix
Copy link
Member

As part of the refactoring, we introduced the concept of CellPart which is an abstraction of components in a cell component, e.g., Toolbar, ProgressBar, Output. A CellPart should try its best to construct DOM and update DOM nodes in its ctor or updateLayout, and perform DOM read operations only in prepareLayout to ensure that DOM write and read operations are batched along with other cell parts. A cell part doesn't need to bind its own listener to cell state change, the events will be passed in through CellPart#updateState.

CellPart

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
debt Code quality issues notebook
Projects
None yet
Development

No branches or pull requests

3 participants
@roblourens @rebornix and others