Page MenuHome

Fix T69530: Remove Lag in File Browser
Needs ReviewPublic

Authored by Harley Acheson (harley) on Oct 21 2019, 8:04 PM.

Details

Summary

This fix might look funny as it is just removing everything from space_file init().

But the things in the spaceType init() callback are not called just during initialization, but is called all over, multiple times in a row, and all the time constantly while doing some things.

Every time you open a File Browser the following is done:

  • Emptying and Rebuilding Volumes and System Lists
  • Stop Job that validates bookmarks
  • Start Job that validates bookmarks
  • Emptying and Rebuilding Volumes and System Lists
  • Stop Job that validates bookmarks
  • Start Job that validates bookmarks
  • Emptying and Rebuilding Volumes and System Lists
  • Stop Job that validates bookmarks
  • Start Job that validates bookmarks
  • Emptying and Rebuilding Volumes and System Lists
  • Stop Job that validates bookmarks
  • Start Job that validates bookmarks

And then while just dragging the File Browser window around you get constant calls to do:

  • Emptying and Rebuilding Volumes and System Lists
  • Stop Job that validates bookmarks
  • Start Job that validates bookmarks
  • Emptying and Rebuilding Volumes and System Lists
  • Stop Job that validates bookmarks
  • Start Job that validates bookmarks
  • ....

None of these are necessary. The Volumes and Systems lists are initially populated elsewhere. And if you truly need to reload the lists and re-validate the items in the user bookmarks, these things are done when clicking the "refresh" button.

Diff Detail

Repository
rB Blender