Update application.go code

This commit is contained in:
Sasha Koshka 2024-07-26 17:53:48 -04:00
parent 6451050fd3
commit f22c268a10

View File

@ -8,7 +8,6 @@ import "strings"
import "net/url" import "net/url"
import "git.tebibyte.media/tomo/tomo" import "git.tebibyte.media/tomo/tomo"
import "git.tebibyte.media/tomo/objects" import "git.tebibyte.media/tomo/objects"
import "git.tebibyte.media/tomo/tomo/canvas"
import "git.tebibyte.media/tomo/nasin/internal/registrar" import "git.tebibyte.media/tomo/nasin/internal/registrar"
// Application represents an application object. // Application represents an application object.
@ -202,22 +201,16 @@ func applicationOpenUrls (application Application, args ...string) {
} }
func setApplicationWindowIcon (window tomo.Window, description ApplicationDescription) { func setApplicationWindowIcon (window tomo.Window, description ApplicationDescription) {
allSizes := func (icon tomo.Icon) (sizes []canvas.Texture) { iconExists := func (icon tomo.Icon) bool {
small := icon.Texture(tomo.IconSizeSmall) return icon.Texture(tomo.IconSizeMedium) != nil
medium := icon.Texture(tomo.IconSizeMedium)
large := icon.Texture(tomo.IconSizeLarge)
if small != nil { sizes = append(sizes, small) }
if medium != nil { sizes = append(sizes, medium) }
if large != nil { sizes = append(sizes, large) }
return sizes
} }
if sizes := allSizes(tomo.Icon(description.ID)); len(sizes) > 0 { if iconExists(tomo.Icon(description.ID)) {
window.SetIcon(sizes...) window.SetIcon(tomo.Icon(description.ID))
return return
} }
if sizes := allSizes(description.Role.Icon()); len(sizes) > 0 { if iconExists(description.Role.Icon()) {
window.SetIcon(sizes...) window.SetIcon(description.Role.Icon())
return return
} }
} }