diff --git a/CHANGES.md b/CHANGES.md
--- a/CHANGES.md
+++ b/CHANGES.md
@@ -1,5 +1,13 @@
 # Change Log / Release Notes
 
+## 1.10.3 (2022-09-14)
+
+  * Added `cWX`, `cWY`, `cWWidth`, `cWHeight` constants (`AttributeMask`) (#82)
+
+  * Added `FocusChangeEvent` to `data Event` (#81)
+
+  * Added `setWMNormalHints` (#83)
+
 ## 1.10.2 (2021-10-24)
 
   * Restored compatibility with GHC 7.10 (and possibly even older) (#80)
diff --git a/Graphics/X11/Types.hsc b/Graphics/X11/Types.hsc
--- a/Graphics/X11/Types.hsc
+++ b/Graphics/X11/Types.hsc
@@ -647,6 +647,10 @@
         cWDontPropagate,
         cWColormap,
         cWCursor,
+        cWX,
+        cWY,
+        cWWidth,
+        cWHeight,
 
         -- ** Close down modes
         CloseDownMode,
@@ -1536,6 +1540,10 @@
  , cWDontPropagate      = CWDontPropagate
  , cWColormap           = CWColormap
  , cWCursor             = CWCursor
+ , cWX                  = CWX
+ , cWY                  = CWY
+ , cWWidth              = CWWidth
+ , cWHeight             = CWHeight
  }
 
 -- Used in ChangeCloseDownMode
diff --git a/Graphics/X11/Xlib/Extras.hsc b/Graphics/X11/Xlib/Extras.hsc
--- a/Graphics/X11/Xlib/Extras.hsc
+++ b/Graphics/X11/Xlib/Extras.hsc
@@ -220,6 +220,15 @@
         , ev_height                :: !CInt
         , ev_count                 :: !CInt
         }
+    | FocusChangeEvent
+        { ev_event_type            :: !EventType
+        , ev_serial                :: !CULong
+        , ev_send_event            :: !Bool
+        , ev_event_display         :: Display
+        , ev_window                :: !Window
+        , ev_mode                  :: !NotifyMode
+        , ev_detail                :: !NotifyDetail
+        }
     | ClientMessageEvent
         { ev_event_type            :: !EventType
         , ev_serial                :: !CULong
@@ -702,6 +711,23 @@
                         }
 
           -------------------------
+          -- FocusChangeEvent
+          -------------------------
+          | type_ == focusIn || type_ == focusOut -> do
+            window <- #{peek XFocusChangeEvent, window } p
+            mode   <- #{peek XFocusChangeEvent, mode   } p
+            detail <- #{peek XFocusChangeEvent, detail } p
+            return $ FocusChangeEvent
+                        { ev_event_type    = type_
+                        , ev_serial        = serial
+                        , ev_send_event    = send_event
+                        , ev_event_display = display
+                        , ev_window        = window
+                        , ev_mode          = mode
+                        , ev_detail        = detail
+                        }
+
+          -------------------------
           -- ClientMessageEvent
           -------------------------
           | type_ == clientMessage -> do
@@ -1502,6 +1528,19 @@
             0 -> return (SizeHints Nothing Nothing Nothing Nothing Nothing Nothing)
             _ -> peek sh
 
+foreign import ccall "XlibExtras.h XAllocSizeHints"
+    xAllocSizeHints :: IO (Ptr SizeHints)
+
+foreign import ccall unsafe "XlibExtras.h XSetWMNormalHints"
+    xSetWMNormalHints :: Display -> Window -> Ptr SizeHints -> IO ()
+
+setWMNormalHints :: Display -> Window -> SizeHints -> IO ()
+setWMNormalHints dpy win hints = do
+    ptr_hints <- throwIfNull "xAllocSizeHints" xAllocSizeHints
+    poke ptr_hints hints
+    xSetWMNormalHints dpy win ptr_hints
+    _ <- xFree ptr_hints
+    return ()
 
 data ClassHint = ClassHint
                         { resName  :: String
diff --git a/X11.cabal b/X11.cabal
--- a/X11.cabal
+++ b/X11.cabal
@@ -1,5 +1,5 @@
 name:               X11
-version:            1.10.2
+version:            1.10.3
 synopsis:           A binding to the X11 graphics library
 description:        A Haskell binding to the X11 graphics library. The binding is a direct
                     translation of the C binding; for documentation of these calls, refer
@@ -10,7 +10,7 @@
 copyright:          Alastair Reid, 1999-2003, libraries@haskell.org 2003-2007,
                     Don Stewart 2007-2009, Spencer Janssen 2007-2009, Daniel Wagner 2009-2011.
 maintainer:         Daniel Wagner <daniel@wagner-home.com>
-tested-with:        GHC == 7.10.3 || == 8.0.2 || == 8.2.2 || == 8.4.4 || == 8.6.5 || == 8.8.4 || == 8.10.4 || == 9.0.1
+tested-with:        GHC == 7.10.3 || == 8.0.2 || == 8.2.2 || == 8.4.4 || == 8.6.5 || == 8.8.4 || == 8.10.7 || == 9.0.2 || == 9.2.2
 category:           Graphics
 homepage:           https://github.com/xmonad/X11
 bug-reports:        https://github.com/xmonad/X11/issues
