USING: kernel namespaces quotations arrays assocs sequences mortar slot-accessors x x.widgets.wm.menu x.widgets.wm.frame vars ; IN: x.widgets.wm.unmapped-frames-menu ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! SYMBOL: { } define-simple-class ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! VAR: unmapped-frames-menu : create-unmapped-frames-menu ( -- ) new-empty <- keymenu-init 1 <-- set-border-width >unmapped-frames-menu ; : unmapped-frames ( -- seq ) dpy get $window-table values [ is? ] filter [ <- mapped? not ] filter ; { "refresh" !( menu -- menu ) [ unmapped-frames dup [ $child <- fetch-name ] map swap [ [ <- map ] curry ] map [ 2array ] 2map >>items dup <- calc-size <-- resize ] "popup" !( menu -- menu ) [ <- refresh <- wm-menu-popup ] } add-methods