Canvas- Auto-change connection points when connected items are moved

Use case or problem

When you drag items in relation to its connected items, the connection lines can get ‘messy’ (having to pass through items to reach connection points.)

Proposed solution

An option to have Obsidian automatically change connection points based on where items are located in relation to each other. For example, item that is moved from above/right of a connected item to below/left of it will have the connection points changed for the straightest, most direct connection possible (for all connection points of course.)

This could be system-wide, canvas-wide, or separate setting for each item (with ability to set default behavior.)

I am finding Canvas to be a great mind map tool within Obsidian, so being able to frictionlessly work with cards would be great.

Current workaround (optional)

Manually change connection points when you move around items with connections.


I also felt this to be one of the main sources of friction when using canvas to create something from the ground up. The proposed solution is exactly what I thought to be a good solution and it can significantly reduce the friction associated with restructuring a canvas.

Found these to FRs that pretty much cover the same underlying issue.


This method will lead to new problems. What if I want to keep the connection point at a certain location? Sometimes it’s frustrating that the location of the connection can’t be controlled

Yea, I agree. That scenario can be equally frustrating as well. Giving flexibility for the user to select the required behavior through some settings is important. Plus, I think, if the user can tell Obsidian, through some modifier Keys (for example, Alt + move or Ctrl + Shift + move), what type of move the user wants, it can completely solve the problem.