{-# LANGUAGE TypeApplications #-}


-- | Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-- License    : LGPL-2.1
-- Maintainer : Iñaki García Etxebarria
-- 
-- /No description available in the introspection data./

#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif

module GI.GdkX11.Objects.X11Window
    ( 

-- * Exported types
    X11Window(..)                           ,
    IsX11Window                             ,
    toX11Window                             ,
    noX11Window                             ,


 -- * Methods
-- ** Overloaded methods #method:Overloaded methods#

#if defined(ENABLE_OVERLOADING)
    ResolveX11WindowMethod                  ,
#endif


-- ** foreignNewForDisplay #method:foreignNewForDisplay#

    x11WindowForeignNewForDisplay           ,


-- ** getDesktop #method:getDesktop#

#if defined(ENABLE_OVERLOADING)
    X11WindowGetDesktopMethodInfo           ,
#endif
    x11WindowGetDesktop                     ,


-- ** getXid #method:getXid#

#if defined(ENABLE_OVERLOADING)
    X11WindowGetXidMethodInfo               ,
#endif
    x11WindowGetXid                         ,


-- ** lookupForDisplay #method:lookupForDisplay#

    x11WindowLookupForDisplay               ,


-- ** moveToCurrentDesktop #method:moveToCurrentDesktop#

#if defined(ENABLE_OVERLOADING)
    X11WindowMoveToCurrentDesktopMethodInfo ,
#endif
    x11WindowMoveToCurrentDesktop           ,


-- ** moveToDesktop #method:moveToDesktop#

#if defined(ENABLE_OVERLOADING)
    X11WindowMoveToDesktopMethodInfo        ,
#endif
    x11WindowMoveToDesktop                  ,


-- ** setFrameExtents #method:setFrameExtents#

#if defined(ENABLE_OVERLOADING)
    X11WindowSetFrameExtentsMethodInfo      ,
#endif
    x11WindowSetFrameExtents                ,


-- ** setFrameSyncEnabled #method:setFrameSyncEnabled#

#if defined(ENABLE_OVERLOADING)
    X11WindowSetFrameSyncEnabledMethodInfo  ,
#endif
    x11WindowSetFrameSyncEnabled            ,


-- ** setHideTitlebarWhenMaximized #method:setHideTitlebarWhenMaximized#

#if defined(ENABLE_OVERLOADING)
    X11WindowSetHideTitlebarWhenMaximizedMethodInfo,
#endif
    x11WindowSetHideTitlebarWhenMaximized   ,


-- ** setThemeVariant #method:setThemeVariant#

#if defined(ENABLE_OVERLOADING)
    X11WindowSetThemeVariantMethodInfo      ,
#endif
    x11WindowSetThemeVariant                ,


-- ** setUserTime #method:setUserTime#

#if defined(ENABLE_OVERLOADING)
    X11WindowSetUserTimeMethodInfo          ,
#endif
    x11WindowSetUserTime                    ,


-- ** setUtf8Property #method:setUtf8Property#

#if defined(ENABLE_OVERLOADING)
    X11WindowSetUtf8PropertyMethodInfo      ,
#endif
    x11WindowSetUtf8Property                ,




    ) 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.ManagedPtr as B.ManagedPtr
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 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 GI.GObject.Objects.Object as GObject.Object
import qualified GI.Gdk.Objects.Window as Gdk.Window
import {-# SOURCE #-} qualified GI.GdkX11.Objects.X11Display as GdkX11.X11Display

-- | Memory-managed wrapper type.
newtype X11Window = X11Window (ManagedPtr X11Window)
    deriving (X11Window -> X11Window -> Bool
(X11Window -> X11Window -> Bool)
-> (X11Window -> X11Window -> Bool) -> Eq X11Window
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: X11Window -> X11Window -> Bool
$c/= :: X11Window -> X11Window -> Bool
== :: X11Window -> X11Window -> Bool
$c== :: X11Window -> X11Window -> Bool
Eq)
foreign import ccall "gdk_x11_window_get_type"
    c_gdk_x11_window_get_type :: IO GType

instance GObject X11Window where
    gobjectType :: IO GType
gobjectType = IO GType
c_gdk_x11_window_get_type
    

-- | Convert 'X11Window' to and from 'Data.GI.Base.GValue.GValue' with 'Data.GI.Base.GValue.toGValue' and 'Data.GI.Base.GValue.fromGValue'.
instance B.GValue.IsGValue X11Window where
    toGValue :: X11Window -> IO GValue
toGValue o :: X11Window
o = do
        GType
gtype <- IO GType
c_gdk_x11_window_get_type
        X11Window -> (Ptr X11Window -> IO GValue) -> IO GValue
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
B.ManagedPtr.withManagedPtr X11Window
o (GType
-> (GValue -> Ptr X11Window -> IO ()) -> Ptr X11Window -> IO GValue
forall a. GType -> (GValue -> a -> IO ()) -> a -> IO GValue
B.GValue.buildGValue GType
gtype GValue -> Ptr X11Window -> IO ()
forall a. GObject a => GValue -> Ptr a -> IO ()
B.GValue.set_object)
        
    fromGValue :: GValue -> IO X11Window
fromGValue gv :: GValue
gv = do
        Ptr X11Window
ptr <- GValue -> IO (Ptr X11Window)
forall b. GObject b => GValue -> IO (Ptr b)
B.GValue.get_object GValue
gv :: IO (Ptr X11Window)
        (ManagedPtr X11Window -> X11Window)
-> Ptr X11Window -> IO X11Window
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
B.ManagedPtr.newObject ManagedPtr X11Window -> X11Window
X11Window Ptr X11Window
ptr
        
    

-- | Type class for types which can be safely cast to `X11Window`, for instance with `toX11Window`.
class (GObject o, O.IsDescendantOf X11Window o) => IsX11Window o
instance (GObject o, O.IsDescendantOf X11Window o) => IsX11Window o

instance O.HasParentTypes X11Window
type instance O.ParentTypes X11Window = '[Gdk.Window.Window, GObject.Object.Object]

-- | Cast to `X11Window`, for types for which this is known to be safe. For general casts, use `Data.GI.Base.ManagedPtr.castTo`.
toX11Window :: (MonadIO m, IsX11Window o) => o -> m X11Window
toX11Window :: o -> m X11Window
toX11Window = IO X11Window -> m X11Window
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO X11Window -> m X11Window)
-> (o -> IO X11Window) -> o -> m X11Window
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (ManagedPtr X11Window -> X11Window) -> o -> IO X11Window
forall o o'.
(HasCallStack, GObject o, GObject o') =>
(ManagedPtr o' -> o') -> o -> IO o'
unsafeCastTo ManagedPtr X11Window -> X11Window
X11Window

-- | A convenience alias for `Nothing` :: `Maybe` `X11Window`.
noX11Window :: Maybe X11Window
noX11Window :: Maybe X11Window
noX11Window = Maybe X11Window
forall a. Maybe a
Nothing

#if defined(ENABLE_OVERLOADING)
type family ResolveX11WindowMethod (t :: Symbol) (o :: *) :: * where
    ResolveX11WindowMethod "beep" o = Gdk.Window.WindowBeepMethodInfo
    ResolveX11WindowMethod "beginDrawFrame" o = Gdk.Window.WindowBeginDrawFrameMethodInfo
    ResolveX11WindowMethod "beginMoveDrag" o = Gdk.Window.WindowBeginMoveDragMethodInfo
    ResolveX11WindowMethod "beginMoveDragForDevice" o = Gdk.Window.WindowBeginMoveDragForDeviceMethodInfo
    ResolveX11WindowMethod "beginPaintRect" o = Gdk.Window.WindowBeginPaintRectMethodInfo
    ResolveX11WindowMethod "beginPaintRegion" o = Gdk.Window.WindowBeginPaintRegionMethodInfo
    ResolveX11WindowMethod "beginResizeDrag" o = Gdk.Window.WindowBeginResizeDragMethodInfo
    ResolveX11WindowMethod "beginResizeDragForDevice" o = Gdk.Window.WindowBeginResizeDragForDeviceMethodInfo
    ResolveX11WindowMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
    ResolveX11WindowMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
    ResolveX11WindowMethod "configureFinished" o = Gdk.Window.WindowConfigureFinishedMethodInfo
    ResolveX11WindowMethod "coordsFromParent" o = Gdk.Window.WindowCoordsFromParentMethodInfo
    ResolveX11WindowMethod "coordsToParent" o = Gdk.Window.WindowCoordsToParentMethodInfo
    ResolveX11WindowMethod "createGlContext" o = Gdk.Window.WindowCreateGlContextMethodInfo
    ResolveX11WindowMethod "createSimilarImageSurface" o = Gdk.Window.WindowCreateSimilarImageSurfaceMethodInfo
    ResolveX11WindowMethod "createSimilarSurface" o = Gdk.Window.WindowCreateSimilarSurfaceMethodInfo
    ResolveX11WindowMethod "deiconify" o = Gdk.Window.WindowDeiconifyMethodInfo
    ResolveX11WindowMethod "destroy" o = Gdk.Window.WindowDestroyMethodInfo
    ResolveX11WindowMethod "destroyNotify" o = Gdk.Window.WindowDestroyNotifyMethodInfo
    ResolveX11WindowMethod "enableSynchronizedConfigure" o = Gdk.Window.WindowEnableSynchronizedConfigureMethodInfo
    ResolveX11WindowMethod "endDrawFrame" o = Gdk.Window.WindowEndDrawFrameMethodInfo
    ResolveX11WindowMethod "endPaint" o = Gdk.Window.WindowEndPaintMethodInfo
    ResolveX11WindowMethod "ensureNative" o = Gdk.Window.WindowEnsureNativeMethodInfo
    ResolveX11WindowMethod "flush" o = Gdk.Window.WindowFlushMethodInfo
    ResolveX11WindowMethod "focus" o = Gdk.Window.WindowFocusMethodInfo
    ResolveX11WindowMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
    ResolveX11WindowMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
    ResolveX11WindowMethod "freezeToplevelUpdatesLibgtkOnly" o = Gdk.Window.WindowFreezeToplevelUpdatesLibgtkOnlyMethodInfo
    ResolveX11WindowMethod "freezeUpdates" o = Gdk.Window.WindowFreezeUpdatesMethodInfo
    ResolveX11WindowMethod "fullscreen" o = Gdk.Window.WindowFullscreenMethodInfo
    ResolveX11WindowMethod "fullscreenOnMonitor" o = Gdk.Window.WindowFullscreenOnMonitorMethodInfo
    ResolveX11WindowMethod "geometryChanged" o = Gdk.Window.WindowGeometryChangedMethodInfo
    ResolveX11WindowMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
    ResolveX11WindowMethod "hasNative" o = Gdk.Window.WindowHasNativeMethodInfo
    ResolveX11WindowMethod "hide" o = Gdk.Window.WindowHideMethodInfo
    ResolveX11WindowMethod "iconify" o = Gdk.Window.WindowIconifyMethodInfo
    ResolveX11WindowMethod "inputShapeCombineRegion" o = Gdk.Window.WindowInputShapeCombineRegionMethodInfo
    ResolveX11WindowMethod "invalidateMaybeRecurse" o = Gdk.Window.WindowInvalidateMaybeRecurseMethodInfo
    ResolveX11WindowMethod "invalidateRect" o = Gdk.Window.WindowInvalidateRectMethodInfo
    ResolveX11WindowMethod "invalidateRegion" o = Gdk.Window.WindowInvalidateRegionMethodInfo
    ResolveX11WindowMethod "isDestroyed" o = Gdk.Window.WindowIsDestroyedMethodInfo
    ResolveX11WindowMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
    ResolveX11WindowMethod "isInputOnly" o = Gdk.Window.WindowIsInputOnlyMethodInfo
    ResolveX11WindowMethod "isShaped" o = Gdk.Window.WindowIsShapedMethodInfo
    ResolveX11WindowMethod "isViewable" o = Gdk.Window.WindowIsViewableMethodInfo
    ResolveX11WindowMethod "isVisible" o = Gdk.Window.WindowIsVisibleMethodInfo
    ResolveX11WindowMethod "lower" o = Gdk.Window.WindowLowerMethodInfo
    ResolveX11WindowMethod "markPaintFromClip" o = Gdk.Window.WindowMarkPaintFromClipMethodInfo
    ResolveX11WindowMethod "maximize" o = Gdk.Window.WindowMaximizeMethodInfo
    ResolveX11WindowMethod "mergeChildInputShapes" o = Gdk.Window.WindowMergeChildInputShapesMethodInfo
    ResolveX11WindowMethod "mergeChildShapes" o = Gdk.Window.WindowMergeChildShapesMethodInfo
    ResolveX11WindowMethod "move" o = Gdk.Window.WindowMoveMethodInfo
    ResolveX11WindowMethod "moveRegion" o = Gdk.Window.WindowMoveRegionMethodInfo
    ResolveX11WindowMethod "moveResize" o = Gdk.Window.WindowMoveResizeMethodInfo
    ResolveX11WindowMethod "moveToCurrentDesktop" o = X11WindowMoveToCurrentDesktopMethodInfo
    ResolveX11WindowMethod "moveToDesktop" o = X11WindowMoveToDesktopMethodInfo
    ResolveX11WindowMethod "moveToRect" o = Gdk.Window.WindowMoveToRectMethodInfo
    ResolveX11WindowMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
    ResolveX11WindowMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
    ResolveX11WindowMethod "peekChildren" o = Gdk.Window.WindowPeekChildrenMethodInfo
    ResolveX11WindowMethod "processUpdates" o = Gdk.Window.WindowProcessUpdatesMethodInfo
    ResolveX11WindowMethod "raise" o = Gdk.Window.WindowRaiseMethodInfo
    ResolveX11WindowMethod "ref" o = GObject.Object.ObjectRefMethodInfo
    ResolveX11WindowMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
    ResolveX11WindowMethod "registerDnd" o = Gdk.Window.WindowRegisterDndMethodInfo
    ResolveX11WindowMethod "reparent" o = Gdk.Window.WindowReparentMethodInfo
    ResolveX11WindowMethod "resize" o = Gdk.Window.WindowResizeMethodInfo
    ResolveX11WindowMethod "restack" o = Gdk.Window.WindowRestackMethodInfo
    ResolveX11WindowMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
    ResolveX11WindowMethod "scroll" o = Gdk.Window.WindowScrollMethodInfo
    ResolveX11WindowMethod "shapeCombineRegion" o = Gdk.Window.WindowShapeCombineRegionMethodInfo
    ResolveX11WindowMethod "show" o = Gdk.Window.WindowShowMethodInfo
    ResolveX11WindowMethod "showUnraised" o = Gdk.Window.WindowShowUnraisedMethodInfo
    ResolveX11WindowMethod "showWindowMenu" o = Gdk.Window.WindowShowWindowMenuMethodInfo
    ResolveX11WindowMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
    ResolveX11WindowMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
    ResolveX11WindowMethod "stick" o = Gdk.Window.WindowStickMethodInfo
    ResolveX11WindowMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
    ResolveX11WindowMethod "thawToplevelUpdatesLibgtkOnly" o = Gdk.Window.WindowThawToplevelUpdatesLibgtkOnlyMethodInfo
    ResolveX11WindowMethod "thawUpdates" o = Gdk.Window.WindowThawUpdatesMethodInfo
    ResolveX11WindowMethod "unfullscreen" o = Gdk.Window.WindowUnfullscreenMethodInfo
    ResolveX11WindowMethod "unmaximize" o = Gdk.Window.WindowUnmaximizeMethodInfo
    ResolveX11WindowMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
    ResolveX11WindowMethod "unstick" o = Gdk.Window.WindowUnstickMethodInfo
    ResolveX11WindowMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
    ResolveX11WindowMethod "withdraw" o = Gdk.Window.WindowWithdrawMethodInfo
    ResolveX11WindowMethod "getAcceptFocus" o = Gdk.Window.WindowGetAcceptFocusMethodInfo
    ResolveX11WindowMethod "getBackgroundPattern" o = Gdk.Window.WindowGetBackgroundPatternMethodInfo
    ResolveX11WindowMethod "getChildren" o = Gdk.Window.WindowGetChildrenMethodInfo
    ResolveX11WindowMethod "getChildrenWithUserData" o = Gdk.Window.WindowGetChildrenWithUserDataMethodInfo
    ResolveX11WindowMethod "getClipRegion" o = Gdk.Window.WindowGetClipRegionMethodInfo
    ResolveX11WindowMethod "getComposited" o = Gdk.Window.WindowGetCompositedMethodInfo
    ResolveX11WindowMethod "getCursor" o = Gdk.Window.WindowGetCursorMethodInfo
    ResolveX11WindowMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
    ResolveX11WindowMethod "getDecorations" o = Gdk.Window.WindowGetDecorationsMethodInfo
    ResolveX11WindowMethod "getDesktop" o = X11WindowGetDesktopMethodInfo
    ResolveX11WindowMethod "getDeviceCursor" o = Gdk.Window.WindowGetDeviceCursorMethodInfo
    ResolveX11WindowMethod "getDeviceEvents" o = Gdk.Window.WindowGetDeviceEventsMethodInfo
    ResolveX11WindowMethod "getDevicePosition" o = Gdk.Window.WindowGetDevicePositionMethodInfo
    ResolveX11WindowMethod "getDevicePositionDouble" o = Gdk.Window.WindowGetDevicePositionDoubleMethodInfo
    ResolveX11WindowMethod "getDisplay" o = Gdk.Window.WindowGetDisplayMethodInfo
    ResolveX11WindowMethod "getDragProtocol" o = Gdk.Window.WindowGetDragProtocolMethodInfo
    ResolveX11WindowMethod "getEffectiveParent" o = Gdk.Window.WindowGetEffectiveParentMethodInfo
    ResolveX11WindowMethod "getEffectiveToplevel" o = Gdk.Window.WindowGetEffectiveToplevelMethodInfo
    ResolveX11WindowMethod "getEventCompression" o = Gdk.Window.WindowGetEventCompressionMethodInfo
    ResolveX11WindowMethod "getEvents" o = Gdk.Window.WindowGetEventsMethodInfo
    ResolveX11WindowMethod "getFocusOnMap" o = Gdk.Window.WindowGetFocusOnMapMethodInfo
    ResolveX11WindowMethod "getFrameClock" o = Gdk.Window.WindowGetFrameClockMethodInfo
    ResolveX11WindowMethod "getFrameExtents" o = Gdk.Window.WindowGetFrameExtentsMethodInfo
    ResolveX11WindowMethod "getFullscreenMode" o = Gdk.Window.WindowGetFullscreenModeMethodInfo
    ResolveX11WindowMethod "getGeometry" o = Gdk.Window.WindowGetGeometryMethodInfo
    ResolveX11WindowMethod "getGroup" o = Gdk.Window.WindowGetGroupMethodInfo
    ResolveX11WindowMethod "getHeight" o = Gdk.Window.WindowGetHeightMethodInfo
    ResolveX11WindowMethod "getModalHint" o = Gdk.Window.WindowGetModalHintMethodInfo
    ResolveX11WindowMethod "getOrigin" o = Gdk.Window.WindowGetOriginMethodInfo
    ResolveX11WindowMethod "getParent" o = Gdk.Window.WindowGetParentMethodInfo
    ResolveX11WindowMethod "getPassThrough" o = Gdk.Window.WindowGetPassThroughMethodInfo
    ResolveX11WindowMethod "getPointer" o = Gdk.Window.WindowGetPointerMethodInfo
    ResolveX11WindowMethod "getPosition" o = Gdk.Window.WindowGetPositionMethodInfo
    ResolveX11WindowMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
    ResolveX11WindowMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
    ResolveX11WindowMethod "getRootCoords" o = Gdk.Window.WindowGetRootCoordsMethodInfo
    ResolveX11WindowMethod "getRootOrigin" o = Gdk.Window.WindowGetRootOriginMethodInfo
    ResolveX11WindowMethod "getScaleFactor" o = Gdk.Window.WindowGetScaleFactorMethodInfo
    ResolveX11WindowMethod "getScreen" o = Gdk.Window.WindowGetScreenMethodInfo
    ResolveX11WindowMethod "getSourceEvents" o = Gdk.Window.WindowGetSourceEventsMethodInfo
    ResolveX11WindowMethod "getState" o = Gdk.Window.WindowGetStateMethodInfo
    ResolveX11WindowMethod "getSupportMultidevice" o = Gdk.Window.WindowGetSupportMultideviceMethodInfo
    ResolveX11WindowMethod "getToplevel" o = Gdk.Window.WindowGetToplevelMethodInfo
    ResolveX11WindowMethod "getTypeHint" o = Gdk.Window.WindowGetTypeHintMethodInfo
    ResolveX11WindowMethod "getUpdateArea" o = Gdk.Window.WindowGetUpdateAreaMethodInfo
    ResolveX11WindowMethod "getUserData" o = Gdk.Window.WindowGetUserDataMethodInfo
    ResolveX11WindowMethod "getVisibleRegion" o = Gdk.Window.WindowGetVisibleRegionMethodInfo
    ResolveX11WindowMethod "getVisual" o = Gdk.Window.WindowGetVisualMethodInfo
    ResolveX11WindowMethod "getWidth" o = Gdk.Window.WindowGetWidthMethodInfo
    ResolveX11WindowMethod "getWindowType" o = Gdk.Window.WindowGetWindowTypeMethodInfo
    ResolveX11WindowMethod "getXid" o = X11WindowGetXidMethodInfo
    ResolveX11WindowMethod "setAcceptFocus" o = Gdk.Window.WindowSetAcceptFocusMethodInfo
    ResolveX11WindowMethod "setBackground" o = Gdk.Window.WindowSetBackgroundMethodInfo
    ResolveX11WindowMethod "setBackgroundPattern" o = Gdk.Window.WindowSetBackgroundPatternMethodInfo
    ResolveX11WindowMethod "setBackgroundRgba" o = Gdk.Window.WindowSetBackgroundRgbaMethodInfo
    ResolveX11WindowMethod "setChildInputShapes" o = Gdk.Window.WindowSetChildInputShapesMethodInfo
    ResolveX11WindowMethod "setChildShapes" o = Gdk.Window.WindowSetChildShapesMethodInfo
    ResolveX11WindowMethod "setComposited" o = Gdk.Window.WindowSetCompositedMethodInfo
    ResolveX11WindowMethod "setCursor" o = Gdk.Window.WindowSetCursorMethodInfo
    ResolveX11WindowMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
    ResolveX11WindowMethod "setDataFull" o = GObject.Object.ObjectSetDataFullMethodInfo
    ResolveX11WindowMethod "setDecorations" o = Gdk.Window.WindowSetDecorationsMethodInfo
    ResolveX11WindowMethod "setDeviceCursor" o = Gdk.Window.WindowSetDeviceCursorMethodInfo
    ResolveX11WindowMethod "setDeviceEvents" o = Gdk.Window.WindowSetDeviceEventsMethodInfo
    ResolveX11WindowMethod "setEventCompression" o = Gdk.Window.WindowSetEventCompressionMethodInfo
    ResolveX11WindowMethod "setEvents" o = Gdk.Window.WindowSetEventsMethodInfo
    ResolveX11WindowMethod "setFocusOnMap" o = Gdk.Window.WindowSetFocusOnMapMethodInfo
    ResolveX11WindowMethod "setFrameExtents" o = X11WindowSetFrameExtentsMethodInfo
    ResolveX11WindowMethod "setFrameSyncEnabled" o = X11WindowSetFrameSyncEnabledMethodInfo
    ResolveX11WindowMethod "setFullscreenMode" o = Gdk.Window.WindowSetFullscreenModeMethodInfo
    ResolveX11WindowMethod "setFunctions" o = Gdk.Window.WindowSetFunctionsMethodInfo
    ResolveX11WindowMethod "setGeometryHints" o = Gdk.Window.WindowSetGeometryHintsMethodInfo
    ResolveX11WindowMethod "setGroup" o = Gdk.Window.WindowSetGroupMethodInfo
    ResolveX11WindowMethod "setHideTitlebarWhenMaximized" o = X11WindowSetHideTitlebarWhenMaximizedMethodInfo
    ResolveX11WindowMethod "setIconList" o = Gdk.Window.WindowSetIconListMethodInfo
    ResolveX11WindowMethod "setIconName" o = Gdk.Window.WindowSetIconNameMethodInfo
    ResolveX11WindowMethod "setKeepAbove" o = Gdk.Window.WindowSetKeepAboveMethodInfo
    ResolveX11WindowMethod "setKeepBelow" o = Gdk.Window.WindowSetKeepBelowMethodInfo
    ResolveX11WindowMethod "setModalHint" o = Gdk.Window.WindowSetModalHintMethodInfo
    ResolveX11WindowMethod "setOpacity" o = Gdk.Window.WindowSetOpacityMethodInfo
    ResolveX11WindowMethod "setOpaqueRegion" o = Gdk.Window.WindowSetOpaqueRegionMethodInfo
    ResolveX11WindowMethod "setOverrideRedirect" o = Gdk.Window.WindowSetOverrideRedirectMethodInfo
    ResolveX11WindowMethod "setPassThrough" o = Gdk.Window.WindowSetPassThroughMethodInfo
    ResolveX11WindowMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
    ResolveX11WindowMethod "setRole" o = Gdk.Window.WindowSetRoleMethodInfo
    ResolveX11WindowMethod "setShadowWidth" o = Gdk.Window.WindowSetShadowWidthMethodInfo
    ResolveX11WindowMethod "setSkipPagerHint" o = Gdk.Window.WindowSetSkipPagerHintMethodInfo
    ResolveX11WindowMethod "setSkipTaskbarHint" o = Gdk.Window.WindowSetSkipTaskbarHintMethodInfo
    ResolveX11WindowMethod "setSourceEvents" o = Gdk.Window.WindowSetSourceEventsMethodInfo
    ResolveX11WindowMethod "setStartupId" o = Gdk.Window.WindowSetStartupIdMethodInfo
    ResolveX11WindowMethod "setStaticGravities" o = Gdk.Window.WindowSetStaticGravitiesMethodInfo
    ResolveX11WindowMethod "setSupportMultidevice" o = Gdk.Window.WindowSetSupportMultideviceMethodInfo
    ResolveX11WindowMethod "setThemeVariant" o = X11WindowSetThemeVariantMethodInfo
    ResolveX11WindowMethod "setTitle" o = Gdk.Window.WindowSetTitleMethodInfo
    ResolveX11WindowMethod "setTransientFor" o = Gdk.Window.WindowSetTransientForMethodInfo
    ResolveX11WindowMethod "setTypeHint" o = Gdk.Window.WindowSetTypeHintMethodInfo
    ResolveX11WindowMethod "setUrgencyHint" o = Gdk.Window.WindowSetUrgencyHintMethodInfo
    ResolveX11WindowMethod "setUserData" o = Gdk.Window.WindowSetUserDataMethodInfo
    ResolveX11WindowMethod "setUserTime" o = X11WindowSetUserTimeMethodInfo
    ResolveX11WindowMethod "setUtf8Property" o = X11WindowSetUtf8PropertyMethodInfo
    ResolveX11WindowMethod l o = O.MethodResolutionFailed l o

instance (info ~ ResolveX11WindowMethod t X11Window, O.MethodInfo info X11Window p) => OL.IsLabel t (X11Window -> p) where
#if MIN_VERSION_base(4,10,0)
    fromLabel = O.overloadedMethod @info
#else
    fromLabel _ = O.overloadedMethod @info
#endif

#endif

#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList X11Window
type instance O.AttributeList X11Window = X11WindowAttributeList
type X11WindowAttributeList = ('[ '("cursor", Gdk.Window.WindowCursorPropertyInfo)] :: [(Symbol, *)])
#endif

#if defined(ENABLE_OVERLOADING)
#endif

#if defined(ENABLE_OVERLOADING)
type instance O.SignalList X11Window = X11WindowSignalList
type X11WindowSignalList = ('[ '("createSurface", Gdk.Window.WindowCreateSurfaceSignalInfo), '("fromEmbedder", Gdk.Window.WindowFromEmbedderSignalInfo), '("movedToRect", Gdk.Window.WindowMovedToRectSignalInfo), '("notify", GObject.Object.ObjectNotifySignalInfo), '("pickEmbeddedChild", Gdk.Window.WindowPickEmbeddedChildSignalInfo), '("toEmbedder", Gdk.Window.WindowToEmbedderSignalInfo)] :: [(Symbol, *)])

#endif

-- method X11Window::foreign_new_for_display
-- method type : Constructor
-- Args: [ Arg
--           { argCName = "display"
--           , argType =
--               TInterface Name { namespace = "GdkX11" , name = "X11Display" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText =
--                     Just "the #GdkDisplay where the window handle comes from."
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "window"
--           , argType = TBasicType TULong
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "an Xlib Window" , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just
--               (TInterface Name { namespace = "GdkX11" , name = "X11Window" })
-- throws : False
-- Skip return : False

foreign import ccall "gdk_x11_window_foreign_new_for_display" gdk_x11_window_foreign_new_for_display :: 
    Ptr GdkX11.X11Display.X11Display ->     -- display : TInterface (Name {namespace = "GdkX11", name = "X11Display"})
    CULong ->                               -- window : TBasicType TULong
    IO (Ptr X11Window)

-- | Wraps a native window in a t'GI.Gdk.Objects.Window.Window'. The function will try to
-- look up the window using 'GI.GdkX11.Objects.X11Window.x11WindowLookupForDisplay' first.
-- If it does not find it there, it will create a new window.
-- 
-- This may fail if the window has been destroyed. If the window
-- was already known to GDK, a new reference to the existing
-- t'GI.Gdk.Objects.Window.Window' is returned.
-- 
-- /Since: 2.24/
x11WindowForeignNewForDisplay ::
    (B.CallStack.HasCallStack, MonadIO m, GdkX11.X11Display.IsX11Display a) =>
    a
    -- ^ /@display@/: the t'GI.Gdk.Objects.Display.Display' where the window handle comes from.
    -> CULong
    -- ^ /@window@/: an Xlib Window
    -> m X11Window
    -- ^ __Returns:__ a t'GI.Gdk.Objects.Window.Window' wrapper for the native
    --   window, or 'P.Nothing' if the window has been destroyed. The wrapper
    --   will be newly created, if one doesn’t exist already.
x11WindowForeignNewForDisplay :: a -> CULong -> m X11Window
x11WindowForeignNewForDisplay display :: a
display window :: CULong
window = IO X11Window -> m X11Window
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO X11Window -> m X11Window) -> IO X11Window -> m X11Window
forall a b. (a -> b) -> a -> b
$ do
    Ptr X11Display
display' <- a -> IO (Ptr X11Display)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
display
    Ptr X11Window
result <- Ptr X11Display -> CULong -> IO (Ptr X11Window)
gdk_x11_window_foreign_new_for_display Ptr X11Display
display' CULong
window
    Text -> Ptr X11Window -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL "x11WindowForeignNewForDisplay" Ptr X11Window
result
    X11Window
result' <- ((ManagedPtr X11Window -> X11Window)
-> Ptr X11Window -> IO X11Window
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
wrapObject ManagedPtr X11Window -> X11Window
X11Window) Ptr X11Window
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
display
    X11Window -> IO X11Window
forall (m :: * -> *) a. Monad m => a -> m a
return X11Window
result'

#if defined(ENABLE_OVERLOADING)
#endif

-- method X11Window::get_desktop
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "window"
--           , argType =
--               TInterface Name { namespace = "GdkX11" , name = "X11Window" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #GdkWindow" , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just (TBasicType TUInt32)
-- throws : False
-- Skip return : False

foreign import ccall "gdk_x11_window_get_desktop" gdk_x11_window_get_desktop :: 
    Ptr X11Window ->                        -- window : TInterface (Name {namespace = "GdkX11", name = "X11Window"})
    IO Word32

-- | Gets the number of the workspace /@window@/ is on.
-- 
-- /Since: 3.10/
x11WindowGetDesktop ::
    (B.CallStack.HasCallStack, MonadIO m, IsX11Window a) =>
    a
    -- ^ /@window@/: a t'GI.Gdk.Objects.Window.Window'
    -> m Word32
    -- ^ __Returns:__ the current workspace of /@window@/
x11WindowGetDesktop :: a -> m Word32
x11WindowGetDesktop window :: a
window = IO Word32 -> m Word32
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Word32 -> m Word32) -> IO Word32 -> m Word32
forall a b. (a -> b) -> a -> b
$ do
    Ptr X11Window
window' <- a -> IO (Ptr X11Window)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
window
    Word32
result <- Ptr X11Window -> IO Word32
gdk_x11_window_get_desktop Ptr X11Window
window'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
window
    Word32 -> IO Word32
forall (m :: * -> *) a. Monad m => a -> m a
return Word32
result

#if defined(ENABLE_OVERLOADING)
data X11WindowGetDesktopMethodInfo
instance (signature ~ (m Word32), MonadIO m, IsX11Window a) => O.MethodInfo X11WindowGetDesktopMethodInfo a signature where
    overloadedMethod = x11WindowGetDesktop

#endif

-- method X11Window::get_xid
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "window"
--           , argType =
--               TInterface Name { namespace = "GdkX11" , name = "X11Window" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a native #GdkWindow."
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just (TBasicType TULong)
-- throws : False
-- Skip return : False

foreign import ccall "gdk_x11_window_get_xid" gdk_x11_window_get_xid :: 
    Ptr X11Window ->                        -- window : TInterface (Name {namespace = "GdkX11", name = "X11Window"})
    IO CULong

-- | Returns the X resource (window) belonging to a t'GI.Gdk.Objects.Window.Window'.
x11WindowGetXid ::
    (B.CallStack.HasCallStack, MonadIO m, IsX11Window a) =>
    a
    -- ^ /@window@/: a native t'GI.Gdk.Objects.Window.Window'.
    -> m CULong
    -- ^ __Returns:__ the ID of /@drawable@/’s X resource.
x11WindowGetXid :: a -> m CULong
x11WindowGetXid window :: a
window = IO CULong -> m CULong
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO CULong -> m CULong) -> IO CULong -> m CULong
forall a b. (a -> b) -> a -> b
$ do
    Ptr X11Window
window' <- a -> IO (Ptr X11Window)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
window
    CULong
result <- Ptr X11Window -> IO CULong
gdk_x11_window_get_xid Ptr X11Window
window'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
window
    CULong -> IO CULong
forall (m :: * -> *) a. Monad m => a -> m a
return CULong
result

#if defined(ENABLE_OVERLOADING)
data X11WindowGetXidMethodInfo
instance (signature ~ (m CULong), MonadIO m, IsX11Window a) => O.MethodInfo X11WindowGetXidMethodInfo a signature where
    overloadedMethod = x11WindowGetXid

#endif

-- method X11Window::move_to_current_desktop
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "window"
--           , argType =
--               TInterface Name { namespace = "GdkX11" , name = "X11Window" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #GdkWindow" , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Nothing
-- throws : False
-- Skip return : False

foreign import ccall "gdk_x11_window_move_to_current_desktop" gdk_x11_window_move_to_current_desktop :: 
    Ptr X11Window ->                        -- window : TInterface (Name {namespace = "GdkX11", name = "X11Window"})
    IO ()

-- | Moves the window to the correct workspace when running under a
-- window manager that supports multiple workspaces, as described
-- in the <http://www.freedesktop.org/Standards/wm-spec Extended Window Manager Hints> specification.
-- Will not do anything if the window is already on all workspaces.
-- 
-- /Since: 2.8/
x11WindowMoveToCurrentDesktop ::
    (B.CallStack.HasCallStack, MonadIO m, IsX11Window a) =>
    a
    -- ^ /@window@/: a t'GI.Gdk.Objects.Window.Window'
    -> m ()
x11WindowMoveToCurrentDesktop :: a -> m ()
x11WindowMoveToCurrentDesktop window :: a
window = 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 X11Window
window' <- a -> IO (Ptr X11Window)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
window
    Ptr X11Window -> IO ()
gdk_x11_window_move_to_current_desktop Ptr X11Window
window'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
window
    () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data X11WindowMoveToCurrentDesktopMethodInfo
instance (signature ~ (m ()), MonadIO m, IsX11Window a) => O.MethodInfo X11WindowMoveToCurrentDesktopMethodInfo a signature where
    overloadedMethod = x11WindowMoveToCurrentDesktop

#endif

-- method X11Window::move_to_desktop
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "window"
--           , argType =
--               TInterface Name { namespace = "GdkX11" , name = "X11Window" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #GdkWindow" , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "desktop"
--           , argType = TBasicType TUInt32
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText =
--                     Just "the number of the workspace to move the window to"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Nothing
-- throws : False
-- Skip return : False

foreign import ccall "gdk_x11_window_move_to_desktop" gdk_x11_window_move_to_desktop :: 
    Ptr X11Window ->                        -- window : TInterface (Name {namespace = "GdkX11", name = "X11Window"})
    Word32 ->                               -- desktop : TBasicType TUInt32
    IO ()

-- | Moves the window to the given workspace when running unde a
-- window manager that supports multiple workspaces, as described
-- in the <http://www.freedesktop.org/Standards/wm-spec Extended Window Manager Hints> specification.
-- 
-- /Since: 3.10/
x11WindowMoveToDesktop ::
    (B.CallStack.HasCallStack, MonadIO m, IsX11Window a) =>
    a
    -- ^ /@window@/: a t'GI.Gdk.Objects.Window.Window'
    -> Word32
    -- ^ /@desktop@/: the number of the workspace to move the window to
    -> m ()
x11WindowMoveToDesktop :: a -> Word32 -> m ()
x11WindowMoveToDesktop window :: a
window desktop :: Word32
desktop = 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 X11Window
window' <- a -> IO (Ptr X11Window)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
window
    Ptr X11Window -> Word32 -> IO ()
gdk_x11_window_move_to_desktop Ptr X11Window
window' Word32
desktop
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
window
    () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data X11WindowMoveToDesktopMethodInfo
instance (signature ~ (Word32 -> m ()), MonadIO m, IsX11Window a) => O.MethodInfo X11WindowMoveToDesktopMethodInfo a signature where
    overloadedMethod = x11WindowMoveToDesktop

#endif

-- method X11Window::set_frame_extents
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "window"
--           , argType =
--               TInterface Name { namespace = "GdkX11" , name = "X11Window" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #GdkWindow" , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "left"
--           , argType = TBasicType TInt
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "The left extent" , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "right"
--           , argType = TBasicType TInt
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "The right extent" , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "top"
--           , argType = TBasicType TInt
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "The top extent" , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "bottom"
--           , argType = TBasicType TInt
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "The bottom extent" , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Nothing
-- throws : False
-- Skip return : False

foreign import ccall "gdk_x11_window_set_frame_extents" gdk_x11_window_set_frame_extents :: 
    Ptr X11Window ->                        -- window : TInterface (Name {namespace = "GdkX11", name = "X11Window"})
    Int32 ->                                -- left : TBasicType TInt
    Int32 ->                                -- right : TBasicType TInt
    Int32 ->                                -- top : TBasicType TInt
    Int32 ->                                -- bottom : TBasicType TInt
    IO ()

{-# DEPRECATED x11WindowSetFrameExtents ["(Since version 3.12)","Use 'GI.Gdk.Objects.Window.windowSetShadowWidth' instead."] #-}
-- | This is the same as 'GI.Gdk.Objects.Window.windowSetShadowWidth' but it only works
-- on GdkX11Window.
-- 
-- /Since: 3.10/
x11WindowSetFrameExtents ::
    (B.CallStack.HasCallStack, MonadIO m, IsX11Window a) =>
    a
    -- ^ /@window@/: a t'GI.Gdk.Objects.Window.Window'
    -> Int32
    -- ^ /@left@/: The left extent
    -> Int32
    -- ^ /@right@/: The right extent
    -> Int32
    -- ^ /@top@/: The top extent
    -> Int32
    -- ^ /@bottom@/: The bottom extent
    -> m ()
x11WindowSetFrameExtents :: a -> Int32 -> Int32 -> Int32 -> Int32 -> m ()
x11WindowSetFrameExtents window :: a
window left :: Int32
left right :: Int32
right top :: Int32
top bottom :: Int32
bottom = 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 X11Window
window' <- a -> IO (Ptr X11Window)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
window
    Ptr X11Window -> Int32 -> Int32 -> Int32 -> Int32 -> IO ()
gdk_x11_window_set_frame_extents Ptr X11Window
window' Int32
left Int32
right Int32
top Int32
bottom
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
window
    () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data X11WindowSetFrameExtentsMethodInfo
instance (signature ~ (Int32 -> Int32 -> Int32 -> Int32 -> m ()), MonadIO m, IsX11Window a) => O.MethodInfo X11WindowSetFrameExtentsMethodInfo a signature where
    overloadedMethod = x11WindowSetFrameExtents

#endif

-- method X11Window::set_frame_sync_enabled
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "window"
--           , argType =
--               TInterface Name { namespace = "GdkX11" , name = "X11Window" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a native #GdkWindow"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "frame_sync_enabled"
--           , argType = TBasicType TBoolean
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText =
--                     Just "whether frame-synchronization should be enabled"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Nothing
-- throws : False
-- Skip return : False

foreign import ccall "gdk_x11_window_set_frame_sync_enabled" gdk_x11_window_set_frame_sync_enabled :: 
    Ptr X11Window ->                        -- window : TInterface (Name {namespace = "GdkX11", name = "X11Window"})
    CInt ->                                 -- frame_sync_enabled : TBasicType TBoolean
    IO ()

-- | This function can be used to disable frame synchronization for a window.
-- Normally frame synchronziation will be enabled or disabled based on whether
-- the system has a compositor that supports frame synchronization, but if
-- the window is not directly managed by the window manager, then frame
-- synchronziation may need to be disabled. This is the case for a window
-- embedded via the XEMBED protocol.
-- 
-- /Since: 3.8/
x11WindowSetFrameSyncEnabled ::
    (B.CallStack.HasCallStack, MonadIO m, IsX11Window a) =>
    a
    -- ^ /@window@/: a native t'GI.Gdk.Objects.Window.Window'
    -> Bool
    -- ^ /@frameSyncEnabled@/: whether frame-synchronization should be enabled
    -> m ()
x11WindowSetFrameSyncEnabled :: a -> Bool -> m ()
x11WindowSetFrameSyncEnabled window :: a
window frameSyncEnabled :: Bool
frameSyncEnabled = 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 X11Window
window' <- a -> IO (Ptr X11Window)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
window
    let frameSyncEnabled' :: CInt
frameSyncEnabled' = (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
frameSyncEnabled
    Ptr X11Window -> CInt -> IO ()
gdk_x11_window_set_frame_sync_enabled Ptr X11Window
window' CInt
frameSyncEnabled'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
window
    () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data X11WindowSetFrameSyncEnabledMethodInfo
instance (signature ~ (Bool -> m ()), MonadIO m, IsX11Window a) => O.MethodInfo X11WindowSetFrameSyncEnabledMethodInfo a signature where
    overloadedMethod = x11WindowSetFrameSyncEnabled

#endif

-- method X11Window::set_hide_titlebar_when_maximized
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "window"
--           , argType =
--               TInterface Name { namespace = "GdkX11" , name = "X11Window" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #GdkWindow" , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "hide_titlebar_when_maximized"
--           , argType = TBasicType TBoolean
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText =
--                     Just
--                       "whether to hide the titlebar when\n                               maximized"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Nothing
-- throws : False
-- Skip return : False

foreign import ccall "gdk_x11_window_set_hide_titlebar_when_maximized" gdk_x11_window_set_hide_titlebar_when_maximized :: 
    Ptr X11Window ->                        -- window : TInterface (Name {namespace = "GdkX11", name = "X11Window"})
    CInt ->                                 -- hide_titlebar_when_maximized : TBasicType TBoolean
    IO ()

-- | Set a hint for the window manager, requesting that the titlebar
-- should be hidden when the window is maximized.
-- 
-- Note that this property is automatically updated by GTK+, so this
-- function should only be used by applications which do not use GTK+
-- to create toplevel windows.
-- 
-- /Since: 3.4/
x11WindowSetHideTitlebarWhenMaximized ::
    (B.CallStack.HasCallStack, MonadIO m, IsX11Window a) =>
    a
    -- ^ /@window@/: a t'GI.Gdk.Objects.Window.Window'
    -> Bool
    -- ^ /@hideTitlebarWhenMaximized@/: whether to hide the titlebar when
    --                                maximized
    -> m ()
x11WindowSetHideTitlebarWhenMaximized :: a -> Bool -> m ()
x11WindowSetHideTitlebarWhenMaximized window :: a
window hideTitlebarWhenMaximized :: Bool
hideTitlebarWhenMaximized = 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 X11Window
window' <- a -> IO (Ptr X11Window)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
window
    let hideTitlebarWhenMaximized' :: CInt
hideTitlebarWhenMaximized' = (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
hideTitlebarWhenMaximized
    Ptr X11Window -> CInt -> IO ()
gdk_x11_window_set_hide_titlebar_when_maximized Ptr X11Window
window' CInt
hideTitlebarWhenMaximized'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
window
    () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data X11WindowSetHideTitlebarWhenMaximizedMethodInfo
instance (signature ~ (Bool -> m ()), MonadIO m, IsX11Window a) => O.MethodInfo X11WindowSetHideTitlebarWhenMaximizedMethodInfo a signature where
    overloadedMethod = x11WindowSetHideTitlebarWhenMaximized

#endif

-- method X11Window::set_theme_variant
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "window"
--           , argType =
--               TInterface Name { namespace = "GdkX11" , name = "X11Window" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #GdkWindow" , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "variant"
--           , argType = TBasicType TUTF8
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "the theme variant to export"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Nothing
-- throws : False
-- Skip return : False

foreign import ccall "gdk_x11_window_set_theme_variant" gdk_x11_window_set_theme_variant :: 
    Ptr X11Window ->                        -- window : TInterface (Name {namespace = "GdkX11", name = "X11Window"})
    CString ->                              -- variant : TBasicType TUTF8
    IO ()

-- | GTK+ applications can request a dark theme variant. In order to
-- make other applications - namely window managers using GTK+ for
-- themeing - aware of this choice, GTK+ uses this function to
-- export the requested theme variant as _GTK_THEME_VARIANT property
-- on toplevel windows.
-- 
-- Note that this property is automatically updated by GTK+, so this
-- function should only be used by applications which do not use GTK+
-- to create toplevel windows.
-- 
-- /Since: 3.2/
x11WindowSetThemeVariant ::
    (B.CallStack.HasCallStack, MonadIO m, IsX11Window a) =>
    a
    -- ^ /@window@/: a t'GI.Gdk.Objects.Window.Window'
    -> T.Text
    -- ^ /@variant@/: the theme variant to export
    -> m ()
x11WindowSetThemeVariant :: a -> Text -> m ()
x11WindowSetThemeVariant window :: a
window variant :: Text
variant = 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 X11Window
window' <- a -> IO (Ptr X11Window)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
window
    CString
variant' <- Text -> IO CString
textToCString Text
variant
    Ptr X11Window -> CString -> IO ()
gdk_x11_window_set_theme_variant Ptr X11Window
window' CString
variant'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
window
    CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
variant'
    () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data X11WindowSetThemeVariantMethodInfo
instance (signature ~ (T.Text -> m ()), MonadIO m, IsX11Window a) => O.MethodInfo X11WindowSetThemeVariantMethodInfo a signature where
    overloadedMethod = x11WindowSetThemeVariant

#endif

-- method X11Window::set_user_time
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "window"
--           , argType =
--               TInterface Name { namespace = "GdkX11" , name = "X11Window" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A toplevel #GdkWindow"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "timestamp"
--           , argType = TBasicType TUInt32
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText =
--                     Just "An XServer timestamp to which the property should be set"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Nothing
-- throws : False
-- Skip return : False

foreign import ccall "gdk_x11_window_set_user_time" gdk_x11_window_set_user_time :: 
    Ptr X11Window ->                        -- window : TInterface (Name {namespace = "GdkX11", name = "X11Window"})
    Word32 ->                               -- timestamp : TBasicType TUInt32
    IO ()

-- | The application can use this call to update the _NET_WM_USER_TIME
-- property on a toplevel window.  This property stores an Xserver
-- time which represents the time of the last user input event
-- received for this window.  This property may be used by the window
-- manager to alter the focus, stacking, and\/or placement behavior of
-- windows when they are mapped depending on whether the new window
-- was created by a user action or is a \"pop-up\" window activated by a
-- timer or some other event.
-- 
-- Note that this property is automatically updated by GDK, so this
-- function should only be used by applications which handle input
-- events bypassing GDK.
-- 
-- /Since: 2.6/
x11WindowSetUserTime ::
    (B.CallStack.HasCallStack, MonadIO m, IsX11Window a) =>
    a
    -- ^ /@window@/: A toplevel t'GI.Gdk.Objects.Window.Window'
    -> Word32
    -- ^ /@timestamp@/: An XServer timestamp to which the property should be set
    -> m ()
x11WindowSetUserTime :: a -> Word32 -> m ()
x11WindowSetUserTime window :: a
window timestamp :: Word32
timestamp = 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 X11Window
window' <- a -> IO (Ptr X11Window)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
window
    Ptr X11Window -> Word32 -> IO ()
gdk_x11_window_set_user_time Ptr X11Window
window' Word32
timestamp
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
window
    () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data X11WindowSetUserTimeMethodInfo
instance (signature ~ (Word32 -> m ()), MonadIO m, IsX11Window a) => O.MethodInfo X11WindowSetUserTimeMethodInfo a signature where
    overloadedMethod = x11WindowSetUserTime

#endif

-- method X11Window::set_utf8_property
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "window"
--           , argType =
--               TInterface Name { namespace = "GdkX11" , name = "X11Window" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #GdkWindow" , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "name"
--           , argType = TBasicType TUTF8
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "Property name, will be interned as an X atom"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "value"
--           , argType = TBasicType TUTF8
--           , direction = DirectionIn
--           , mayBeNull = True
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "Property value, or %NULL to delete"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Nothing
-- throws : False
-- Skip return : False

foreign import ccall "gdk_x11_window_set_utf8_property" gdk_x11_window_set_utf8_property :: 
    Ptr X11Window ->                        -- window : TInterface (Name {namespace = "GdkX11", name = "X11Window"})
    CString ->                              -- name : TBasicType TUTF8
    CString ->                              -- value : TBasicType TUTF8
    IO ()

-- | This function modifies or removes an arbitrary X11 window
-- property of type UTF8_STRING.  If the given /@window@/ is
-- not a toplevel window, it is ignored.
-- 
-- /Since: 3.4/
x11WindowSetUtf8Property ::
    (B.CallStack.HasCallStack, MonadIO m, IsX11Window a) =>
    a
    -- ^ /@window@/: a t'GI.Gdk.Objects.Window.Window'
    -> T.Text
    -- ^ /@name@/: Property name, will be interned as an X atom
    -> Maybe (T.Text)
    -- ^ /@value@/: Property value, or 'P.Nothing' to delete
    -> m ()
x11WindowSetUtf8Property :: a -> Text -> Maybe Text -> m ()
x11WindowSetUtf8Property window :: a
window name :: Text
name value :: Maybe Text
value = 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 X11Window
window' <- a -> IO (Ptr X11Window)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
window
    CString
name' <- Text -> IO CString
textToCString Text
name
    CString
maybeValue <- case Maybe Text
value of
        Nothing -> CString -> IO CString
forall (m :: * -> *) a. Monad m => a -> m a
return CString
forall a. Ptr a
nullPtr
        Just jValue :: Text
jValue -> do
            CString
jValue' <- Text -> IO CString
textToCString Text
jValue
            CString -> IO CString
forall (m :: * -> *) a. Monad m => a -> m a
return CString
jValue'
    Ptr X11Window -> CString -> CString -> IO ()
gdk_x11_window_set_utf8_property Ptr X11Window
window' CString
name' CString
maybeValue
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
window
    CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
name'
    CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
maybeValue
    () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data X11WindowSetUtf8PropertyMethodInfo
instance (signature ~ (T.Text -> Maybe (T.Text) -> m ()), MonadIO m, IsX11Window a) => O.MethodInfo X11WindowSetUtf8PropertyMethodInfo a signature where
    overloadedMethod = x11WindowSetUtf8Property

#endif

-- method X11Window::lookup_for_display
-- method type : MemberFunction
-- Args: [ Arg
--           { argCName = "display"
--           , argType =
--               TInterface Name { namespace = "GdkX11" , name = "X11Display" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText =
--                     Just
--                       "the #GdkDisplay corresponding to the\n          window handle"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "window"
--           , argType = TBasicType TULong
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "an Xlib Window" , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just
--               (TInterface Name { namespace = "GdkX11" , name = "X11Window" })
-- throws : False
-- Skip return : False

foreign import ccall "gdk_x11_window_lookup_for_display" gdk_x11_window_lookup_for_display :: 
    Ptr GdkX11.X11Display.X11Display ->     -- display : TInterface (Name {namespace = "GdkX11", name = "X11Display"})
    CULong ->                               -- window : TBasicType TULong
    IO (Ptr X11Window)

-- | Looks up the t'GI.Gdk.Objects.Window.Window' that wraps the given native window handle.
-- 
-- /Since: 2.24/
x11WindowLookupForDisplay ::
    (B.CallStack.HasCallStack, MonadIO m, GdkX11.X11Display.IsX11Display a) =>
    a
    -- ^ /@display@/: the t'GI.Gdk.Objects.Display.Display' corresponding to the
    --           window handle
    -> CULong
    -- ^ /@window@/: an Xlib Window
    -> m X11Window
    -- ^ __Returns:__ the t'GI.Gdk.Objects.Window.Window' wrapper for the native
    --    window, or 'P.Nothing' if there is none.
x11WindowLookupForDisplay :: a -> CULong -> m X11Window
x11WindowLookupForDisplay display :: a
display window :: CULong
window = IO X11Window -> m X11Window
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO X11Window -> m X11Window) -> IO X11Window -> m X11Window
forall a b. (a -> b) -> a -> b
$ do
    Ptr X11Display
display' <- a -> IO (Ptr X11Display)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
display
    Ptr X11Window
result <- Ptr X11Display -> CULong -> IO (Ptr X11Window)
gdk_x11_window_lookup_for_display Ptr X11Display
display' CULong
window
    Text -> Ptr X11Window -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL "x11WindowLookupForDisplay" Ptr X11Window
result
    X11Window
result' <- ((ManagedPtr X11Window -> X11Window)
-> Ptr X11Window -> IO X11Window
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr X11Window -> X11Window
X11Window) Ptr X11Window
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
display
    X11Window -> IO X11Window
forall (m :: * -> *) a. Monad m => a -> m a
return X11Window
result'

#if defined(ENABLE_OVERLOADING)
#endif