diff --git a/basis/ui/gadgets/frames/frames.factor b/basis/ui/gadgets/frames/frames.factor index 2005fefed7..b5c3736896 100644 --- a/basis/ui/gadgets/frames/frames.factor +++ b/basis/ui/gadgets/frames/frames.factor @@ -1,4 +1,4 @@ -! Copyright (C) 2005, 2007 Slava Pestov. +! Copyright (C) 2005, 2008 Slava Pestov. ! See http://factorcode.org/license.txt for BSD license. USING: arrays generic kernel math namespaces sequences words splitting grouping math.vectors ui.gadgets.grids ui.gadgets diff --git a/basis/ui/gadgets/viewports/viewports.factor b/basis/ui/gadgets/viewports/viewports.factor index 5f714a526b..f01ef3bf42 100644 --- a/basis/ui/gadgets/viewports/viewports.factor +++ b/basis/ui/gadgets/viewports/viewports.factor @@ -21,9 +21,11 @@ TUPLE: viewport < gadget ; swap add-gadget ; M: viewport layout* - dup rect-dim viewport-gap 2 v*n v- - over gadget-child pref-dim vmax - swap gadget-child (>>dim) ; + [ + [ rect-dim viewport-gap 2 v*n v- ] + [ gadget-child pref-dim ] + bi vmax + ] [ gadget-child ] bi (>>dim) ; M: viewport focusable-child* gadget-child ; diff --git a/basis/ui/tools/search/search.factor b/basis/ui/tools/search/search.factor index b88fe8454e..3081eb1cdc 100644 --- a/basis/ui/tools/search/search.factor +++ b/basis/ui/tools/search/search.factor @@ -48,7 +48,7 @@ search-field H{ } set-gestures : ( live-search producer -- live-search filter ) - >r dup field>> model>> ! live-search model :: producer + >r dup field>> model>> ui-running? [ 1/5 seconds ] when [ "\n" join ] r> append ; diff --git a/basis/ui/ui.factor b/basis/ui/ui.factor index f561f3cd49..db0ac9a624 100644 --- a/basis/ui/ui.factor +++ b/basis/ui/ui.factor @@ -129,8 +129,8 @@ SYMBOL: ui-hook : notify ( gadget -- ) dup graft-state>> - dup first { f f } { t t } ? - pick (>>graft-state) { + [ first { f f } { t t } ? >>graft-state ] keep + { { { f t } [ dup activate-control graft* ] } { { t f } [ dup deactivate-control ungraft* ] } } case ;