matplotlib / matplotlib/ipympl
Resizing extends outside the bounds of the notebook
Personne n'a encore pris cette issue.
- Langage dominant
- Jupyter Notebook
- Étoiles
- 1.7k
- Forks
- 234
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Description
## Describe the issue
If you drag the resize handle outside the limits of the notebook and release the mouse you lose the ability to resize as the handle will be hidden:

This is a consequence of using a window mouse move listener: https://github.com/matplotlib/ipympl/blob/6b44a6f90cf74b12cfcf930b440010984d8a9b4d/js/src/mpl_widget.js#L272
Maybe there could be a check that it won't be resized to be larger the layout (`this.model.get('layout')`)?
## Versions
```
3.7.6 (default, Jan 8 2020, 19:59:22)
[GCC 7.3.0]
ipympl version: 0.5.6
jupyter core : 4.6.1
jupyter-notebook : 6.0.3
qtconsole : 4.6.0
ipython : 7.12.0
ipykernel : 5.1.4
jupyter client : 5.3.4
jupyter lab : 2.1.5
nbconvert : 5.6.1
ipywidgets : 7.5.1
nbformat : 5.0.4
traitlets : 4.3.3
Known nbextensions:
config dir: /home/ian/anaconda3/etc/jupyter/nbconfig
notebook section
jupyter-matplotlib/extension enabled
- Validating: OK
nbdime/index enabled
- Validating: OK
voila/extension enabled
- Validating: OK
jupyter-js-widgets/extension enabled
- Validating: OK
JupyterLab v2.1.5
Known labextensions:
app dir: /home/ian/anaconda3/share/jupyter/lab
@axlair/jupyterlab_vim v0.12.2 enabled OK
@jupyter-widgets/jupyterlab-manager v2.0.0 enabled OK
@jupyter-widgets/jupyterlab-sidecar v0.5.0 enabled OK
@jupyterlab/git v0.20.0-rc.0 enabled OK
jupyter-matplotlib v0.7.2 enabled OK
jupyterlab_vim-system-clipboard-support v0.1.0 enabled OK
nbdime-jupyterlab v2.0.0 enabled OK
```
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Lisez js/src/mpl_widget.js autour de la ligne 272 et reproduisez le comportement du resize-handle en faisant glisser au-delà des limites du notebook. Examinez comment le window mousemove listener utilise this.model.get('layout'); le problème est résolu lorsque le fait de relâcher en dehors du notebook ne laisse pas le handle masqué et n’empêche pas de continuer le redimensionnement.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- javascript, jupyter
- Domaine
- frontend
- Type d'issue
- Bug
- Difficulté
- 2/5
- Temps estimé
- 1-3 heures
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 45/100