Open mcrutch opened 2 years ago
Thank you for opening your first issue in this project! Engagement like this is essential for open source projects! :hugs:
If you haven't done so already, check out Jupyter's Code of Conduct. Also, please try to follow the issue template as it helps other other community members to contribute more effectively.
You can meet the other Jovyans by joining our Discourse forum. There is also an intro thread there where you can stop by and say Hi! :wave:
Welcome to the Jupyter community! :tada:
Thank you for checking the behaviour in JupyterLab. An alternative to iframes would be to attach main area widgets using closed shadow DOM (https://github.com/jupyterlab/lumino/issues/434). This is more likely to happen than encapsulation of individual outputs (by default) discussed in the linked notebook issues because it would not break most of the notebooks available out in the wild.
Triage notes: Currently, JupyterLab is not designed to have ID elements be isolated to one view. Reclassifying this as an enhancement. This would require us to do a substantial amount of reorganization to get this to work. Thank you for your contribution!
Description
Related to https://github.com/jupyter/notebook/issues/6598 but in JupyterLab. Rather than two cells in the same notebook, one notebook affects the DOM of the other notebook since they aren't self-contained in their own iframes
Reproduce
Notebook 1
Notebook 2
Expected behavior
I feel like each notebook in the MDI should be treated as it's own autonomous object (via iframe or some other way) rather than being treated as a part of the larger DOM of JuptyerLab. A user using DOM manipulation to make a fancy display in a notebook works fine in Notebook v6, Notebook v7 or the SDI/Simple view of JupyterLab, it doesn't work in JupyterLab in the MDI if multiple notebooks are open that use the same Element ID.
Now, I personally think it is a horribly way to go about things, but I feel like the Lab MDI should act the same as all of the single document interface in this regard. (I also feel like the way it is done in Notebook v6/v7/Lab Simple interface is the right way, but still just my opinion)
Just wanted to document this because I thought about this use case when I saw that other ticket on Notebook and wondered how it would act on JupyterLab.
Context
Troubleshoot Output
Command Line Output
Browser Output