Skip to content

Commit aa3b030

Browse files
committed
Add CLI flag to start app minimized
1 parent 04f744c commit aa3b030

File tree

3 files changed

+21
-10
lines changed

3 files changed

+21
-10
lines changed

backend/app.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -537,6 +537,8 @@ func (a *App) checkFlagsAndSendIPCMsg(cli *ipc.Client) error {
537537
return cli.SeekBackOrPrevious()
538538
case *FlagNext:
539539
return cli.SeekNext()
540+
case *FlagShow:
541+
return cli.Show()
540542
case VolumeCLIArg >= 0:
541543
return cli.SetVolume(VolumeCLIArg)
542544
case VolumePctCLIArg != 0:

backend/cmdlineoptions.go

Lines changed: 14 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -12,13 +12,15 @@ var (
1212
SeekByCLIArg float64 = 0
1313
VolumePctCLIArg float64 = 0
1414

15-
FlagPlay = flag.Bool("play", false, "unpause or begin playback")
16-
FlagPause = flag.Bool("pause", false, "pause playback")
17-
FlagPlayPause = flag.Bool("play-pause", false, "toggle play/pause state")
18-
FlagPrevious = flag.Bool("previous", false, "seek to previous track or beginning of current")
19-
FlagNext = flag.Bool("next", false, "seek to next track")
20-
FlagVersion = flag.Bool("version", false, "print app version and exit")
21-
FlagHelp = flag.Bool("help", false, "print command line options and exit")
15+
FlagPlay = flag.Bool("play", false, "unpause or begin playback")
16+
FlagPause = flag.Bool("pause", false, "pause playback")
17+
FlagPlayPause = flag.Bool("play-pause", false, "toggle play/pause state")
18+
FlagPrevious = flag.Bool("previous", false, "seek to previous track or beginning of current")
19+
FlagNext = flag.Bool("next", false, "seek to next track")
20+
FlagStartMinimized = flag.Bool("start-minimized", false, "start app minimized")
21+
FlagShow = flag.Bool("show", false, "show minimized app")
22+
FlagVersion = flag.Bool("version", false, "print app version and exit")
23+
FlagHelp = flag.Bool("help", false, "print command line options and exit")
2224
)
2325

2426
func init() {
@@ -50,8 +52,11 @@ func init() {
5052

5153
func HaveCommandLineOptions() bool {
5254
visitedAny := false
53-
flag.Visit(func(*flag.Flag) {
54-
visitedAny = true
55+
flag.Visit(func(f *flag.Flag) {
56+
// We skip `start-minimized` because it should't send an IPC message.
57+
if f.Name != "start-minimized" {
58+
visitedAny = true
59+
}
5560
})
5661
return visitedAny
5762
}

main.go

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,11 @@ func main() {
103103
})
104104
fyneApp.Lifecycle().SetOnEnteredForeground(windowStartupTasks)
105105

106-
mainWindow.ShowAndRun()
106+
if *backend.FlagStartMinimized {
107+
fyneApp.Run()
108+
} else {
109+
mainWindow.ShowAndRun()
110+
}
107111

108112
log.Println("Running shutdown tasks...")
109113
myApp.Shutdown()

0 commit comments

Comments
 (0)