From 6819fcda4c294866c448875ba6d3da161286a0a6 Mon Sep 17 00:00:00 2001 From: Sam Anklesaria Date: Mon, 1 Jun 2009 07:39:07 -0500 Subject: [PATCH] switch models reupdate on second switch --- extra/ui/frp/signals/signals.factor | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/extra/ui/frp/signals/signals.factor b/extra/ui/frp/signals/signals.factor index 04364536e6..63a5f9c1f1 100644 --- a/extra/ui/frp/signals/signals.factor +++ b/extra/ui/frp/signals/signals.factor @@ -33,7 +33,7 @@ M: updater-model (model-changed) tuck updates>> = TUPLE: switch-model < multi-model original switcher on ; M: switch-model model-changed 2dup switcher>> = - [ [ value>> ] dip over [ t >>on set-model ] [ nip f swap (>>on) ] if ] + [ [ value>> ] dip over [ t >>on set-model ] [ nip [ original>> ] keep f >>on model-changed ] if ] [ dup on>> [ 2drop ] [ [ value>> ] dip over [ set-model ] [ 2drop ] if ] if ] if ; : ( signal1 signal2 -- signal' ) swap [ 2array switch-model ] 2keep [ >>original ] [ >>switcher ] bi* ;