Canvas - option to reload file(s) like images

Use case or problem

I’m embedding images in my canvas which I might be editing in another application. It would be nice to be able to reload an image, or have it auto-detect the change.

Currently new changes aren’t reflected until closing/reopening, or navigating away and back.

Proposed solution

Could have a right-click option to reload the image. Even better would be detecting modified file and auto-reloading.

Current workaround (optional)

Close the canvas and open it again. Or in the same tab navigate away and then back.

You can also edit the canvas json file to trigger a reload of the image:

  • change the id string of the item with the image (e.g. change one character)
  • change the file path of the image (e.g. incorrect path) save it, then change it back, and save it again
1 Like

This would be so helpful. I’m glad you created a request. For some reason, I had initially kind of assumed this functionality (auto update) would be forthcoming because of the visual nature of canvas. After seeing this request, I am reminded of how much time I’d save as well as how improved my workflow experience would be. I like to canvas while generating images in other applications, so this feature would really mean a lot.

Thanks so much!

1 Like

another workaround I just found was testing if changes to the .canvas json file are auto-reloaded. It noticed that indeed any changes to the file were reloaded.

To get an image file to reload, any of the following worked:

  • change the id string (e.g. change one character)
  • change the file path (e.g. incorrect path) save it, then change it back, and save it again

This seems already pretty useful to be able to use a script to manipulate the canvas in different ways, or even just to refresh an image when it changes.


I would also like this to be possible from the Obsidian API. I’m trying to build something on top of Canvas, and some changes are immediately visible, and some require the workaround described above.

Could you share what methor you use (if you have one) for changing the id or path that’s automated via script? I’ve tried using a .ahk script to rename the canvas to something else and then back to the original name but that doesn’t quite work out.

I’ve been using the command Reload app without saving but I was looking for an option that doesn’t require me to wait out the loading screen.