@@ -52,16 +52,21 @@ type VtyApp t m =
5252 , Ref m ~ IORef
5353 , Ref (HostFrame t) ~ IORef
5454 , MonadRef (HostFrame t)
55− , NotReady t (PerformEventT t m)
55+ , NotReady t m
56+ , TriggerEvent t m
57+ , PostBuild t m
58+ , PerformEvent t m
59+ , MonadIO m
60+ , MonadIO (Performable m)
5661 )
5762 => Event t (V.Event)
5863 -- ^ Vty input events.
59− -> TriggerEventT t (PostBuildT t (PerformEventT t m)) (VtyResult t)
60− -- ^ The output of the 'VtyApp'. The application runs in a context that
61− -- allows new events to be created and triggered ('TriggerEventT'), provides
62− -- access to an event that fires immediately upon app instantiation
63− -- ('PostBuildT'), and allows actions to be run upon occurrences
64− -- of events ('PerformEventT').
64+ -> m (VtyResult t)
65+ -- ^ The output of the 'VtyApp'. The application runs in a context that,
66+ -- among other things, allows new events to be created and triggered
67+ -- ('TriggerEvent'), provides access to an event that fires immediately upon
68+ -- app instantiation ('PostBuild'), and allows actions to be run upon
69+ -- occurrences of events ('PerformEvent').
6570
6671-- | Runs a 'VtyApp' in a given 'Vty'.
6772runVtyAppWith
@@ -72,9 +77,10 @@ runVtyAppWith
7277 -> IO ()
7378runVtyAppWith vty vtyGuest =
7479 -- We are using the 'Spider' implementation of reflex. Running the host
75− -- allows us to take actions on the FRP timeline. For more information, see
76− -- 'Reflex.Spider.Internal.runSpiderHost'.
77− runSpiderHost $ do
80+ -- allows us to take actions on the FRP timeline. The scoped type signature
81+ -- specifies that our host runs on the Global timeline.
82+ -- For more information, see 'Reflex.Spider.Internal.runSpiderHost'.
83+ (runSpiderHost :: SpiderHost Global a -> IO a) $ do
7884
7985 -- Create an 'Event' and a "trigger" reference for that event. The trigger
8086 -- reference can be used to determine whether anyone is "subscribed" to