-
Notifications
You must be signed in to change notification settings - Fork 440
fix: preserve node selection on right-click #7162
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
Conversation
Previously, right-clicking on a Vue node would deselect all other selected nodes because the pointerup event handler was calling toggleNodeSelectionAfterPointerUp regardless of which mouse button was released. This fix skips selection handling when the right mouse button (button 2) is released, allowing the context menu to operate on the existing selection.
📝 WalkthroughWalkthroughAdded a right-click guard to the node pointer-up handler to skip selection logic, and reformatted an error logging call in the app script (no functional change). Changes
✨ Finishing touches
🧪 Generate unit tests (beta)
📜 Recent review detailsConfiguration used: CodeRabbit UI Review profile: ASSERTIVE Plan: Pro 📒 Files selected for processing (1)
🧰 Additional context used📓 Path-based instructions (11)**/*.{vue,ts,tsx}📄 CodeRabbit inference engine (.cursorrules)
Files:
**/*.{ts,tsx,js}📄 CodeRabbit inference engine (.cursorrules)
Files:
**/*.{ts,tsx}📄 CodeRabbit inference engine (.cursorrules)
Files:
**/*.{ts,tsx,js,vue}📄 CodeRabbit inference engine (.cursorrules)
Files:
src/**/*.{vue,ts}📄 CodeRabbit inference engine (.github/copilot-instructions.md)
Files:
src/**/*.ts📄 CodeRabbit inference engine (.github/copilot-instructions.md)
Files:
**/*.{ts,tsx,js,jsx,vue}📄 CodeRabbit inference engine (CLAUDE.md)
Files:
**/*.{ts,tsx,vue}📄 CodeRabbit inference engine (CLAUDE.md)
Files:
**/*.ts📄 CodeRabbit inference engine (CLAUDE.md)
Files:
src/**/*.{ts,tsx,vue}📄 CodeRabbit inference engine (src/CLAUDE.md)
Files:
src/**/*.{vue,ts,tsx}📄 CodeRabbit inference engine (src/CLAUDE.md)
Files:
🧠 Learnings (4)📚 Learning: 2025-11-24T19:47:34.324ZApplied to files:
📚 Learning: 2025-11-24T19:46:52.279ZApplied to files:
📚 Learning: 2025-11-24T19:47:02.860ZApplied to files:
📚 Learning: 2025-11-24T19:47:14.779ZApplied to files:
🔇 Additional comments (1)
Comment |
🎭 Playwright Test Results⏰ Completed at: 12/04/2025, 09:11:10 PM UTC 📈 Summary
📊 Test Reports by Browser
🎉 Click on the links above to view detailed test results for each browser configuration. |
🎨 Storybook Build Status✅ Build completed successfully! ⏰ Completed at: 12/04/2025, 09:02:21 PM UTC 🔗 Links🎉 Your Storybook is ready for review! |
Bundle Size ReportSummary
Category Glance Per-category breakdownApp Entry Points — 3.2 MB (baseline 3.2 MB) • 🔴 +24 BMain entry bundles and manifests
Status: 3 added / 3 removed Graph Workspace — 972 kB (baseline 972 kB) • 🔴 +36 BGraph editor runtime, canvas, workflow orchestration
Status: 1 added / 1 removed Views & Navigation — 6.54 kB (baseline 6.54 kB) • ⚪ 0 BTop-level views, pages, and routed surfaces
Status: 1 added / 1 removed Panels & Settings — 298 kB (baseline 298 kB) • ⚪ 0 BConfiguration panels, inspectors, and settings screens
Status: 6 added / 6 removed UI Components — 173 kB (baseline 173 kB) • ⚪ 0 BReusable component library chunks
Status: 6 added / 6 removed Data & Services — 12.5 kB (baseline 12.5 kB) • ⚪ 0 BStores, services, APIs, and repositories
Status: 2 added / 2 removed Utilities & Hooks — 2.94 kB (baseline 2.94 kB) • ⚪ 0 BHelpers, composables, and utility bundles
Status: 1 added / 1 removed Vendor & Third-Party — 8.56 MB (baseline 8.56 MB) • ⚪ 0 BExternal libraries and shared vendor chunks
Other — 3.81 MB (baseline 3.81 MB) • ⚪ 0 BBundles that do not match a named category
Status: 17 added / 17 removed |
🔧 Auto-fixes AppliedThis PR has been automatically updated to fix linting and formatting issues.
Changes made:
|
Previously, right-clicking on a Vue node would deselect all other selected nodes because the pointerup event handler was calling toggleNodeSelectionAfterPointerUp regardless of which mouse button was released. This fix skips selection handling when the right mouse button (button 2) is released, allowing the context menu to operate on the existing selection. ## Summary - Fixes right-click deselecting all selected nodes when using Vue node rendering - Now right-clicking preserves the existing selection, allowing context menu actions on multiple nodes ## Problem When multiple nodes were selected and user right-clicked on one of them, the `pointerup` event handler would call `toggleNodeSelectionAfterPointerUp`, which deselected everything except the clicked node. This broke multi-node context menu operations. ## Solution Skip selection handling in `onPointerup` when `event.button === 2` (right-click). The context menu handler manages selection independently fix #7136 Before https://github.com/user-attachments/assets/23ac5e03-c464-44b7-8950-67c14da9e02b After https://github.com/user-attachments/assets/9d1bd6a8-6386-442b-9dc4-6bc8fbe4a0a8 ┆Issue is synchronized with this [Notion page](https://www.notion.so/PR-7162-fix-preserve-node-selection-on-right-click-2bf6d73d365081acaf75f2fc845bbffb) by [Unito](https://www.unito.io) --------- Co-authored-by: GitHub Action <action@github.com>
Backport of #7162 to `core/1.33` Automatically created by backport workflow. ┆Issue is synchronized with this [Notion page](https://www.notion.so/PR-7262-backport-core-1-33-fix-preserve-node-selection-on-right-click-2c46d73d36508198a959dd8b2cd99fd8) by [Unito](https://www.unito.io) Co-authored-by: Johnpaul Chiwetelu <49923152+Myestery@users.noreply.github.com> Co-authored-by: GitHub Action <action@github.com>
Previously, right-clicking on a Vue node would deselect all other selected nodes because the pointerup event handler was calling toggleNodeSelectionAfterPointerUp regardless of which mouse button was released.
This fix skips selection handling when the right mouse button (button 2) is released, allowing the context menu to operate on the existing selection.
Summary
actions on multiple nodes
Problem
When multiple nodes were selected and user right-clicked on one of them, the
pointerupevent handler would calltoggleNodeSelectionAfterPointerUp, whichdeselected everything except the clicked node. This broke multi-node context menu
operations.
Solution
Skip selection handling in
onPointerupwhenevent.button === 2(right-click).The context menu handler manages selection independently
fix #7136
Before
Recording.2025-12-04.213908.mp4
After
Screen.Recording.2025-12-04.at.21.34.51.mov
┆Issue is synchronized with this Notion page by Unito