Bill Filler wrote:
Hello, I've written a custom protocol handler that is being used in my embedding application. Is there a way for the protocol handler to mark it's returned content stale or expired so that when the content is accessed via nsIWebNavigation::goBack() and goForward() it will always be reloaded?
Hrm, true, bfcache caused that problem... Before it, protocol handlers had to explicitly handle cache stuff.
Maybe bfcache should only be enabled for channels that QI to nsICachingChannel; it might be a good idea to file a bug about that.
So my pages always show up in the history correctly, but never get reloaded when I use the back/forward mechanisms, instead the cached version is displayed.
Urg, apparently this code just always caches all non-HTTP channels. That kind of sucks.
I guess the only solution that works in existing versions is to implement nsIHttpChannel and return true from isNoStoreResponse. This is not a great solution though. You should file a bug on providing a better one, maybe that'd just be what I suggested above (make bfcache only cache documents where the channel implements nsICachingChannel)
_______________________________________________ dev-embedding mailing list [email protected] https://lists.mozilla.org/listinfo/dev-embedding
