Title: webAgg backend incorrectly reports middle clicks as right clicks · Issue #18171 · matplotlib/matplotlib · GitHub
Open Graph Title: webAgg backend incorrectly reports middle clicks as right clicks · Issue #18171 · matplotlib/matplotlib
X Title: webAgg backend incorrectly reports middle clicks as right clicks · Issue #18171 · matplotlib/matplotlib
Description: Bug report Bug summary The webAgg backend reports middle click events as right click events. This is caused by these lines: matplotlib/lib/matplotlib/backends/backend_webagg_core.py Lines 263 to 269 in ede8e56 # The right mouse button po...
Open Graph Description: Bug report Bug summary The webAgg backend reports middle click events as right click events. This is caused by these lines: matplotlib/lib/matplotlib/backends/backend_webagg_core.py Lines 263 to 26...
X Description: Bug report Bug summary The webAgg backend reports middle click events as right click events. This is caused by these lines: matplotlib/lib/matplotlib/backends/backend_webagg_core.py Lines 263 to 26...
Opengraph URL: https://github.com/matplotlib/matplotlib/issues/18171
X: @github
Domain: github.com
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"webAgg backend incorrectly reports middle clicks as right clicks","articleBody":"\u003c!--To help us understand and resolve your issue, please fill out the form to the best of your ability.--\u003e\r\n\u003c!--You can feel free to delete the sections that do not apply.--\u003e\r\n\r\n### Bug report\r\n\r\n**Bug summary**\r\nThe webAgg backend reports middle click events as right click events. This is caused by these lines:\r\n\r\n\r\n\r\n\r\nhttps://github.com/matplotlib/matplotlib/blob/ede8e566e5c7e7a12fdd66231ba02f363aab8913/lib/matplotlib/backends/backend_webagg_core.py#L263-L269\r\n\r\nI don't think I entirely understand the issue described by that comment but I'd argue that it is better to allow users to make the choice to listen for middle clicks rather than to report middle click as right click. Also there does not seem be anything in MouseEvent docstring about this: https://matplotlib.org/3.3.0/api/backend_bases_api.html#matplotlib.backend_bases.MouseEvent\r\n\r\nI ran into this when using the ipympl backend (xref https://github.com/matplotlib/ipympl/issues/254)\r\n**Code for reproduction**\r\n\r\n\r\n\u003c!--A minimum code snippet required to reproduce the bug.\r\nPlease make sure to minimize the number of dependencies required, and provide\r\nany necessary plotted data.\r\nAvoid using threads, as Matplotlib is (explicitly) not thread-safe.--\u003e\r\nIn the notebook:\r\n```python\r\nimport ipywidgets as widget\r\nimport matplotlib.pyplot as plt\r\n%matplotlib widget\r\n\r\nout = widgets.Output()\r\n@out.capture()\r\ndef callback(event):\r\n print(event.button)\r\n \r\nplt.ioff(); fig,ax = plt.subplots(); plt.ion()\r\nfig.canvas.mpl_connect('button_press_event', callback)\r\nfs = 15\r\nax.text(0.1,0.1,'left click here', fontsize=fs)\r\nax.text(0.5,0.5,'middle click here', fontsize=fs)\r\nax.text(0.7,0.8,'right click here', fontsize=fs)\r\nwidgets.HBox([out,fig.canvas])\r\n```\r\n\r\n**Actual outcome**\r\n\r\n\u003c!--The output produced by the above code, which may be a screenshot, console output, etc.--\u003e\r\n\r\n\r\n\r\n**Expected outcome**\r\nin ipython it gives this\r\n\r\n\r\n\u003c!--A description of the expected outcome from the code snippet--\u003e\r\n\u003c!--If this used to work in an earlier version of Matplotlib, please note the version it used to work on--\u003e\r\n\r\n**Matplotlib version**\r\n\u003c!--Please specify your platform and versions of the relevant libraries you are using:--\u003e\r\n * Operating system: Ubuntu 20.04\r\n * Matplotlib version: 3.30\r\n * Matplotlib backend (`print(matplotlib.get_backend())`): 'module://ipympl.backend_nbagg'\r\n * Python version: 3.8.5\r\n * Jupyter version (if applicable): jupyterlab 2.2.0\r\n\r\n\r\n\u003c!--Please tell us how you installed matplotlib and python e.g., from source, pip, conda--\u003e\r\n\u003c!--If you installed from conda, please specify which channel you used if not the default--\u003e\r\n\r\n","author":{"url":"https://github.com/ianhi","@type":"Person","name":"ianhi"},"datePublished":"2020-08-04T20:41:04.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":1},"url":"https://github.com/18171/matplotlib/issues/18171"}
| route-pattern | /_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format) |
| route-controller | voltron_issues_fragments |
| route-action | issue_layout |
| fetch-nonce | v2:2a33c926-d78a-108c-ab37-6b752dfb707b |
| current-catalog-service-hash | 81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114 |
| request-id | ECFE:272982:526466:6B8183:6A52FA0A |
| html-safe-nonce | 1cb2111aa9d1cb65c3a6f22d7e9153b102be9623a95f2ebd5c0e26d42bf07b63 |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJFQ0ZFOjI3Mjk4Mjo1MjY0NjY6NkI4MTgzOjZBNTJGQTBBIiwidmlzaXRvcl9pZCI6Ijg2NTY1OTcxNjc3MzIwOTU0OTgiLCJyZWdpb25fZWRnZSI6ImlhZCIsInJlZ2lvbl9yZW5kZXIiOiJpYWQifQ== |
| visitor-hmac | 8d1cdc34880d09b40e7ad9a81deb8384d6cd23c0bc68c0b8fa2445dbc6b2b7b7 |
| hovercard-subject-tag | issue:673068195 |
| github-keyboard-shortcuts | repository,issues,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/matplotlib/matplotlib/18171/issue_layout |
| twitter:image | https://opengraph.githubassets.com/81ab90a1c86a070b38d3dad2b2fbddb4ed68ded7cc52a5cede0dc724081b5429/matplotlib/matplotlib/issues/18171 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/81ab90a1c86a070b38d3dad2b2fbddb4ed68ded7cc52a5cede0dc724081b5429/matplotlib/matplotlib/issues/18171 |
| og:image:alt | Bug report Bug summary The webAgg backend reports middle click events as right click events. This is caused by these lines: matplotlib/lib/matplotlib/backends/backend_webagg_core.py Lines 263 to 26... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| og:author:username | ianhi |
| hostname | github.com |
| expected-hostname | github.com |
| None | b9a586c06a05a7a86fc7e3f4dbd03e42f6869085879aa184aa6369456dbd50fb |
| turbo-cache-control | no-preview |
| go-import | github.com/matplotlib/matplotlib git https://github.com/matplotlib/matplotlib.git |
| octolytics-dimension-user_id | 215947 |
| octolytics-dimension-user_login | matplotlib |
| octolytics-dimension-repository_id | 1385122 |
| octolytics-dimension-repository_nwo | matplotlib/matplotlib |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 1385122 |
| octolytics-dimension-repository_network_root_nwo | matplotlib/matplotlib |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | 07a982c1d40157c619b364352b704c3ce66bb332 |
| ui-target | canary-2 |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width