mirror of
https://github.com/nwg-piotr/nwg-drawer.git
synced 2024-10-03 16:57:13 +03:00
Added support for Hidden, OnlyShowIn and NotShowIn
This commit is contained in:
parent
d8e7e0f6c2
commit
54553ffae1
@ -54,7 +54,34 @@ func parseDesktopEntry(id string, in io.Reader) (entry desktopEntry, err error)
|
||||
case "Terminal":
|
||||
entry.Terminal, _ = strconv.ParseBool(value)
|
||||
case "NoDisplay":
|
||||
entry.NoDisplay, _ = strconv.ParseBool(value)
|
||||
if !entry.NoDisplay {
|
||||
entry.NoDisplay, _ = strconv.ParseBool(value)
|
||||
}
|
||||
case "Hidden":
|
||||
if !entry.NoDisplay {
|
||||
entry.NoDisplay, _ = strconv.ParseBool(value)
|
||||
}
|
||||
case "OnlyShowIn":
|
||||
if !entry.NoDisplay {
|
||||
entry.NoDisplay = true
|
||||
currentDesktop := os.Getenv("XDG_CURRENT_DESKTOP")
|
||||
if currentDesktop != "" {
|
||||
for _, ele := range strings.Split(value, ";") {
|
||||
if ele == currentDesktop && ele != "" {
|
||||
entry.NoDisplay = false
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
case "NotShowIn":
|
||||
currentDesktop := os.Getenv("XDG_CURRENT_DESKTOP")
|
||||
if !entry.NoDisplay && currentDesktop != "" {
|
||||
for _, ele := range strings.Split(value, ";") {
|
||||
if ele == currentDesktop && ele != "" {
|
||||
entry.NoDisplay = true
|
||||
}
|
||||
}
|
||||
}
|
||||
case "Exec":
|
||||
entry.Exec = cleanexec.Replace(value)
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user