{-# LANGUAGE TypeApplications #-}
#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif
module GI.WebKit2.Objects.InputMethodContext
(
InputMethodContext(..) ,
IsInputMethodContext ,
toInputMethodContext ,
#if defined(ENABLE_OVERLOADING)
ResolveInputMethodContextMethod ,
#endif
#if defined(ENABLE_OVERLOADING)
InputMethodContextFilterKeyEventMethodInfo,
#endif
inputMethodContextFilterKeyEvent ,
#if defined(ENABLE_OVERLOADING)
InputMethodContextGetInputHintsMethodInfo,
#endif
inputMethodContextGetInputHints ,
#if defined(ENABLE_OVERLOADING)
InputMethodContextGetInputPurposeMethodInfo,
#endif
inputMethodContextGetInputPurpose ,
#if defined(ENABLE_OVERLOADING)
InputMethodContextGetPreeditMethodInfo ,
#endif
inputMethodContextGetPreedit ,
#if defined(ENABLE_OVERLOADING)
InputMethodContextNotifyCursorAreaMethodInfo,
#endif
inputMethodContextNotifyCursorArea ,
#if defined(ENABLE_OVERLOADING)
InputMethodContextNotifyFocusInMethodInfo,
#endif
inputMethodContextNotifyFocusIn ,
#if defined(ENABLE_OVERLOADING)
InputMethodContextNotifyFocusOutMethodInfo,
#endif
inputMethodContextNotifyFocusOut ,
#if defined(ENABLE_OVERLOADING)
InputMethodContextNotifySurroundingMethodInfo,
#endif
inputMethodContextNotifySurrounding ,
#if defined(ENABLE_OVERLOADING)
InputMethodContextResetMethodInfo ,
#endif
inputMethodContextReset ,
#if defined(ENABLE_OVERLOADING)
InputMethodContextSetEnablePreeditMethodInfo,
#endif
inputMethodContextSetEnablePreedit ,
#if defined(ENABLE_OVERLOADING)
InputMethodContextSetInputHintsMethodInfo,
#endif
inputMethodContextSetInputHints ,
#if defined(ENABLE_OVERLOADING)
InputMethodContextSetInputPurposeMethodInfo,
#endif
inputMethodContextSetInputPurpose ,
#if defined(ENABLE_OVERLOADING)
InputMethodContextInputHintsPropertyInfo,
#endif
constructInputMethodContextInputHints ,
getInputMethodContextInputHints ,
#if defined(ENABLE_OVERLOADING)
inputMethodContextInputHints ,
#endif
setInputMethodContextInputHints ,
#if defined(ENABLE_OVERLOADING)
InputMethodContextInputPurposePropertyInfo,
#endif
constructInputMethodContextInputPurpose ,
getInputMethodContextInputPurpose ,
#if defined(ENABLE_OVERLOADING)
inputMethodContextInputPurpose ,
#endif
setInputMethodContextInputPurpose ,
C_InputMethodContextCommittedCallback ,
InputMethodContextCommittedCallback ,
#if defined(ENABLE_OVERLOADING)
InputMethodContextCommittedSignalInfo ,
#endif
afterInputMethodContextCommitted ,
genClosure_InputMethodContextCommitted ,
mk_InputMethodContextCommittedCallback ,
noInputMethodContextCommittedCallback ,
onInputMethodContextCommitted ,
wrap_InputMethodContextCommittedCallback,
C_InputMethodContextDeleteSurroundingCallback,
InputMethodContextDeleteSurroundingCallback,
#if defined(ENABLE_OVERLOADING)
InputMethodContextDeleteSurroundingSignalInfo,
#endif
afterInputMethodContextDeleteSurrounding,
genClosure_InputMethodContextDeleteSurrounding,
mk_InputMethodContextDeleteSurroundingCallback,
noInputMethodContextDeleteSurroundingCallback,
onInputMethodContextDeleteSurrounding ,
wrap_InputMethodContextDeleteSurroundingCallback,
C_InputMethodContextPreeditChangedCallback,
InputMethodContextPreeditChangedCallback,
#if defined(ENABLE_OVERLOADING)
InputMethodContextPreeditChangedSignalInfo,
#endif
afterInputMethodContextPreeditChanged ,
genClosure_InputMethodContextPreeditChanged,
mk_InputMethodContextPreeditChangedCallback,
noInputMethodContextPreeditChangedCallback,
onInputMethodContextPreeditChanged ,
wrap_InputMethodContextPreeditChangedCallback,
C_InputMethodContextPreeditFinishedCallback,
InputMethodContextPreeditFinishedCallback,
#if defined(ENABLE_OVERLOADING)
InputMethodContextPreeditFinishedSignalInfo,
#endif
afterInputMethodContextPreeditFinished ,
genClosure_InputMethodContextPreeditFinished,
mk_InputMethodContextPreeditFinishedCallback,
noInputMethodContextPreeditFinishedCallback,
onInputMethodContextPreeditFinished ,
wrap_InputMethodContextPreeditFinishedCallback,
C_InputMethodContextPreeditStartedCallback,
InputMethodContextPreeditStartedCallback,
#if defined(ENABLE_OVERLOADING)
InputMethodContextPreeditStartedSignalInfo,
#endif
afterInputMethodContextPreeditStarted ,
genClosure_InputMethodContextPreeditStarted,
mk_InputMethodContextPreeditStartedCallback,
noInputMethodContextPreeditStartedCallback,
onInputMethodContextPreeditStarted ,
wrap_InputMethodContextPreeditStartedCallback,
) where
import Data.GI.Base.ShortPrelude
import qualified Data.GI.Base.ShortPrelude as SP
import qualified Data.GI.Base.Overloading as O
import qualified Prelude as P
import qualified Data.GI.Base.Attributes as GI.Attributes
import qualified Data.GI.Base.BasicTypes as B.Types
import qualified Data.GI.Base.ManagedPtr as B.ManagedPtr
import qualified Data.GI.Base.GArray as B.GArray
import qualified Data.GI.Base.GClosure as B.GClosure
import qualified Data.GI.Base.GError as B.GError
import qualified Data.GI.Base.GVariant as B.GVariant
import qualified Data.GI.Base.GValue as B.GValue
import qualified Data.GI.Base.GParamSpec as B.GParamSpec
import qualified Data.GI.Base.CallStack as B.CallStack
import qualified Data.GI.Base.Properties as B.Properties
import qualified Data.GI.Base.Signals as B.Signals
import qualified Control.Monad.IO.Class as MIO
import qualified Data.Text as T
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map
import qualified Foreign.Ptr as FP
import qualified GHC.OverloadedLabels as OL
import qualified GHC.Records as R
import qualified GI.GObject.Objects.Object as GObject.Object
import qualified GI.Gdk.Structs.EventKey as Gdk.EventKey
import {-# SOURCE #-} qualified GI.WebKit2.Enums as WebKit2.Enums
import {-# SOURCE #-} qualified GI.WebKit2.Flags as WebKit2.Flags
import {-# SOURCE #-} qualified GI.WebKit2.Structs.InputMethodUnderline as WebKit2.InputMethodUnderline
newtype InputMethodContext = InputMethodContext (SP.ManagedPtr InputMethodContext)
deriving (InputMethodContext -> InputMethodContext -> Bool
(InputMethodContext -> InputMethodContext -> Bool)
-> (InputMethodContext -> InputMethodContext -> Bool)
-> Eq InputMethodContext
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: InputMethodContext -> InputMethodContext -> Bool
$c/= :: InputMethodContext -> InputMethodContext -> Bool
== :: InputMethodContext -> InputMethodContext -> Bool
$c== :: InputMethodContext -> InputMethodContext -> Bool
Eq)
instance SP.ManagedPtrNewtype InputMethodContext where
toManagedPtr :: InputMethodContext -> ManagedPtr InputMethodContext
toManagedPtr (InputMethodContext ManagedPtr InputMethodContext
p) = ManagedPtr InputMethodContext
p
foreign import ccall "webkit_input_method_context_get_type"
c_webkit_input_method_context_get_type :: IO B.Types.GType
instance B.Types.TypedObject InputMethodContext where
glibType :: IO GType
glibType = IO GType
c_webkit_input_method_context_get_type
instance B.Types.GObject InputMethodContext
class (SP.GObject o, O.IsDescendantOf InputMethodContext o) => IsInputMethodContext o
instance (SP.GObject o, O.IsDescendantOf InputMethodContext o) => IsInputMethodContext o
instance O.HasParentTypes InputMethodContext
type instance O.ParentTypes InputMethodContext = '[GObject.Object.Object]
toInputMethodContext :: (MIO.MonadIO m, IsInputMethodContext o) => o -> m InputMethodContext
toInputMethodContext :: forall (m :: * -> *) o.
(MonadIO m, IsInputMethodContext o) =>
o -> m InputMethodContext
toInputMethodContext = IO InputMethodContext -> m InputMethodContext
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO InputMethodContext -> m InputMethodContext)
-> (o -> IO InputMethodContext) -> o -> m InputMethodContext
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (ManagedPtr InputMethodContext -> InputMethodContext)
-> o -> IO InputMethodContext
forall o o'.
(HasCallStack, ManagedPtrNewtype o, TypedObject o,
ManagedPtrNewtype o', TypedObject o') =>
(ManagedPtr o' -> o') -> o -> IO o'
B.ManagedPtr.unsafeCastTo ManagedPtr InputMethodContext -> InputMethodContext
InputMethodContext
instance B.GValue.IsGValue (Maybe InputMethodContext) where
gvalueGType_ :: IO GType
gvalueGType_ = IO GType
c_webkit_input_method_context_get_type
gvalueSet_ :: Ptr GValue -> Maybe InputMethodContext -> IO ()
gvalueSet_ Ptr GValue
gv Maybe InputMethodContext
P.Nothing = Ptr GValue -> Ptr InputMethodContext -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv (Ptr InputMethodContext
forall a. Ptr a
FP.nullPtr :: FP.Ptr InputMethodContext)
gvalueSet_ Ptr GValue
gv (P.Just InputMethodContext
obj) = InputMethodContext -> (Ptr InputMethodContext -> IO ()) -> IO ()
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
B.ManagedPtr.withManagedPtr InputMethodContext
obj (Ptr GValue -> Ptr InputMethodContext -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv)
gvalueGet_ :: Ptr GValue -> IO (Maybe InputMethodContext)
gvalueGet_ Ptr GValue
gv = do
Ptr InputMethodContext
ptr <- Ptr GValue -> IO (Ptr InputMethodContext)
forall a. GObject a => Ptr GValue -> IO (Ptr a)
B.GValue.get_object Ptr GValue
gv :: IO (FP.Ptr InputMethodContext)
if Ptr InputMethodContext
ptr Ptr InputMethodContext -> Ptr InputMethodContext -> Bool
forall a. Eq a => a -> a -> Bool
/= Ptr InputMethodContext
forall a. Ptr a
FP.nullPtr
then InputMethodContext -> Maybe InputMethodContext
forall a. a -> Maybe a
P.Just (InputMethodContext -> Maybe InputMethodContext)
-> IO InputMethodContext -> IO (Maybe InputMethodContext)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (ManagedPtr InputMethodContext -> InputMethodContext)
-> Ptr InputMethodContext -> IO InputMethodContext
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
B.ManagedPtr.newObject ManagedPtr InputMethodContext -> InputMethodContext
InputMethodContext Ptr InputMethodContext
ptr
else Maybe InputMethodContext -> IO (Maybe InputMethodContext)
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe InputMethodContext
forall a. Maybe a
P.Nothing
#if defined(ENABLE_OVERLOADING)
type family ResolveInputMethodContextMethod (t :: Symbol) (o :: *) :: * where
ResolveInputMethodContextMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
ResolveInputMethodContextMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
ResolveInputMethodContextMethod "filterKeyEvent" o = InputMethodContextFilterKeyEventMethodInfo
ResolveInputMethodContextMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
ResolveInputMethodContextMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
ResolveInputMethodContextMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
ResolveInputMethodContextMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
ResolveInputMethodContextMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
ResolveInputMethodContextMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
ResolveInputMethodContextMethod "notifyCursorArea" o = InputMethodContextNotifyCursorAreaMethodInfo
ResolveInputMethodContextMethod "notifyFocusIn" o = InputMethodContextNotifyFocusInMethodInfo
ResolveInputMethodContextMethod "notifyFocusOut" o = InputMethodContextNotifyFocusOutMethodInfo
ResolveInputMethodContextMethod "notifySurrounding" o = InputMethodContextNotifySurroundingMethodInfo
ResolveInputMethodContextMethod "ref" o = GObject.Object.ObjectRefMethodInfo
ResolveInputMethodContextMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
ResolveInputMethodContextMethod "reset" o = InputMethodContextResetMethodInfo
ResolveInputMethodContextMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
ResolveInputMethodContextMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
ResolveInputMethodContextMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
ResolveInputMethodContextMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
ResolveInputMethodContextMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
ResolveInputMethodContextMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
ResolveInputMethodContextMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
ResolveInputMethodContextMethod "getInputHints" o = InputMethodContextGetInputHintsMethodInfo
ResolveInputMethodContextMethod "getInputPurpose" o = InputMethodContextGetInputPurposeMethodInfo
ResolveInputMethodContextMethod "getPreedit" o = InputMethodContextGetPreeditMethodInfo
ResolveInputMethodContextMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolveInputMethodContextMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolveInputMethodContextMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
ResolveInputMethodContextMethod "setDataFull" o = GObject.Object.ObjectSetDataFullMethodInfo
ResolveInputMethodContextMethod "setEnablePreedit" o = InputMethodContextSetEnablePreeditMethodInfo
ResolveInputMethodContextMethod "setInputHints" o = InputMethodContextSetInputHintsMethodInfo
ResolveInputMethodContextMethod "setInputPurpose" o = InputMethodContextSetInputPurposeMethodInfo
ResolveInputMethodContextMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolveInputMethodContextMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveInputMethodContextMethod t InputMethodContext, O.OverloadedMethod info InputMethodContext p) => OL.IsLabel t (InputMethodContext -> p) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.overloadedMethod @info
#else
fromLabel _ = O.overloadedMethod @info
#endif
#if MIN_VERSION_base(4,13,0)
instance (info ~ ResolveInputMethodContextMethod t InputMethodContext, O.OverloadedMethod info InputMethodContext p, R.HasField t InputMethodContext p) => R.HasField t InputMethodContext p where
getField = O.overloadedMethod @info
#endif
instance (info ~ ResolveInputMethodContextMethod t InputMethodContext, O.OverloadedMethodInfo info InputMethodContext) => OL.IsLabel t (O.MethodProxy info InputMethodContext) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.MethodProxy
#else
fromLabel _ = O.MethodProxy
#endif
#endif
type InputMethodContextCommittedCallback =
T.Text
-> IO ()
noInputMethodContextCommittedCallback :: Maybe InputMethodContextCommittedCallback
noInputMethodContextCommittedCallback :: Maybe InputMethodContextCommittedCallback
noInputMethodContextCommittedCallback = Maybe InputMethodContextCommittedCallback
forall a. Maybe a
Nothing
type C_InputMethodContextCommittedCallback =
Ptr () ->
CString ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_InputMethodContextCommittedCallback :: C_InputMethodContextCommittedCallback -> IO (FunPtr C_InputMethodContextCommittedCallback)
genClosure_InputMethodContextCommitted :: MonadIO m => InputMethodContextCommittedCallback -> m (GClosure C_InputMethodContextCommittedCallback)
genClosure_InputMethodContextCommitted :: forall (m :: * -> *).
MonadIO m =>
InputMethodContextCommittedCallback
-> m (GClosure C_InputMethodContextCommittedCallback)
genClosure_InputMethodContextCommitted InputMethodContextCommittedCallback
cb = IO (GClosure C_InputMethodContextCommittedCallback)
-> m (GClosure C_InputMethodContextCommittedCallback)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (GClosure C_InputMethodContextCommittedCallback)
-> m (GClosure C_InputMethodContextCommittedCallback))
-> IO (GClosure C_InputMethodContextCommittedCallback)
-> m (GClosure C_InputMethodContextCommittedCallback)
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_InputMethodContextCommittedCallback
cb' = InputMethodContextCommittedCallback
-> C_InputMethodContextCommittedCallback
wrap_InputMethodContextCommittedCallback InputMethodContextCommittedCallback
cb
C_InputMethodContextCommittedCallback
-> IO (FunPtr C_InputMethodContextCommittedCallback)
mk_InputMethodContextCommittedCallback C_InputMethodContextCommittedCallback
cb' IO (FunPtr C_InputMethodContextCommittedCallback)
-> (FunPtr C_InputMethodContextCommittedCallback
-> IO (GClosure C_InputMethodContextCommittedCallback))
-> IO (GClosure C_InputMethodContextCommittedCallback)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= FunPtr C_InputMethodContextCommittedCallback
-> IO (GClosure C_InputMethodContextCommittedCallback)
forall (m :: * -> *) a. MonadIO m => FunPtr a -> m (GClosure a)
B.GClosure.newGClosure
wrap_InputMethodContextCommittedCallback ::
InputMethodContextCommittedCallback ->
C_InputMethodContextCommittedCallback
wrap_InputMethodContextCommittedCallback :: InputMethodContextCommittedCallback
-> C_InputMethodContextCommittedCallback
wrap_InputMethodContextCommittedCallback InputMethodContextCommittedCallback
_cb Ptr ()
_ CString
text Ptr ()
_ = do
Text
text' <- HasCallStack => CString -> IO Text
CString -> IO Text
cstringToText CString
text
InputMethodContextCommittedCallback
_cb Text
text'
onInputMethodContextCommitted :: (IsInputMethodContext a, MonadIO m) => a -> InputMethodContextCommittedCallback -> m SignalHandlerId
onInputMethodContextCommitted :: forall a (m :: * -> *).
(IsInputMethodContext a, MonadIO m) =>
a -> InputMethodContextCommittedCallback -> m SignalHandlerId
onInputMethodContextCommitted a
obj InputMethodContextCommittedCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_InputMethodContextCommittedCallback
cb' = InputMethodContextCommittedCallback
-> C_InputMethodContextCommittedCallback
wrap_InputMethodContextCommittedCallback InputMethodContextCommittedCallback
cb
FunPtr C_InputMethodContextCommittedCallback
cb'' <- C_InputMethodContextCommittedCallback
-> IO (FunPtr C_InputMethodContextCommittedCallback)
mk_InputMethodContextCommittedCallback C_InputMethodContextCommittedCallback
cb'
a
-> Text
-> FunPtr C_InputMethodContextCommittedCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"committed" FunPtr C_InputMethodContextCommittedCallback
cb'' SignalConnectMode
SignalConnectBefore Maybe Text
forall a. Maybe a
Nothing
afterInputMethodContextCommitted :: (IsInputMethodContext a, MonadIO m) => a -> InputMethodContextCommittedCallback -> m SignalHandlerId
afterInputMethodContextCommitted :: forall a (m :: * -> *).
(IsInputMethodContext a, MonadIO m) =>
a -> InputMethodContextCommittedCallback -> m SignalHandlerId
afterInputMethodContextCommitted a
obj InputMethodContextCommittedCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_InputMethodContextCommittedCallback
cb' = InputMethodContextCommittedCallback
-> C_InputMethodContextCommittedCallback
wrap_InputMethodContextCommittedCallback InputMethodContextCommittedCallback
cb
FunPtr C_InputMethodContextCommittedCallback
cb'' <- C_InputMethodContextCommittedCallback
-> IO (FunPtr C_InputMethodContextCommittedCallback)
mk_InputMethodContextCommittedCallback C_InputMethodContextCommittedCallback
cb'
a
-> Text
-> FunPtr C_InputMethodContextCommittedCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"committed" FunPtr C_InputMethodContextCommittedCallback
cb'' SignalConnectMode
SignalConnectAfter Maybe Text
forall a. Maybe a
Nothing
#if defined(ENABLE_OVERLOADING)
data InputMethodContextCommittedSignalInfo
instance SignalInfo InputMethodContextCommittedSignalInfo where
type HaskellCallbackType InputMethodContextCommittedSignalInfo = InputMethodContextCommittedCallback
connectSignal obj cb connectMode detail = do
let cb' = wrap_InputMethodContextCommittedCallback cb
cb'' <- mk_InputMethodContextCommittedCallback cb'
connectSignalFunPtr obj "committed" cb'' connectMode detail
#endif
type InputMethodContextDeleteSurroundingCallback =
Int32
-> Word32
-> IO ()
noInputMethodContextDeleteSurroundingCallback :: Maybe InputMethodContextDeleteSurroundingCallback
noInputMethodContextDeleteSurroundingCallback :: Maybe InputMethodContextDeleteSurroundingCallback
noInputMethodContextDeleteSurroundingCallback = Maybe InputMethodContextDeleteSurroundingCallback
forall a. Maybe a
Nothing
type C_InputMethodContextDeleteSurroundingCallback =
Ptr () ->
Int32 ->
Word32 ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_InputMethodContextDeleteSurroundingCallback :: C_InputMethodContextDeleteSurroundingCallback -> IO (FunPtr C_InputMethodContextDeleteSurroundingCallback)
genClosure_InputMethodContextDeleteSurrounding :: MonadIO m => InputMethodContextDeleteSurroundingCallback -> m (GClosure C_InputMethodContextDeleteSurroundingCallback)
genClosure_InputMethodContextDeleteSurrounding :: forall (m :: * -> *).
MonadIO m =>
InputMethodContextDeleteSurroundingCallback
-> m (GClosure C_InputMethodContextDeleteSurroundingCallback)
genClosure_InputMethodContextDeleteSurrounding InputMethodContextDeleteSurroundingCallback
cb = IO (GClosure C_InputMethodContextDeleteSurroundingCallback)
-> m (GClosure C_InputMethodContextDeleteSurroundingCallback)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (GClosure C_InputMethodContextDeleteSurroundingCallback)
-> m (GClosure C_InputMethodContextDeleteSurroundingCallback))
-> IO (GClosure C_InputMethodContextDeleteSurroundingCallback)
-> m (GClosure C_InputMethodContextDeleteSurroundingCallback)
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_InputMethodContextDeleteSurroundingCallback
cb' = InputMethodContextDeleteSurroundingCallback
-> C_InputMethodContextDeleteSurroundingCallback
wrap_InputMethodContextDeleteSurroundingCallback InputMethodContextDeleteSurroundingCallback
cb
C_InputMethodContextDeleteSurroundingCallback
-> IO (FunPtr C_InputMethodContextDeleteSurroundingCallback)
mk_InputMethodContextDeleteSurroundingCallback C_InputMethodContextDeleteSurroundingCallback
cb' IO (FunPtr C_InputMethodContextDeleteSurroundingCallback)
-> (FunPtr C_InputMethodContextDeleteSurroundingCallback
-> IO (GClosure C_InputMethodContextDeleteSurroundingCallback))
-> IO (GClosure C_InputMethodContextDeleteSurroundingCallback)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= FunPtr C_InputMethodContextDeleteSurroundingCallback
-> IO (GClosure C_InputMethodContextDeleteSurroundingCallback)
forall (m :: * -> *) a. MonadIO m => FunPtr a -> m (GClosure a)
B.GClosure.newGClosure
wrap_InputMethodContextDeleteSurroundingCallback ::
InputMethodContextDeleteSurroundingCallback ->
C_InputMethodContextDeleteSurroundingCallback
wrap_InputMethodContextDeleteSurroundingCallback :: InputMethodContextDeleteSurroundingCallback
-> C_InputMethodContextDeleteSurroundingCallback
wrap_InputMethodContextDeleteSurroundingCallback InputMethodContextDeleteSurroundingCallback
_cb Ptr ()
_ Int32
offset Word32
nChars Ptr ()
_ = do
InputMethodContextDeleteSurroundingCallback
_cb Int32
offset Word32
nChars
onInputMethodContextDeleteSurrounding :: (IsInputMethodContext a, MonadIO m) => a -> InputMethodContextDeleteSurroundingCallback -> m SignalHandlerId
onInputMethodContextDeleteSurrounding :: forall a (m :: * -> *).
(IsInputMethodContext a, MonadIO m) =>
a
-> InputMethodContextDeleteSurroundingCallback -> m SignalHandlerId
onInputMethodContextDeleteSurrounding a
obj InputMethodContextDeleteSurroundingCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_InputMethodContextDeleteSurroundingCallback
cb' = InputMethodContextDeleteSurroundingCallback
-> C_InputMethodContextDeleteSurroundingCallback
wrap_InputMethodContextDeleteSurroundingCallback InputMethodContextDeleteSurroundingCallback
cb
FunPtr C_InputMethodContextDeleteSurroundingCallback
cb'' <- C_InputMethodContextDeleteSurroundingCallback
-> IO (FunPtr C_InputMethodContextDeleteSurroundingCallback)
mk_InputMethodContextDeleteSurroundingCallback C_InputMethodContextDeleteSurroundingCallback
cb'
a
-> Text
-> FunPtr C_InputMethodContextDeleteSurroundingCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"delete-surrounding" FunPtr C_InputMethodContextDeleteSurroundingCallback
cb'' SignalConnectMode
SignalConnectBefore Maybe Text
forall a. Maybe a
Nothing
afterInputMethodContextDeleteSurrounding :: (IsInputMethodContext a, MonadIO m) => a -> InputMethodContextDeleteSurroundingCallback -> m SignalHandlerId
afterInputMethodContextDeleteSurrounding :: forall a (m :: * -> *).
(IsInputMethodContext a, MonadIO m) =>
a
-> InputMethodContextDeleteSurroundingCallback -> m SignalHandlerId
afterInputMethodContextDeleteSurrounding a
obj InputMethodContextDeleteSurroundingCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_InputMethodContextDeleteSurroundingCallback
cb' = InputMethodContextDeleteSurroundingCallback
-> C_InputMethodContextDeleteSurroundingCallback
wrap_InputMethodContextDeleteSurroundingCallback InputMethodContextDeleteSurroundingCallback
cb
FunPtr C_InputMethodContextDeleteSurroundingCallback
cb'' <- C_InputMethodContextDeleteSurroundingCallback
-> IO (FunPtr C_InputMethodContextDeleteSurroundingCallback)
mk_InputMethodContextDeleteSurroundingCallback C_InputMethodContextDeleteSurroundingCallback
cb'
a
-> Text
-> FunPtr C_InputMethodContextDeleteSurroundingCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"delete-surrounding" FunPtr C_InputMethodContextDeleteSurroundingCallback
cb'' SignalConnectMode
SignalConnectAfter Maybe Text
forall a. Maybe a
Nothing
#if defined(ENABLE_OVERLOADING)
data InputMethodContextDeleteSurroundingSignalInfo
instance SignalInfo InputMethodContextDeleteSurroundingSignalInfo where
type HaskellCallbackType InputMethodContextDeleteSurroundingSignalInfo = InputMethodContextDeleteSurroundingCallback
connectSignal obj cb connectMode detail = do
let cb' = wrap_InputMethodContextDeleteSurroundingCallback cb
cb'' <- mk_InputMethodContextDeleteSurroundingCallback cb'
connectSignalFunPtr obj "delete-surrounding" cb'' connectMode detail
#endif
type InputMethodContextPreeditChangedCallback =
IO ()
noInputMethodContextPreeditChangedCallback :: Maybe InputMethodContextPreeditChangedCallback
noInputMethodContextPreeditChangedCallback :: Maybe (IO ())
noInputMethodContextPreeditChangedCallback = Maybe (IO ())
forall a. Maybe a
Nothing
type C_InputMethodContextPreeditChangedCallback =
Ptr () ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_InputMethodContextPreeditChangedCallback :: C_InputMethodContextPreeditChangedCallback -> IO (FunPtr C_InputMethodContextPreeditChangedCallback)
genClosure_InputMethodContextPreeditChanged :: MonadIO m => InputMethodContextPreeditChangedCallback -> m (GClosure C_InputMethodContextPreeditChangedCallback)
genClosure_InputMethodContextPreeditChanged :: forall (m :: * -> *).
MonadIO m =>
IO () -> m (GClosure C_InputMethodContextPreeditChangedCallback)
genClosure_InputMethodContextPreeditChanged IO ()
cb = IO (GClosure C_InputMethodContextPreeditChangedCallback)
-> m (GClosure C_InputMethodContextPreeditChangedCallback)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (GClosure C_InputMethodContextPreeditChangedCallback)
-> m (GClosure C_InputMethodContextPreeditChangedCallback))
-> IO (GClosure C_InputMethodContextPreeditChangedCallback)
-> m (GClosure C_InputMethodContextPreeditChangedCallback)
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_InputMethodContextPreeditChangedCallback
cb' = IO () -> C_InputMethodContextPreeditChangedCallback
wrap_InputMethodContextPreeditChangedCallback IO ()
cb
C_InputMethodContextPreeditChangedCallback
-> IO (FunPtr C_InputMethodContextPreeditChangedCallback)
mk_InputMethodContextPreeditChangedCallback C_InputMethodContextPreeditChangedCallback
cb' IO (FunPtr C_InputMethodContextPreeditChangedCallback)
-> (FunPtr C_InputMethodContextPreeditChangedCallback
-> IO (GClosure C_InputMethodContextPreeditChangedCallback))
-> IO (GClosure C_InputMethodContextPreeditChangedCallback)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= FunPtr C_InputMethodContextPreeditChangedCallback
-> IO (GClosure C_InputMethodContextPreeditChangedCallback)
forall (m :: * -> *) a. MonadIO m => FunPtr a -> m (GClosure a)
B.GClosure.newGClosure
wrap_InputMethodContextPreeditChangedCallback ::
InputMethodContextPreeditChangedCallback ->
C_InputMethodContextPreeditChangedCallback
wrap_InputMethodContextPreeditChangedCallback :: IO () -> C_InputMethodContextPreeditChangedCallback
wrap_InputMethodContextPreeditChangedCallback IO ()
_cb Ptr ()
_ Ptr ()
_ = do
IO ()
_cb
onInputMethodContextPreeditChanged :: (IsInputMethodContext a, MonadIO m) => a -> InputMethodContextPreeditChangedCallback -> m SignalHandlerId
onInputMethodContextPreeditChanged :: forall a (m :: * -> *).
(IsInputMethodContext a, MonadIO m) =>
a -> IO () -> m SignalHandlerId
onInputMethodContextPreeditChanged a
obj IO ()
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_InputMethodContextPreeditChangedCallback
cb' = IO () -> C_InputMethodContextPreeditChangedCallback
wrap_InputMethodContextPreeditChangedCallback IO ()
cb
FunPtr C_InputMethodContextPreeditChangedCallback
cb'' <- C_InputMethodContextPreeditChangedCallback
-> IO (FunPtr C_InputMethodContextPreeditChangedCallback)
mk_InputMethodContextPreeditChangedCallback C_InputMethodContextPreeditChangedCallback
cb'
a
-> Text
-> FunPtr C_InputMethodContextPreeditChangedCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"preedit-changed" FunPtr C_InputMethodContextPreeditChangedCallback
cb'' SignalConnectMode
SignalConnectBefore Maybe Text
forall a. Maybe a
Nothing
afterInputMethodContextPreeditChanged :: (IsInputMethodContext a, MonadIO m) => a -> InputMethodContextPreeditChangedCallback -> m SignalHandlerId
afterInputMethodContextPreeditChanged :: forall a (m :: * -> *).
(IsInputMethodContext a, MonadIO m) =>
a -> IO () -> m SignalHandlerId
afterInputMethodContextPreeditChanged a
obj IO ()
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_InputMethodContextPreeditChangedCallback
cb' = IO () -> C_InputMethodContextPreeditChangedCallback
wrap_InputMethodContextPreeditChangedCallback IO ()
cb
FunPtr C_InputMethodContextPreeditChangedCallback
cb'' <- C_InputMethodContextPreeditChangedCallback
-> IO (FunPtr C_InputMethodContextPreeditChangedCallback)
mk_InputMethodContextPreeditChangedCallback C_InputMethodContextPreeditChangedCallback
cb'
a
-> Text
-> FunPtr C_InputMethodContextPreeditChangedCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"preedit-changed" FunPtr C_InputMethodContextPreeditChangedCallback
cb'' SignalConnectMode
SignalConnectAfter Maybe Text
forall a. Maybe a
Nothing
#if defined(ENABLE_OVERLOADING)
data InputMethodContextPreeditChangedSignalInfo
instance SignalInfo InputMethodContextPreeditChangedSignalInfo where
type HaskellCallbackType InputMethodContextPreeditChangedSignalInfo = InputMethodContextPreeditChangedCallback
connectSignal obj cb connectMode detail = do
let cb' = wrap_InputMethodContextPreeditChangedCallback cb
cb'' <- mk_InputMethodContextPreeditChangedCallback cb'
connectSignalFunPtr obj "preedit-changed" cb'' connectMode detail
#endif
type InputMethodContextPreeditFinishedCallback =
IO ()
noInputMethodContextPreeditFinishedCallback :: Maybe InputMethodContextPreeditFinishedCallback
noInputMethodContextPreeditFinishedCallback :: Maybe (IO ())
noInputMethodContextPreeditFinishedCallback = Maybe (IO ())
forall a. Maybe a
Nothing
type C_InputMethodContextPreeditFinishedCallback =
Ptr () ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_InputMethodContextPreeditFinishedCallback :: C_InputMethodContextPreeditFinishedCallback -> IO (FunPtr C_InputMethodContextPreeditFinishedCallback)
genClosure_InputMethodContextPreeditFinished :: MonadIO m => InputMethodContextPreeditFinishedCallback -> m (GClosure C_InputMethodContextPreeditFinishedCallback)
genClosure_InputMethodContextPreeditFinished :: forall (m :: * -> *).
MonadIO m =>
IO () -> m (GClosure C_InputMethodContextPreeditChangedCallback)
genClosure_InputMethodContextPreeditFinished IO ()
cb = IO (GClosure C_InputMethodContextPreeditChangedCallback)
-> m (GClosure C_InputMethodContextPreeditChangedCallback)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (GClosure C_InputMethodContextPreeditChangedCallback)
-> m (GClosure C_InputMethodContextPreeditChangedCallback))
-> IO (GClosure C_InputMethodContextPreeditChangedCallback)
-> m (GClosure C_InputMethodContextPreeditChangedCallback)
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_InputMethodContextPreeditChangedCallback
cb' = IO () -> C_InputMethodContextPreeditChangedCallback
wrap_InputMethodContextPreeditFinishedCallback IO ()
cb
C_InputMethodContextPreeditChangedCallback
-> IO (FunPtr C_InputMethodContextPreeditChangedCallback)
mk_InputMethodContextPreeditFinishedCallback C_InputMethodContextPreeditChangedCallback
cb' IO (FunPtr C_InputMethodContextPreeditChangedCallback)
-> (FunPtr C_InputMethodContextPreeditChangedCallback
-> IO (GClosure C_InputMethodContextPreeditChangedCallback))
-> IO (GClosure C_InputMethodContextPreeditChangedCallback)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= FunPtr C_InputMethodContextPreeditChangedCallback
-> IO (GClosure C_InputMethodContextPreeditChangedCallback)
forall (m :: * -> *) a. MonadIO m => FunPtr a -> m (GClosure a)
B.GClosure.newGClosure
wrap_InputMethodContextPreeditFinishedCallback ::
InputMethodContextPreeditFinishedCallback ->
C_InputMethodContextPreeditFinishedCallback
wrap_InputMethodContextPreeditFinishedCallback :: IO () -> C_InputMethodContextPreeditChangedCallback
wrap_InputMethodContextPreeditFinishedCallback IO ()
_cb Ptr ()
_ Ptr ()
_ = do
IO ()
_cb
onInputMethodContextPreeditFinished :: (IsInputMethodContext a, MonadIO m) => a -> InputMethodContextPreeditFinishedCallback -> m SignalHandlerId
onInputMethodContextPreeditFinished :: forall a (m :: * -> *).
(IsInputMethodContext a, MonadIO m) =>
a -> IO () -> m SignalHandlerId
onInputMethodContextPreeditFinished a
obj IO ()
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_InputMethodContextPreeditChangedCallback
cb' = IO () -> C_InputMethodContextPreeditChangedCallback
wrap_InputMethodContextPreeditFinishedCallback IO ()
cb
FunPtr C_InputMethodContextPreeditChangedCallback
cb'' <- C_InputMethodContextPreeditChangedCallback
-> IO (FunPtr C_InputMethodContextPreeditChangedCallback)
mk_InputMethodContextPreeditFinishedCallback C_InputMethodContextPreeditChangedCallback
cb'
a
-> Text
-> FunPtr C_InputMethodContextPreeditChangedCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"preedit-finished" FunPtr C_InputMethodContextPreeditChangedCallback
cb'' SignalConnectMode
SignalConnectBefore Maybe Text
forall a. Maybe a
Nothing
afterInputMethodContextPreeditFinished :: (IsInputMethodContext a, MonadIO m) => a -> InputMethodContextPreeditFinishedCallback -> m SignalHandlerId
afterInputMethodContextPreeditFinished :: forall a (m :: * -> *).
(IsInputMethodContext a, MonadIO m) =>
a -> IO () -> m SignalHandlerId
afterInputMethodContextPreeditFinished a
obj IO ()
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_InputMethodContextPreeditChangedCallback
cb' = IO () -> C_InputMethodContextPreeditChangedCallback
wrap_InputMethodContextPreeditFinishedCallback IO ()
cb
FunPtr C_InputMethodContextPreeditChangedCallback
cb'' <- C_InputMethodContextPreeditChangedCallback
-> IO (FunPtr C_InputMethodContextPreeditChangedCallback)
mk_InputMethodContextPreeditFinishedCallback C_InputMethodContextPreeditChangedCallback
cb'
a
-> Text
-> FunPtr C_InputMethodContextPreeditChangedCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"preedit-finished" FunPtr C_InputMethodContextPreeditChangedCallback
cb'' SignalConnectMode
SignalConnectAfter Maybe Text
forall a. Maybe a
Nothing
#if defined(ENABLE_OVERLOADING)
data InputMethodContextPreeditFinishedSignalInfo
instance SignalInfo InputMethodContextPreeditFinishedSignalInfo where
type HaskellCallbackType InputMethodContextPreeditFinishedSignalInfo = InputMethodContextPreeditFinishedCallback
connectSignal obj cb connectMode detail = do
let cb' = wrap_InputMethodContextPreeditFinishedCallback cb
cb'' <- mk_InputMethodContextPreeditFinishedCallback cb'
connectSignalFunPtr obj "preedit-finished" cb'' connectMode detail
#endif
type InputMethodContextPreeditStartedCallback =
IO ()
noInputMethodContextPreeditStartedCallback :: Maybe InputMethodContextPreeditStartedCallback
noInputMethodContextPreeditStartedCallback :: Maybe (IO ())
noInputMethodContextPreeditStartedCallback = Maybe (IO ())
forall a. Maybe a
Nothing
type C_InputMethodContextPreeditStartedCallback =
Ptr () ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_InputMethodContextPreeditStartedCallback :: C_InputMethodContextPreeditStartedCallback -> IO (FunPtr C_InputMethodContextPreeditStartedCallback)
genClosure_InputMethodContextPreeditStarted :: MonadIO m => InputMethodContextPreeditStartedCallback -> m (GClosure C_InputMethodContextPreeditStartedCallback)
genClosure_InputMethodContextPreeditStarted :: forall (m :: * -> *).
MonadIO m =>
IO () -> m (GClosure C_InputMethodContextPreeditChangedCallback)
genClosure_InputMethodContextPreeditStarted IO ()
cb = IO (GClosure C_InputMethodContextPreeditChangedCallback)
-> m (GClosure C_InputMethodContextPreeditChangedCallback)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (GClosure C_InputMethodContextPreeditChangedCallback)
-> m (GClosure C_InputMethodContextPreeditChangedCallback))
-> IO (GClosure C_InputMethodContextPreeditChangedCallback)
-> m (GClosure C_InputMethodContextPreeditChangedCallback)
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_InputMethodContextPreeditChangedCallback
cb' = IO () -> C_InputMethodContextPreeditChangedCallback
wrap_InputMethodContextPreeditStartedCallback IO ()
cb
C_InputMethodContextPreeditChangedCallback
-> IO (FunPtr C_InputMethodContextPreeditChangedCallback)
mk_InputMethodContextPreeditStartedCallback C_InputMethodContextPreeditChangedCallback
cb' IO (FunPtr C_InputMethodContextPreeditChangedCallback)
-> (FunPtr C_InputMethodContextPreeditChangedCallback
-> IO (GClosure C_InputMethodContextPreeditChangedCallback))
-> IO (GClosure C_InputMethodContextPreeditChangedCallback)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= FunPtr C_InputMethodContextPreeditChangedCallback
-> IO (GClosure C_InputMethodContextPreeditChangedCallback)
forall (m :: * -> *) a. MonadIO m => FunPtr a -> m (GClosure a)
B.GClosure.newGClosure
wrap_InputMethodContextPreeditStartedCallback ::
InputMethodContextPreeditStartedCallback ->
C_InputMethodContextPreeditStartedCallback
wrap_InputMethodContextPreeditStartedCallback :: IO () -> C_InputMethodContextPreeditChangedCallback
wrap_InputMethodContextPreeditStartedCallback IO ()
_cb Ptr ()
_ Ptr ()
_ = do
IO ()
_cb
onInputMethodContextPreeditStarted :: (IsInputMethodContext a, MonadIO m) => a -> InputMethodContextPreeditStartedCallback -> m SignalHandlerId
onInputMethodContextPreeditStarted :: forall a (m :: * -> *).
(IsInputMethodContext a, MonadIO m) =>
a -> IO () -> m SignalHandlerId
onInputMethodContextPreeditStarted a
obj IO ()
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_InputMethodContextPreeditChangedCallback
cb' = IO () -> C_InputMethodContextPreeditChangedCallback
wrap_InputMethodContextPreeditStartedCallback IO ()
cb
FunPtr C_InputMethodContextPreeditChangedCallback
cb'' <- C_InputMethodContextPreeditChangedCallback
-> IO (FunPtr C_InputMethodContextPreeditChangedCallback)
mk_InputMethodContextPreeditStartedCallback C_InputMethodContextPreeditChangedCallback
cb'
a
-> Text
-> FunPtr C_InputMethodContextPreeditChangedCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"preedit-started" FunPtr C_InputMethodContextPreeditChangedCallback
cb'' SignalConnectMode
SignalConnectBefore Maybe Text
forall a. Maybe a
Nothing
afterInputMethodContextPreeditStarted :: (IsInputMethodContext a, MonadIO m) => a -> InputMethodContextPreeditStartedCallback -> m SignalHandlerId
afterInputMethodContextPreeditStarted :: forall a (m :: * -> *).
(IsInputMethodContext a, MonadIO m) =>
a -> IO () -> m SignalHandlerId
afterInputMethodContextPreeditStarted a
obj IO ()
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_InputMethodContextPreeditChangedCallback
cb' = IO () -> C_InputMethodContextPreeditChangedCallback
wrap_InputMethodContextPreeditStartedCallback IO ()
cb
FunPtr C_InputMethodContextPreeditChangedCallback
cb'' <- C_InputMethodContextPreeditChangedCallback
-> IO (FunPtr C_InputMethodContextPreeditChangedCallback)
mk_InputMethodContextPreeditStartedCallback C_InputMethodContextPreeditChangedCallback
cb'
a
-> Text
-> FunPtr C_InputMethodContextPreeditChangedCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"preedit-started" FunPtr C_InputMethodContextPreeditChangedCallback
cb'' SignalConnectMode
SignalConnectAfter Maybe Text
forall a. Maybe a
Nothing
#if defined(ENABLE_OVERLOADING)
data InputMethodContextPreeditStartedSignalInfo
instance SignalInfo InputMethodContextPreeditStartedSignalInfo where
type HaskellCallbackType InputMethodContextPreeditStartedSignalInfo = InputMethodContextPreeditStartedCallback
connectSignal obj cb connectMode detail = do
let cb' = wrap_InputMethodContextPreeditStartedCallback cb
cb'' <- mk_InputMethodContextPreeditStartedCallback cb'
connectSignalFunPtr obj "preedit-started" cb'' connectMode detail
#endif
getInputMethodContextInputHints :: (MonadIO m, IsInputMethodContext o) => o -> m [WebKit2.Flags.InputHints]
getInputMethodContextInputHints :: forall (m :: * -> *) o.
(MonadIO m, IsInputMethodContext o) =>
o -> m [InputHints]
getInputMethodContextInputHints o
obj = IO [InputHints] -> m [InputHints]
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO [InputHints] -> m [InputHints])
-> IO [InputHints] -> m [InputHints]
forall a b. (a -> b) -> a -> b
$ o -> String -> IO [InputHints]
forall a b.
(GObject a, IsGFlag b, BoxedFlags b) =>
a -> String -> IO [b]
B.Properties.getObjectPropertyFlags o
obj String
"input-hints"
setInputMethodContextInputHints :: (MonadIO m, IsInputMethodContext o) => o -> [WebKit2.Flags.InputHints] -> m ()
setInputMethodContextInputHints :: forall (m :: * -> *) o.
(MonadIO m, IsInputMethodContext o) =>
o -> [InputHints] -> m ()
setInputMethodContextInputHints o
obj [InputHints]
val = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
o -> String -> [InputHints] -> IO ()
forall a b.
(IsGFlag b, BoxedFlags b, GObject a) =>
a -> String -> [b] -> IO ()
B.Properties.setObjectPropertyFlags o
obj String
"input-hints" [InputHints]
val
constructInputMethodContextInputHints :: (IsInputMethodContext o, MIO.MonadIO m) => [WebKit2.Flags.InputHints] -> m (GValueConstruct o)
constructInputMethodContextInputHints :: forall o (m :: * -> *).
(IsInputMethodContext o, MonadIO m) =>
[InputHints] -> m (GValueConstruct o)
constructInputMethodContextInputHints [InputHints]
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ do
IO (GValueConstruct o) -> IO (GValueConstruct o)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> IO (GValueConstruct o))
-> IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> [InputHints] -> IO (GValueConstruct o)
forall a o.
(IsGFlag a, BoxedFlags a) =>
String -> [a] -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyFlags String
"input-hints" [InputHints]
val
#if defined(ENABLE_OVERLOADING)
data InputMethodContextInputHintsPropertyInfo
instance AttrInfo InputMethodContextInputHintsPropertyInfo where
type AttrAllowedOps InputMethodContextInputHintsPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
type AttrBaseTypeConstraint InputMethodContextInputHintsPropertyInfo = IsInputMethodContext
type AttrSetTypeConstraint InputMethodContextInputHintsPropertyInfo = (~) [WebKit2.Flags.InputHints]
type AttrTransferTypeConstraint InputMethodContextInputHintsPropertyInfo = (~) [WebKit2.Flags.InputHints]
type AttrTransferType InputMethodContextInputHintsPropertyInfo = [WebKit2.Flags.InputHints]
type AttrGetType InputMethodContextInputHintsPropertyInfo = [WebKit2.Flags.InputHints]
type AttrLabel InputMethodContextInputHintsPropertyInfo = "input-hints"
type AttrOrigin InputMethodContextInputHintsPropertyInfo = InputMethodContext
attrGet = getInputMethodContextInputHints
attrSet = setInputMethodContextInputHints
attrTransfer _ v = do
return v
attrConstruct = constructInputMethodContextInputHints
attrClear = undefined
#endif
getInputMethodContextInputPurpose :: (MonadIO m, IsInputMethodContext o) => o -> m WebKit2.Enums.InputPurpose
getInputMethodContextInputPurpose :: forall (m :: * -> *) o.
(MonadIO m, IsInputMethodContext o) =>
o -> m InputPurpose
getInputMethodContextInputPurpose o
obj = IO InputPurpose -> m InputPurpose
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO InputPurpose -> m InputPurpose)
-> IO InputPurpose -> m InputPurpose
forall a b. (a -> b) -> a -> b
$ o -> String -> IO InputPurpose
forall a b. (GObject a, Enum b, BoxedEnum b) => a -> String -> IO b
B.Properties.getObjectPropertyEnum o
obj String
"input-purpose"
setInputMethodContextInputPurpose :: (MonadIO m, IsInputMethodContext o) => o -> WebKit2.Enums.InputPurpose -> m ()
setInputMethodContextInputPurpose :: forall (m :: * -> *) o.
(MonadIO m, IsInputMethodContext o) =>
o -> InputPurpose -> m ()
setInputMethodContextInputPurpose o
obj InputPurpose
val = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
o -> String -> InputPurpose -> IO ()
forall a b.
(GObject a, Enum b, BoxedEnum b) =>
a -> String -> b -> IO ()
B.Properties.setObjectPropertyEnum o
obj String
"input-purpose" InputPurpose
val
constructInputMethodContextInputPurpose :: (IsInputMethodContext o, MIO.MonadIO m) => WebKit2.Enums.InputPurpose -> m (GValueConstruct o)
constructInputMethodContextInputPurpose :: forall o (m :: * -> *).
(IsInputMethodContext o, MonadIO m) =>
InputPurpose -> m (GValueConstruct o)
constructInputMethodContextInputPurpose InputPurpose
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ do
IO (GValueConstruct o) -> IO (GValueConstruct o)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> IO (GValueConstruct o))
-> IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> InputPurpose -> IO (GValueConstruct o)
forall a o.
(Enum a, BoxedEnum a) =>
String -> a -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyEnum String
"input-purpose" InputPurpose
val
#if defined(ENABLE_OVERLOADING)
data InputMethodContextInputPurposePropertyInfo
instance AttrInfo InputMethodContextInputPurposePropertyInfo where
type AttrAllowedOps InputMethodContextInputPurposePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
type AttrBaseTypeConstraint InputMethodContextInputPurposePropertyInfo = IsInputMethodContext
type AttrSetTypeConstraint InputMethodContextInputPurposePropertyInfo = (~) WebKit2.Enums.InputPurpose
type AttrTransferTypeConstraint InputMethodContextInputPurposePropertyInfo = (~) WebKit2.Enums.InputPurpose
type AttrTransferType InputMethodContextInputPurposePropertyInfo = WebKit2.Enums.InputPurpose
type AttrGetType InputMethodContextInputPurposePropertyInfo = WebKit2.Enums.InputPurpose
type AttrLabel InputMethodContextInputPurposePropertyInfo = "input-purpose"
type AttrOrigin InputMethodContextInputPurposePropertyInfo = InputMethodContext
attrGet = getInputMethodContextInputPurpose
attrSet = setInputMethodContextInputPurpose
attrTransfer _ v = do
return v
attrConstruct = constructInputMethodContextInputPurpose
attrClear = undefined
#endif
#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList InputMethodContext
type instance O.AttributeList InputMethodContext = InputMethodContextAttributeList
type InputMethodContextAttributeList = ('[ '("inputHints", InputMethodContextInputHintsPropertyInfo), '("inputPurpose", InputMethodContextInputPurposePropertyInfo)] :: [(Symbol, *)])
#endif
#if defined(ENABLE_OVERLOADING)
inputMethodContextInputHints :: AttrLabelProxy "inputHints"
inputMethodContextInputHints = AttrLabelProxy
inputMethodContextInputPurpose :: AttrLabelProxy "inputPurpose"
inputMethodContextInputPurpose = AttrLabelProxy
#endif
#if defined(ENABLE_OVERLOADING)
type instance O.SignalList InputMethodContext = InputMethodContextSignalList
type InputMethodContextSignalList = ('[ '("committed", InputMethodContextCommittedSignalInfo), '("deleteSurrounding", InputMethodContextDeleteSurroundingSignalInfo), '("notify", GObject.Object.ObjectNotifySignalInfo), '("preeditChanged", InputMethodContextPreeditChangedSignalInfo), '("preeditFinished", InputMethodContextPreeditFinishedSignalInfo), '("preeditStarted", InputMethodContextPreeditStartedSignalInfo)] :: [(Symbol, *)])
#endif
foreign import ccall "webkit_input_method_context_filter_key_event" webkit_input_method_context_filter_key_event ::
Ptr InputMethodContext ->
Ptr Gdk.EventKey.EventKey ->
IO CInt
inputMethodContextFilterKeyEvent ::
(B.CallStack.HasCallStack, MonadIO m, IsInputMethodContext a) =>
a
-> Gdk.EventKey.EventKey
-> m Bool
inputMethodContextFilterKeyEvent :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsInputMethodContext a) =>
a -> EventKey -> m Bool
inputMethodContextFilterKeyEvent a
context EventKey
keyEvent = IO Bool -> m Bool
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ do
Ptr InputMethodContext
context' <- a -> IO (Ptr InputMethodContext)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
context
Ptr EventKey
keyEvent' <- EventKey -> IO (Ptr EventKey)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr EventKey
keyEvent
CInt
result <- Ptr InputMethodContext -> Ptr EventKey -> IO CInt
webkit_input_method_context_filter_key_event Ptr InputMethodContext
context' Ptr EventKey
keyEvent'
let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
context
EventKey -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr EventKey
keyEvent
Bool -> IO Bool
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'
#if defined(ENABLE_OVERLOADING)
data InputMethodContextFilterKeyEventMethodInfo
instance (signature ~ (Gdk.EventKey.EventKey -> m Bool), MonadIO m, IsInputMethodContext a) => O.OverloadedMethod InputMethodContextFilterKeyEventMethodInfo a signature where
overloadedMethod = inputMethodContextFilterKeyEvent
instance O.OverloadedMethodInfo InputMethodContextFilterKeyEventMethodInfo a where
overloadedMethodInfo = O.MethodInfo {
O.overloadedMethodName = "GI.WebKit2.Objects.InputMethodContext.inputMethodContextFilterKeyEvent",
O.overloadedMethodURL = "https://hackage.haskell.org/package/gi-webkit2-4.0.27/docs/GI-WebKit2-Objects-InputMethodContext.html#v:inputMethodContextFilterKeyEvent"
}
#endif
foreign import ccall "webkit_input_method_context_get_input_hints" webkit_input_method_context_get_input_hints ::
Ptr InputMethodContext ->
IO CUInt
inputMethodContextGetInputHints ::
(B.CallStack.HasCallStack, MonadIO m, IsInputMethodContext a) =>
a
-> m [WebKit2.Flags.InputHints]
inputMethodContextGetInputHints :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsInputMethodContext a) =>
a -> m [InputHints]
inputMethodContextGetInputHints a
context = IO [InputHints] -> m [InputHints]
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO [InputHints] -> m [InputHints])
-> IO [InputHints] -> m [InputHints]
forall a b. (a -> b) -> a -> b
$ do
Ptr InputMethodContext
context' <- a -> IO (Ptr InputMethodContext)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
context
CUInt
result <- Ptr InputMethodContext -> IO CUInt
webkit_input_method_context_get_input_hints Ptr InputMethodContext
context'
let result' :: [InputHints]
result' = CUInt -> [InputHints]
forall a b. (Storable a, Integral a, Bits a, IsGFlag b) => a -> [b]
wordToGFlags CUInt
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
context
[InputHints] -> IO [InputHints]
forall (m :: * -> *) a. Monad m => a -> m a
return [InputHints]
result'
#if defined(ENABLE_OVERLOADING)
data InputMethodContextGetInputHintsMethodInfo
instance (signature ~ (m [WebKit2.Flags.InputHints]), MonadIO m, IsInputMethodContext a) => O.OverloadedMethod InputMethodContextGetInputHintsMethodInfo a signature where
overloadedMethod = inputMethodContextGetInputHints
instance O.OverloadedMethodInfo InputMethodContextGetInputHintsMethodInfo a where
overloadedMethodInfo = O.MethodInfo {
O.overloadedMethodName = "GI.WebKit2.Objects.InputMethodContext.inputMethodContextGetInputHints",
O.overloadedMethodURL = "https://hackage.haskell.org/package/gi-webkit2-4.0.27/docs/GI-WebKit2-Objects-InputMethodContext.html#v:inputMethodContextGetInputHints"
}
#endif
foreign import ccall "webkit_input_method_context_get_input_purpose" webkit_input_method_context_get_input_purpose ::
Ptr InputMethodContext ->
IO CUInt
inputMethodContextGetInputPurpose ::
(B.CallStack.HasCallStack, MonadIO m, IsInputMethodContext a) =>
a
-> m WebKit2.Enums.InputPurpose
inputMethodContextGetInputPurpose :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsInputMethodContext a) =>
a -> m InputPurpose
inputMethodContextGetInputPurpose a
context = IO InputPurpose -> m InputPurpose
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO InputPurpose -> m InputPurpose)
-> IO InputPurpose -> m InputPurpose
forall a b. (a -> b) -> a -> b
$ do
Ptr InputMethodContext
context' <- a -> IO (Ptr InputMethodContext)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
context
CUInt
result <- Ptr InputMethodContext -> IO CUInt
webkit_input_method_context_get_input_purpose Ptr InputMethodContext
context'
let result' :: InputPurpose
result' = (Int -> InputPurpose
forall a. Enum a => Int -> a
toEnum (Int -> InputPurpose) -> (CUInt -> Int) -> CUInt -> InputPurpose
forall b c a. (b -> c) -> (a -> b) -> a -> c
. CUInt -> Int
forall a b. (Integral a, Num b) => a -> b
fromIntegral) CUInt
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
context
InputPurpose -> IO InputPurpose
forall (m :: * -> *) a. Monad m => a -> m a
return InputPurpose
result'
#if defined(ENABLE_OVERLOADING)
data InputMethodContextGetInputPurposeMethodInfo
instance (signature ~ (m WebKit2.Enums.InputPurpose), MonadIO m, IsInputMethodContext a) => O.OverloadedMethod InputMethodContextGetInputPurposeMethodInfo a signature where
overloadedMethod = inputMethodContextGetInputPurpose
instance O.OverloadedMethodInfo InputMethodContextGetInputPurposeMethodInfo a where
overloadedMethodInfo = O.MethodInfo {
O.overloadedMethodName = "GI.WebKit2.Objects.InputMethodContext.inputMethodContextGetInputPurpose",
O.overloadedMethodURL = "https://hackage.haskell.org/package/gi-webkit2-4.0.27/docs/GI-WebKit2-Objects-InputMethodContext.html#v:inputMethodContextGetInputPurpose"
}
#endif
foreign import ccall "webkit_input_method_context_get_preedit" webkit_input_method_context_get_preedit ::
Ptr InputMethodContext ->
Ptr CString ->
Ptr (Ptr (GList (Ptr WebKit2.InputMethodUnderline.InputMethodUnderline))) ->
Ptr Word32 ->
IO ()
inputMethodContextGetPreedit ::
(B.CallStack.HasCallStack, MonadIO m, IsInputMethodContext a) =>
a
-> m ((Maybe T.Text, [WebKit2.InputMethodUnderline.InputMethodUnderline], Word32))
inputMethodContextGetPreedit :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsInputMethodContext a) =>
a -> m (Maybe Text, [InputMethodUnderline], Word32)
inputMethodContextGetPreedit a
context = IO (Maybe Text, [InputMethodUnderline], Word32)
-> m (Maybe Text, [InputMethodUnderline], Word32)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (Maybe Text, [InputMethodUnderline], Word32)
-> m (Maybe Text, [InputMethodUnderline], Word32))
-> IO (Maybe Text, [InputMethodUnderline], Word32)
-> m (Maybe Text, [InputMethodUnderline], Word32)
forall a b. (a -> b) -> a -> b
$ do
Ptr InputMethodContext
context' <- a -> IO (Ptr InputMethodContext)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
context
Ptr CString
text <- IO (Ptr CString)
forall a. Storable a => IO (Ptr a)
callocMem :: IO (Ptr CString)
Ptr (Ptr (GList (Ptr InputMethodUnderline)))
underlines <- IO (Ptr (Ptr (GList (Ptr InputMethodUnderline))))
forall a. Storable a => IO (Ptr a)
callocMem :: IO (Ptr (Ptr (GList (Ptr WebKit2.InputMethodUnderline.InputMethodUnderline))))
Ptr Word32
cursorOffset <- IO (Ptr Word32)
forall a. Storable a => IO (Ptr a)
allocMem :: IO (Ptr Word32)
Ptr InputMethodContext
-> Ptr CString
-> Ptr (Ptr (GList (Ptr InputMethodUnderline)))
-> Ptr Word32
-> IO ()
webkit_input_method_context_get_preedit Ptr InputMethodContext
context' Ptr CString
text Ptr (Ptr (GList (Ptr InputMethodUnderline)))
underlines Ptr Word32
cursorOffset
CString
text' <- Ptr CString -> IO CString
forall a. Storable a => Ptr a -> IO a
peek Ptr CString
text
Maybe Text
maybeText' <- CString -> (CString -> IO Text) -> IO (Maybe Text)
forall a b. Ptr a -> (Ptr a -> IO b) -> IO (Maybe b)
convertIfNonNull CString
text' ((CString -> IO Text) -> IO (Maybe Text))
-> (CString -> IO Text) -> IO (Maybe Text)
forall a b. (a -> b) -> a -> b
$ \CString
text'' -> do
Text
text''' <- HasCallStack => CString -> IO Text
CString -> IO Text
cstringToText CString
text''
Text -> IO Text
forall (m :: * -> *) a. Monad m => a -> m a
return Text
text'''
CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
text'
Ptr (GList (Ptr InputMethodUnderline))
underlines' <- Ptr (Ptr (GList (Ptr InputMethodUnderline)))
-> IO (Ptr (GList (Ptr InputMethodUnderline)))
forall a. Storable a => Ptr a -> IO a
peek Ptr (Ptr (GList (Ptr InputMethodUnderline)))
underlines
[Ptr InputMethodUnderline]
underlines'' <- Ptr (GList (Ptr InputMethodUnderline))
-> IO [Ptr InputMethodUnderline]
forall a. Ptr (GList (Ptr a)) -> IO [Ptr a]
unpackGList Ptr (GList (Ptr InputMethodUnderline))
underlines'
[InputMethodUnderline]
underlines''' <- (Ptr InputMethodUnderline -> IO InputMethodUnderline)
-> [Ptr InputMethodUnderline] -> IO [InputMethodUnderline]
forall (t :: * -> *) (m :: * -> *) a b.
(Traversable t, Monad m) =>
(a -> m b) -> t a -> m (t b)
mapM ((ManagedPtr InputMethodUnderline -> InputMethodUnderline)
-> Ptr InputMethodUnderline -> IO InputMethodUnderline
forall a.
(HasCallStack, GBoxed a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr InputMethodUnderline -> InputMethodUnderline
WebKit2.InputMethodUnderline.InputMethodUnderline) [Ptr InputMethodUnderline]
underlines''
Ptr (GList (Ptr InputMethodUnderline)) -> IO ()
forall a. Ptr (GList a) -> IO ()
g_list_free Ptr (GList (Ptr InputMethodUnderline))
underlines'
Word32
cursorOffset' <- Ptr Word32 -> IO Word32
forall a. Storable a => Ptr a -> IO a
peek Ptr Word32
cursorOffset
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
context
Ptr CString -> IO ()
forall a. Ptr a -> IO ()
freeMem Ptr CString
text
Ptr (Ptr (GList (Ptr InputMethodUnderline))) -> IO ()
forall a. Ptr a -> IO ()
freeMem Ptr (Ptr (GList (Ptr InputMethodUnderline)))
underlines
Ptr Word32 -> IO ()
forall a. Ptr a -> IO ()
freeMem Ptr Word32
cursorOffset
(Maybe Text, [InputMethodUnderline], Word32)
-> IO (Maybe Text, [InputMethodUnderline], Word32)
forall (m :: * -> *) a. Monad m => a -> m a
return (Maybe Text
maybeText', [InputMethodUnderline]
underlines''', Word32
cursorOffset')
#if defined(ENABLE_OVERLOADING)
data InputMethodContextGetPreeditMethodInfo
instance (signature ~ (m ((Maybe T.Text, [WebKit2.InputMethodUnderline.InputMethodUnderline], Word32))), MonadIO m, IsInputMethodContext a) => O.OverloadedMethod InputMethodContextGetPreeditMethodInfo a signature where
overloadedMethod = inputMethodContextGetPreedit
instance O.OverloadedMethodInfo InputMethodContextGetPreeditMethodInfo a where
overloadedMethodInfo = O.MethodInfo {
O.overloadedMethodName = "GI.WebKit2.Objects.InputMethodContext.inputMethodContextGetPreedit",
O.overloadedMethodURL = "https://hackage.haskell.org/package/gi-webkit2-4.0.27/docs/GI-WebKit2-Objects-InputMethodContext.html#v:inputMethodContextGetPreedit"
}
#endif
foreign import ccall "webkit_input_method_context_notify_cursor_area" webkit_input_method_context_notify_cursor_area ::
Ptr InputMethodContext ->
Int32 ->
Int32 ->
Int32 ->
Int32 ->
IO ()
inputMethodContextNotifyCursorArea ::
(B.CallStack.HasCallStack, MonadIO m, IsInputMethodContext a) =>
a
-> Int32
-> Int32
-> Int32
-> Int32
-> m ()
inputMethodContextNotifyCursorArea :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsInputMethodContext a) =>
a -> Int32 -> Int32 -> Int32 -> Int32 -> m ()
inputMethodContextNotifyCursorArea a
context Int32
x Int32
y Int32
width Int32
height = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
Ptr InputMethodContext
context' <- a -> IO (Ptr InputMethodContext)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
context
Ptr InputMethodContext -> Int32 -> Int32 -> Int32 -> Int32 -> IO ()
webkit_input_method_context_notify_cursor_area Ptr InputMethodContext
context' Int32
x Int32
y Int32
width Int32
height
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
context
() -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data InputMethodContextNotifyCursorAreaMethodInfo
instance (signature ~ (Int32 -> Int32 -> Int32 -> Int32 -> m ()), MonadIO m, IsInputMethodContext a) => O.OverloadedMethod InputMethodContextNotifyCursorAreaMethodInfo a signature where
overloadedMethod = inputMethodContextNotifyCursorArea
instance O.OverloadedMethodInfo InputMethodContextNotifyCursorAreaMethodInfo a where
overloadedMethodInfo = O.MethodInfo {
O.overloadedMethodName = "GI.WebKit2.Objects.InputMethodContext.inputMethodContextNotifyCursorArea",
O.overloadedMethodURL = "https://hackage.haskell.org/package/gi-webkit2-4.0.27/docs/GI-WebKit2-Objects-InputMethodContext.html#v:inputMethodContextNotifyCursorArea"
}
#endif
foreign import ccall "webkit_input_method_context_notify_focus_in" webkit_input_method_context_notify_focus_in ::
Ptr InputMethodContext ->
IO ()
inputMethodContextNotifyFocusIn ::
(B.CallStack.HasCallStack, MonadIO m, IsInputMethodContext a) =>
a
-> m ()
inputMethodContextNotifyFocusIn :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsInputMethodContext a) =>
a -> m ()
inputMethodContextNotifyFocusIn a
context = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
Ptr InputMethodContext
context' <- a -> IO (Ptr InputMethodContext)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
context
Ptr InputMethodContext -> IO ()
webkit_input_method_context_notify_focus_in Ptr InputMethodContext
context'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
context
() -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data InputMethodContextNotifyFocusInMethodInfo
instance (signature ~ (m ()), MonadIO m, IsInputMethodContext a) => O.OverloadedMethod InputMethodContextNotifyFocusInMethodInfo a signature where
overloadedMethod = inputMethodContextNotifyFocusIn
instance O.OverloadedMethodInfo InputMethodContextNotifyFocusInMethodInfo a where
overloadedMethodInfo = O.MethodInfo {
O.overloadedMethodName = "GI.WebKit2.Objects.InputMethodContext.inputMethodContextNotifyFocusIn",
O.overloadedMethodURL = "https://hackage.haskell.org/package/gi-webkit2-4.0.27/docs/GI-WebKit2-Objects-InputMethodContext.html#v:inputMethodContextNotifyFocusIn"
}
#endif
foreign import ccall "webkit_input_method_context_notify_focus_out" webkit_input_method_context_notify_focus_out ::
Ptr InputMethodContext ->
IO ()
inputMethodContextNotifyFocusOut ::
(B.CallStack.HasCallStack, MonadIO m, IsInputMethodContext a) =>
a
-> m ()
inputMethodContextNotifyFocusOut :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsInputMethodContext a) =>
a -> m ()
inputMethodContextNotifyFocusOut a
context = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
Ptr InputMethodContext
context' <- a -> IO (Ptr InputMethodContext)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
context
Ptr InputMethodContext -> IO ()
webkit_input_method_context_notify_focus_out Ptr InputMethodContext
context'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
context
() -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data InputMethodContextNotifyFocusOutMethodInfo
instance (signature ~ (m ()), MonadIO m, IsInputMethodContext a) => O.OverloadedMethod InputMethodContextNotifyFocusOutMethodInfo a signature where
overloadedMethod = inputMethodContextNotifyFocusOut
instance O.OverloadedMethodInfo InputMethodContextNotifyFocusOutMethodInfo a where
overloadedMethodInfo = O.MethodInfo {
O.overloadedMethodName = "GI.WebKit2.Objects.InputMethodContext.inputMethodContextNotifyFocusOut",
O.overloadedMethodURL = "https://hackage.haskell.org/package/gi-webkit2-4.0.27/docs/GI-WebKit2-Objects-InputMethodContext.html#v:inputMethodContextNotifyFocusOut"
}
#endif
foreign import ccall "webkit_input_method_context_notify_surrounding" webkit_input_method_context_notify_surrounding ::
Ptr InputMethodContext ->
CString ->
Int32 ->
Word32 ->
Word32 ->
IO ()
inputMethodContextNotifySurrounding ::
(B.CallStack.HasCallStack, MonadIO m, IsInputMethodContext a) =>
a
-> T.Text
-> Int32
-> Word32
-> Word32
-> m ()
inputMethodContextNotifySurrounding :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsInputMethodContext a) =>
a -> Text -> Int32 -> Word32 -> Word32 -> m ()
inputMethodContextNotifySurrounding a
context Text
text Int32
length_ Word32
cursorIndex Word32
selectionIndex = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
Ptr InputMethodContext
context' <- a -> IO (Ptr InputMethodContext)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
context
CString
text' <- Text -> IO CString
textToCString Text
text
Ptr InputMethodContext
-> CString -> Int32 -> Word32 -> Word32 -> IO ()
webkit_input_method_context_notify_surrounding Ptr InputMethodContext
context' CString
text' Int32
length_ Word32
cursorIndex Word32
selectionIndex
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
context
CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
text'
() -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data InputMethodContextNotifySurroundingMethodInfo
instance (signature ~ (T.Text -> Int32 -> Word32 -> Word32 -> m ()), MonadIO m, IsInputMethodContext a) => O.OverloadedMethod InputMethodContextNotifySurroundingMethodInfo a signature where
overloadedMethod = inputMethodContextNotifySurrounding
instance O.OverloadedMethodInfo InputMethodContextNotifySurroundingMethodInfo a where
overloadedMethodInfo = O.MethodInfo {
O.overloadedMethodName = "GI.WebKit2.Objects.InputMethodContext.inputMethodContextNotifySurrounding",
O.overloadedMethodURL = "https://hackage.haskell.org/package/gi-webkit2-4.0.27/docs/GI-WebKit2-Objects-InputMethodContext.html#v:inputMethodContextNotifySurrounding"
}
#endif
foreign import ccall "webkit_input_method_context_reset" webkit_input_method_context_reset ::
Ptr InputMethodContext ->
IO ()
inputMethodContextReset ::
(B.CallStack.HasCallStack, MonadIO m, IsInputMethodContext a) =>
a
-> m ()
inputMethodContextReset :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsInputMethodContext a) =>
a -> m ()
inputMethodContextReset a
context = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
Ptr InputMethodContext
context' <- a -> IO (Ptr InputMethodContext)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
context
Ptr InputMethodContext -> IO ()
webkit_input_method_context_reset Ptr InputMethodContext
context'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
context
() -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data InputMethodContextResetMethodInfo
instance (signature ~ (m ()), MonadIO m, IsInputMethodContext a) => O.OverloadedMethod InputMethodContextResetMethodInfo a signature where
overloadedMethod = inputMethodContextReset
instance O.OverloadedMethodInfo InputMethodContextResetMethodInfo a where
overloadedMethodInfo = O.MethodInfo {
O.overloadedMethodName = "GI.WebKit2.Objects.InputMethodContext.inputMethodContextReset",
O.overloadedMethodURL = "https://hackage.haskell.org/package/gi-webkit2-4.0.27/docs/GI-WebKit2-Objects-InputMethodContext.html#v:inputMethodContextReset"
}
#endif
foreign import ccall "webkit_input_method_context_set_enable_preedit" webkit_input_method_context_set_enable_preedit ::
Ptr InputMethodContext ->
CInt ->
IO ()
inputMethodContextSetEnablePreedit ::
(B.CallStack.HasCallStack, MonadIO m, IsInputMethodContext a) =>
a
-> Bool
-> m ()
inputMethodContextSetEnablePreedit :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsInputMethodContext a) =>
a -> Bool -> m ()
inputMethodContextSetEnablePreedit a
context Bool
enabled = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
Ptr InputMethodContext
context' <- a -> IO (Ptr InputMethodContext)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
context
let enabled' :: CInt
enabled' = (Int -> CInt
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Int -> CInt) -> (Bool -> Int) -> Bool -> CInt
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Bool -> Int
forall a. Enum a => a -> Int
fromEnum) Bool
enabled
Ptr InputMethodContext -> CInt -> IO ()
webkit_input_method_context_set_enable_preedit Ptr InputMethodContext
context' CInt
enabled'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
context
() -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data InputMethodContextSetEnablePreeditMethodInfo
instance (signature ~ (Bool -> m ()), MonadIO m, IsInputMethodContext a) => O.OverloadedMethod InputMethodContextSetEnablePreeditMethodInfo a signature where
overloadedMethod = inputMethodContextSetEnablePreedit
instance O.OverloadedMethodInfo InputMethodContextSetEnablePreeditMethodInfo a where
overloadedMethodInfo = O.MethodInfo {
O.overloadedMethodName = "GI.WebKit2.Objects.InputMethodContext.inputMethodContextSetEnablePreedit",
O.overloadedMethodURL = "https://hackage.haskell.org/package/gi-webkit2-4.0.27/docs/GI-WebKit2-Objects-InputMethodContext.html#v:inputMethodContextSetEnablePreedit"
}
#endif
foreign import ccall "webkit_input_method_context_set_input_hints" webkit_input_method_context_set_input_hints ::
Ptr InputMethodContext ->
CUInt ->
IO ()
inputMethodContextSetInputHints ::
(B.CallStack.HasCallStack, MonadIO m, IsInputMethodContext a) =>
a
-> [WebKit2.Flags.InputHints]
-> m ()
inputMethodContextSetInputHints :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsInputMethodContext a) =>
a -> [InputHints] -> m ()
inputMethodContextSetInputHints a
context [InputHints]
hints = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
Ptr InputMethodContext
context' <- a -> IO (Ptr InputMethodContext)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
context
let hints' :: CUInt
hints' = [InputHints] -> CUInt
forall b a. (Num b, IsGFlag a) => [a] -> b
gflagsToWord [InputHints]
hints
Ptr InputMethodContext -> CUInt -> IO ()
webkit_input_method_context_set_input_hints Ptr InputMethodContext
context' CUInt
hints'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
context
() -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data InputMethodContextSetInputHintsMethodInfo
instance (signature ~ ([WebKit2.Flags.InputHints] -> m ()), MonadIO m, IsInputMethodContext a) => O.OverloadedMethod InputMethodContextSetInputHintsMethodInfo a signature where
overloadedMethod = inputMethodContextSetInputHints
instance O.OverloadedMethodInfo InputMethodContextSetInputHintsMethodInfo a where
overloadedMethodInfo = O.MethodInfo {
O.overloadedMethodName = "GI.WebKit2.Objects.InputMethodContext.inputMethodContextSetInputHints",
O.overloadedMethodURL = "https://hackage.haskell.org/package/gi-webkit2-4.0.27/docs/GI-WebKit2-Objects-InputMethodContext.html#v:inputMethodContextSetInputHints"
}
#endif
foreign import ccall "webkit_input_method_context_set_input_purpose" webkit_input_method_context_set_input_purpose ::
Ptr InputMethodContext ->
CUInt ->
IO ()
inputMethodContextSetInputPurpose ::
(B.CallStack.HasCallStack, MonadIO m, IsInputMethodContext a) =>
a
-> WebKit2.Enums.InputPurpose
-> m ()
inputMethodContextSetInputPurpose :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsInputMethodContext a) =>
a -> InputPurpose -> m ()
inputMethodContextSetInputPurpose a
context InputPurpose
purpose = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
Ptr InputMethodContext
context' <- a -> IO (Ptr InputMethodContext)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
context
let purpose' :: CUInt
purpose' = (Int -> CUInt
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Int -> CUInt) -> (InputPurpose -> Int) -> InputPurpose -> CUInt
forall b c a. (b -> c) -> (a -> b) -> a -> c
. InputPurpose -> Int
forall a. Enum a => a -> Int
fromEnum) InputPurpose
purpose
Ptr InputMethodContext -> CUInt -> IO ()
webkit_input_method_context_set_input_purpose Ptr InputMethodContext
context' CUInt
purpose'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
context
() -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data InputMethodContextSetInputPurposeMethodInfo
instance (signature ~ (WebKit2.Enums.InputPurpose -> m ()), MonadIO m, IsInputMethodContext a) => O.OverloadedMethod InputMethodContextSetInputPurposeMethodInfo a signature where
overloadedMethod = inputMethodContextSetInputPurpose
instance O.OverloadedMethodInfo InputMethodContextSetInputPurposeMethodInfo a where
overloadedMethodInfo = O.MethodInfo {
O.overloadedMethodName = "GI.WebKit2.Objects.InputMethodContext.inputMethodContextSetInputPurpose",
O.overloadedMethodURL = "https://hackage.haskell.org/package/gi-webkit2-4.0.27/docs/GI-WebKit2-Objects-InputMethodContext.html#v:inputMethodContextSetInputPurpose"
}
#endif