diff --git a/base/web/space.go b/base/web/space.go index 4a1eb537..4000fd4d 100644 --- a/base/web/space.go +++ b/base/web/space.go @@ -165,6 +165,9 @@ func _space_handle(m *ice.Message, safe bool, name string, c *websocket.Conn) { } m.Info("what %v", msg.FormatStack(1, 100)) m.Info("what %v", msg.FormatChain()) + if kit.HasPrefixList(msg.Detailv(), "toast") { + break + } if msg.Option("space.noecho") == "true" { break } diff --git a/conf.go b/conf.go index 8d261a9f..2c30ebf6 100644 --- a/conf.go +++ b/conf.go @@ -326,6 +326,7 @@ const ( // CTX CTX_TITLE = "_title" CTX_TRANS = "_trans" CTX_ICONS = "_icons" + CTX_STYLE = "_style" ) const ( // LOG LOG_CMDS = "cmds" diff --git a/info.go b/info.go index 223bd0d1..890864f1 100644 --- a/info.go +++ b/info.go @@ -143,7 +143,7 @@ func MergeActions(arg ...Any) Actions { h.Hand = MergeHand(v.Hand, h.Hand) } else if k == CTX_EXIT { h.Hand = MergeHand(h.Hand, v.Hand) - } else if h.Name, h.Help, h.Icon = kit.Select(v.Name, h.Name), kit.Select(v.Help, h.Help), kit.Select(v.Icon, h.Icon); h.Hand == nil { + } else if h.Name, h.Help, h.Icon, h.Style = kit.Select(v.Name, h.Name), kit.Select(v.Help, h.Help), kit.Select(v.Icon, h.Icon), kit.Select(v.Style, h.Style); h.Hand == nil { h.Hand = v.Hand } } diff --git a/type.go b/type.go index 0be7bdd3..4fb2c6ff 100644 --- a/type.go +++ b/type.go @@ -170,6 +170,7 @@ func (c *Context) Merge(s *Context) *Context { } } kit.Value(cmd.Meta, kit.Keys(CTX_ICONS, sub), action.Icon) + kit.Value(cmd.Meta, kit.Keys(CTX_STYLE, sub), action.Style) if action.Hand == nil { continue }