mirror of
https://github.com/stashapp/stash.git
synced 2025-12-18 04:44:37 +03:00
Improve Windows stash behaviour (#2543)
* Rename manager.instance to Manager * Show dialog message on fatal error on Windows * Hide console windows explicitly on icon launch Gets rid of the windowsgui flag, which causes all sorts of issues. Instead, checks if stash was launched from the icon, and if so hides the console. * Remove fixconsole * Add changelog entries
This commit is contained in:
@@ -53,11 +53,11 @@ func getScanPaths(inputPaths []string) []*models.StashConfig {
|
||||
|
||||
// ScanSubscribe subscribes to a notification that is triggered when a
|
||||
// scan or clean is complete.
|
||||
func (s *singleton) ScanSubscribe(ctx context.Context) <-chan bool {
|
||||
func (s *Manager) ScanSubscribe(ctx context.Context) <-chan bool {
|
||||
return s.scanSubs.subscribe(ctx)
|
||||
}
|
||||
|
||||
func (s *singleton) Scan(ctx context.Context, input models.ScanMetadataInput) (int, error) {
|
||||
func (s *Manager) Scan(ctx context.Context, input models.ScanMetadataInput) (int, error) {
|
||||
if err := s.validateFFMPEG(); err != nil {
|
||||
return 0, err
|
||||
}
|
||||
@@ -71,7 +71,7 @@ func (s *singleton) Scan(ctx context.Context, input models.ScanMetadataInput) (i
|
||||
return s.JobManager.Add(ctx, "Scanning...", &scanJob), nil
|
||||
}
|
||||
|
||||
func (s *singleton) Import(ctx context.Context) (int, error) {
|
||||
func (s *Manager) Import(ctx context.Context) (int, error) {
|
||||
config := config.GetInstance()
|
||||
metadataPath := config.GetMetadataPath()
|
||||
if metadataPath == "" {
|
||||
@@ -93,7 +93,7 @@ func (s *singleton) Import(ctx context.Context) (int, error) {
|
||||
return s.JobManager.Add(ctx, "Importing...", j), nil
|
||||
}
|
||||
|
||||
func (s *singleton) Export(ctx context.Context) (int, error) {
|
||||
func (s *Manager) Export(ctx context.Context) (int, error) {
|
||||
config := config.GetInstance()
|
||||
metadataPath := config.GetMetadataPath()
|
||||
if metadataPath == "" {
|
||||
@@ -114,7 +114,7 @@ func (s *singleton) Export(ctx context.Context) (int, error) {
|
||||
return s.JobManager.Add(ctx, "Exporting...", j), nil
|
||||
}
|
||||
|
||||
func (s *singleton) RunSingleTask(ctx context.Context, t Task) int {
|
||||
func (s *Manager) RunSingleTask(ctx context.Context, t Task) int {
|
||||
var wg sync.WaitGroup
|
||||
wg.Add(1)
|
||||
|
||||
@@ -126,7 +126,7 @@ func (s *singleton) RunSingleTask(ctx context.Context, t Task) int {
|
||||
return s.JobManager.Add(ctx, t.GetDescription(), j)
|
||||
}
|
||||
|
||||
func (s *singleton) Generate(ctx context.Context, input models.GenerateMetadataInput) (int, error) {
|
||||
func (s *Manager) Generate(ctx context.Context, input models.GenerateMetadataInput) (int, error) {
|
||||
if err := s.validateFFMPEG(); err != nil {
|
||||
return 0, err
|
||||
}
|
||||
@@ -142,16 +142,16 @@ func (s *singleton) Generate(ctx context.Context, input models.GenerateMetadataI
|
||||
return s.JobManager.Add(ctx, "Generating...", j), nil
|
||||
}
|
||||
|
||||
func (s *singleton) GenerateDefaultScreenshot(ctx context.Context, sceneId string) int {
|
||||
func (s *Manager) GenerateDefaultScreenshot(ctx context.Context, sceneId string) int {
|
||||
return s.generateScreenshot(ctx, sceneId, nil)
|
||||
}
|
||||
|
||||
func (s *singleton) GenerateScreenshot(ctx context.Context, sceneId string, at float64) int {
|
||||
func (s *Manager) GenerateScreenshot(ctx context.Context, sceneId string, at float64) int {
|
||||
return s.generateScreenshot(ctx, sceneId, &at)
|
||||
}
|
||||
|
||||
// generate default screenshot if at is nil
|
||||
func (s *singleton) generateScreenshot(ctx context.Context, sceneId string, at *float64) int {
|
||||
func (s *Manager) generateScreenshot(ctx context.Context, sceneId string, at *float64) int {
|
||||
if err := instance.Paths.Generated.EnsureTmpDir(); err != nil {
|
||||
logger.Warnf("failure generating screenshot: %v", err)
|
||||
}
|
||||
@@ -188,7 +188,7 @@ func (s *singleton) generateScreenshot(ctx context.Context, sceneId string, at *
|
||||
return s.JobManager.Add(ctx, fmt.Sprintf("Generating screenshot for scene id %s", sceneId), j)
|
||||
}
|
||||
|
||||
func (s *singleton) AutoTag(ctx context.Context, input models.AutoTagMetadataInput) int {
|
||||
func (s *Manager) AutoTag(ctx context.Context, input models.AutoTagMetadataInput) int {
|
||||
j := autoTagJob{
|
||||
txnManager: s.TxnManager,
|
||||
input: input,
|
||||
@@ -197,7 +197,7 @@ func (s *singleton) AutoTag(ctx context.Context, input models.AutoTagMetadataInp
|
||||
return s.JobManager.Add(ctx, "Auto-tagging...", &j)
|
||||
}
|
||||
|
||||
func (s *singleton) Clean(ctx context.Context, input models.CleanMetadataInput) int {
|
||||
func (s *Manager) Clean(ctx context.Context, input models.CleanMetadataInput) int {
|
||||
j := cleanJob{
|
||||
txnManager: s.TxnManager,
|
||||
input: input,
|
||||
@@ -207,7 +207,7 @@ func (s *singleton) Clean(ctx context.Context, input models.CleanMetadataInput)
|
||||
return s.JobManager.Add(ctx, "Cleaning...", &j)
|
||||
}
|
||||
|
||||
func (s *singleton) MigrateHash(ctx context.Context) int {
|
||||
func (s *Manager) MigrateHash(ctx context.Context) int {
|
||||
j := job.MakeJobExec(func(ctx context.Context, progress *job.Progress) {
|
||||
fileNamingAlgo := config.GetInstance().GetVideoFileNamingAlgorithm()
|
||||
logger.Infof("Migrating generated files for %s naming hash", fileNamingAlgo.String())
|
||||
@@ -255,7 +255,7 @@ func (s *singleton) MigrateHash(ctx context.Context) int {
|
||||
return s.JobManager.Add(ctx, "Migrating scene hashes...", j)
|
||||
}
|
||||
|
||||
func (s *singleton) StashBoxBatchPerformerTag(ctx context.Context, input models.StashBoxBatchPerformerTagInput) int {
|
||||
func (s *Manager) StashBoxBatchPerformerTag(ctx context.Context, input models.StashBoxBatchPerformerTagInput) int {
|
||||
j := job.MakeJobExec(func(ctx context.Context, progress *job.Progress) {
|
||||
logger.Infof("Initiating stash-box batch performer tag")
|
||||
|
||||
|
||||
Reference in New Issue
Block a user