forked from Silverfish/proton-bridge
GODT-1327: Reset cache path to default when disabling
This commit is contained in:
@ -48,6 +48,7 @@ type Bridge struct {
|
|||||||
clientManager pmapi.Manager
|
clientManager pmapi.Manager
|
||||||
updater Updater
|
updater Updater
|
||||||
versioner Versioner
|
versioner Versioner
|
||||||
|
cacheProvider CacheProvider
|
||||||
}
|
}
|
||||||
|
|
||||||
func New(
|
func New(
|
||||||
@ -87,6 +88,7 @@ func New(
|
|||||||
clientManager: clientManager,
|
clientManager: clientManager,
|
||||||
updater: updater,
|
updater: updater,
|
||||||
versioner: versioner,
|
versioner: versioner,
|
||||||
|
cacheProvider: cacheProvider,
|
||||||
}
|
}
|
||||||
|
|
||||||
if setting.GetBool(settings.FirstStartKey) {
|
if setting.GetBool(settings.FirstStartKey) {
|
||||||
@ -193,9 +195,6 @@ func (b *Bridge) SetKeychainApp(helper string) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (b *Bridge) EnableCache() error {
|
func (b *Bridge) EnableCache() error {
|
||||||
// Set this back to the default location before enabling.
|
|
||||||
b.settings.Set(settings.CacheLocationKey, "")
|
|
||||||
|
|
||||||
if err := b.Users.EnableCache(); err != nil {
|
if err := b.Users.EnableCache(); err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
@ -211,6 +210,8 @@ func (b *Bridge) DisableCache() error {
|
|||||||
}
|
}
|
||||||
|
|
||||||
b.settings.SetBool(settings.CacheEnabledKey, false)
|
b.settings.SetBool(settings.CacheEnabledKey, false)
|
||||||
|
// Reset back to the default location when disabling.
|
||||||
|
b.settings.Set(settings.CacheLocationKey, b.cacheProvider.GetDefaultMessageCacheDir())
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|||||||
@ -32,6 +32,7 @@ type Locator interface {
|
|||||||
type CacheProvider interface {
|
type CacheProvider interface {
|
||||||
GetIMAPCachePath() string
|
GetIMAPCachePath() string
|
||||||
GetDBDir() string
|
GetDBDir() string
|
||||||
|
GetDefaultMessageCacheDir() string
|
||||||
}
|
}
|
||||||
|
|
||||||
type SettingsProvider interface {
|
type SettingsProvider interface {
|
||||||
|
|||||||
@ -53,3 +53,7 @@ func (c *fakeCache) GetIMAPCachePath() string {
|
|||||||
func (c *fakeCache) GetTransferDir() string {
|
func (c *fakeCache) GetTransferDir() string {
|
||||||
return c.dir
|
return c.dir
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (c *fakeCache) GetDefaultMessageCacheDir() string {
|
||||||
|
return c.dir
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user