> As for the singleton: I'd be fine with that or functions on PDFView that would also return promises and do the setting/getting.

@brendandahl The reason for the class-like implementation, is that it will be needed if we want the functionality of PR #3985. (If this should be singleton, I suppose that we would have to implement a "reload" function in `Preferences`, so that you can get the *current* preferences for the UI.)