| Copyright | (C) 2016-2026 David M. Johnson |
|---|---|
| License | BSD3-style (see the file LICENSE) |
| Maintainer | David M. Johnson <code@dmj.io> |
| Stability | experimental |
| Portability | non-portable |
| Safe Haskell | None |
| Language | Haskell2010 |
Miso.Native.X.Element.Refresh.Event
Description
Since: 1.13.0.0
Synopsis
- onHeaderOffset :: (HeaderOffsetEvent -> action) -> Attribute model action
- onHeaderOffsetWith :: (HeaderOffsetEvent -> DOMRef -> action) -> Attribute model action
- onHeaderOffsetMain :: (HeaderOffsetEvent -> action) -> EventHandler model action
- onHeaderOffsetMainWith :: (HeaderOffsetEvent -> model -> DOMRef -> action) -> EventHandler model action
- onRefreshStateChange :: (RefreshStateChangeEvent -> action) -> Attribute model action
- onRefreshStateChangeWith :: (RefreshStateChangeEvent -> DOMRef -> action) -> Attribute model action
- onRefreshStateChangeMain :: (RefreshStateChangeEvent -> action) -> EventHandler model action
- onRefreshStateChangeMainWith :: (RefreshStateChangeEvent -> model -> DOMRef -> action) -> EventHandler model action
- onStartRefresh :: (StartRefreshEvent -> action) -> Attribute model action
- onStartRefreshWith :: (StartRefreshEvent -> DOMRef -> action) -> Attribute model action
- onStartRefreshMain :: (StartRefreshEvent -> action) -> EventHandler model action
- onStartRefreshMainWith :: (StartRefreshEvent -> model -> DOMRef -> action) -> EventHandler model action
- data HeaderOffsetEvent = HeaderOffsetEvent {}
- newtype RefreshStateChangeEvent = RefreshStateChangeEvent {}
- data RefreshState
- newtype StartRefreshEvent = StartRefreshEvent {}
- headerOffsetDecoder :: Decoder HeaderOffsetEvent
- refreshStateChangeDecoder :: Decoder RefreshStateChangeEvent
- startRefreshDecoder :: Decoder StartRefreshEvent
- refreshEvents :: Events
Events
onHeaderOffset :: (HeaderOffsetEvent -> action) -> Attribute model action Source #
https://lynxjs.org/api/elements/built-in/refresh.html#bindheaderoffset
Triggered during movement while the <refresh-header> is exposed.
onHeaderOffsetWith :: (HeaderOffsetEvent -> DOMRef -> action) -> Attribute model action Source #
Like onHeaderOffset, but the handler also receives the target element's DOMRef.
Use for main-thread (MTS) handlers that imperatively mutate the element.
onHeaderOffsetMain :: (HeaderOffsetEvent -> action) -> EventHandler model action Source #
Like onHeaderOffset, but dispatched on the Lynx main thread (MTS).
Runs imperatively on the MTS (no VDOM diff). Meant to be used with
-XStaticPointers.
data Action = Offset HeaderOffsetEvent view_ [ event (static (onHeaderOffsetMain Offset)) ] [ "some view" ]
onHeaderOffsetMainWith :: (HeaderOffsetEvent -> model -> DOMRef -> action) -> EventHandler model action Source #
Like onHeaderOffsetMain, but the handler also receives read-only access to
the model and the target element's DOMRef (for imperative MTS mutation).
data Action = Offset HeaderOffsetEvent Model DOMRef view_ [ event (static (onHeaderOffsetMainWith Offset)) ] [ "some view" ]
onRefreshStateChange :: (RefreshStateChangeEvent -> action) -> Attribute model action Source #
https://lynxjs.org/api/elements/built-in/refresh.html#bindrefreshstatechange
Triggered when the <refresh-header> state changes.
onRefreshStateChangeWith :: (RefreshStateChangeEvent -> DOMRef -> action) -> Attribute model action Source #
Like onRefreshStateChange, but the handler also receives the target element's DOMRef.
Use for main-thread (MTS) handlers that imperatively mutate the element.
onRefreshStateChangeMain :: (RefreshStateChangeEvent -> action) -> EventHandler model action Source #
Like onRefreshStateChange, but dispatched on the Lynx main thread (MTS).
Runs imperatively on the MTS (no VDOM diff). Meant to be used with
-XStaticPointers.
data Action = StateChanged RefreshStateChangeEvent view_ [ event (static (onRefreshStateChangeMain StateChanged)) ] [ "some view" ]
onRefreshStateChangeMainWith :: (RefreshStateChangeEvent -> model -> DOMRef -> action) -> EventHandler model action Source #
Like onRefreshStateChangeMain, but the handler also receives read-only
access to the model and the target element's DOMRef (for imperative MTS
mutation).
data Action = StateChanged RefreshStateChangeEvent Model DOMRef view_ [ event (static (onRefreshStateChangeMainWith StateChanged)) ] [ "some view" ]
onStartRefresh :: (StartRefreshEvent -> action) -> Attribute model action Source #
https://lynxjs.org/api/elements/built-in/refresh.html#bindstartrefresh
Triggered when the pull threshold is reached or autoStartRefresh is called.
onStartRefreshWith :: (StartRefreshEvent -> DOMRef -> action) -> Attribute model action Source #
Like onStartRefresh, but the handler also receives the target element's DOMRef.
Use for main-thread (MTS) handlers that imperatively mutate the element.
onStartRefreshMain :: (StartRefreshEvent -> action) -> EventHandler model action Source #
Like onStartRefresh, but dispatched on the Lynx main thread (MTS).
Runs imperatively on the MTS (no VDOM diff). Meant to be used with
-XStaticPointers.
data Action = Started StartRefreshEvent view_ [ event (static (onStartRefreshMain Started)) ] [ "some view" ]
onStartRefreshMainWith :: (StartRefreshEvent -> model -> DOMRef -> action) -> EventHandler model action Source #
Like onStartRefreshMain, but the handler also receives read-only access to
the model and the target element's DOMRef (for imperative MTS mutation).
data Action = Started StartRefreshEvent Model DOMRef view_ [ event (static (onStartRefreshMainWith Started)) ] [ "some view" ]
Types
data HeaderOffsetEvent Source #
Payload of the bindheaderoffset event.
Constructors
| HeaderOffsetEvent | |
Fields
| |
Instances
| Show HeaderOffsetEvent Source # | |
Defined in Miso.Native.X.Element.Refresh.Event Methods showsPrec :: Int -> HeaderOffsetEvent -> ShowS # show :: HeaderOffsetEvent -> String # showList :: [HeaderOffsetEvent] -> ShowS # | |
| Eq HeaderOffsetEvent Source # | |
Defined in Miso.Native.X.Element.Refresh.Event Methods (==) :: HeaderOffsetEvent -> HeaderOffsetEvent -> Bool # (/=) :: HeaderOffsetEvent -> HeaderOffsetEvent -> Bool # | |
newtype RefreshStateChangeEvent Source #
Payload of the bindrefreshstatechange event.
Constructors
| RefreshStateChangeEvent | |
Fields
| |
Instances
| Show RefreshStateChangeEvent Source # | |
Defined in Miso.Native.X.Element.Refresh.Event Methods showsPrec :: Int -> RefreshStateChangeEvent -> ShowS # show :: RefreshStateChangeEvent -> String # showList :: [RefreshStateChangeEvent] -> ShowS # | |
| Eq RefreshStateChangeEvent Source # | |
Defined in Miso.Native.X.Element.Refresh.Event Methods (==) :: RefreshStateChangeEvent -> RefreshStateChangeEvent -> Bool # (/=) :: RefreshStateChangeEvent -> RefreshStateChangeEvent -> Bool # | |
data RefreshState Source #
The state of a <refresh-header>, mirrored from Lynx's RefreshState enum.
Since: 1.13.0.0
Constructors
| Idle | |
| OverDragRelease | |
| Refreshing |
Instances
| Show RefreshState Source # | |
Defined in Miso.Native.X.Element.Refresh.Event Methods showsPrec :: Int -> RefreshState -> ShowS # show :: RefreshState -> String # showList :: [RefreshState] -> ShowS # | |
| Eq RefreshState Source # | |
Defined in Miso.Native.X.Element.Refresh.Event | |
| FromJSON RefreshState Source # | Numbering matches Lynx's |
Defined in Miso.Native.X.Element.Refresh.Event | |
newtype StartRefreshEvent Source #
Payload of the bindstartrefresh event.
Constructors
| StartRefreshEvent | |
Instances
| Show StartRefreshEvent Source # | |
Defined in Miso.Native.X.Element.Refresh.Event Methods showsPrec :: Int -> StartRefreshEvent -> ShowS # show :: StartRefreshEvent -> String # showList :: [StartRefreshEvent] -> ShowS # | |
| Eq StartRefreshEvent Source # | |
Defined in Miso.Native.X.Element.Refresh.Event Methods (==) :: StartRefreshEvent -> StartRefreshEvent -> Bool # (/=) :: StartRefreshEvent -> StartRefreshEvent -> Bool # | |
Decoders
headerOffsetDecoder :: Decoder HeaderOffsetEvent Source #
Decoder producing a HeaderOffsetEvent from the raw Lynx event payload.
Pass it to on / onMain when writing a handler by
hand; the on* helpers in this module already use it.
Since: 1.13.0.0
refreshStateChangeDecoder :: Decoder RefreshStateChangeEvent Source #
Decoder producing a RefreshStateChangeEvent from the raw Lynx event payload.
Pass it to on / onMain when writing a handler by
hand; the on* helpers in this module already use it.
Since: 1.13.0.0
startRefreshDecoder :: Decoder StartRefreshEvent Source #
Decoder producing a StartRefreshEvent from the raw Lynx event payload.
Pass it to on / onMain when writing a handler by
hand; the on* helpers in this module already use it.
Since: 1.13.0.0