# SDL: GDK build: fix Xbox targets

**URL:** <https://discourse.libsdl.org/t/sdl-gdk-build-fix-xbox-targets/53086>\
**Category:** SDL Commits\
**Created:** [July 25, 2024, 8:36am UTC](https://discourse.libsdl.org/t/sdl-gdk-build-fix-xbox-targets/53086 "2024-07-25T08:36:14Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![SDLPushPostBot](https://discourse.libsdl.org/user_avatar/discourse.libsdl.org/sdlpushpostbot/32/4370_2.png) [@SDLPushPostBot](https://discourse.libsdl.org/u/SDLPushPostBot)\
**Post date:** [July 25, 2024, 8:36am UTC](https://discourse.libsdl.org/t/sdl-gdk-build-fix-xbox-targets/53086/1 "2024-07-25T08:36:15Z")

</div>

> <https://github.com/libsdl-org/SDL/commit/ff66ec5fb5629c179b0c3281761f8a409d017296>

```diff
From ff66ec5fb5629c179b0c3281761f8a409d017296 Mon Sep 17 00:00:00 2001
From: Daniel Ludwig <[EMAIL REDACTED]>
Date: Thu, 25 Jul 2024 08:19:29 +0200
Subject: [PATCH] GDK build: fix Xbox targets

---
 src/video/windows/SDL_windowsevents.c | 7 +++++--
 src/video/windows/SDL_windowsvideo.h | 4 ++++
 2 files changed, 9 insertions(+), 2 deletions(-)

diff --git a/src/video/windows/SDL_windowsevents.c b/src/video/windows/SDL_windowsevents.c
index a05fedca87307..de87e9e35c98f 100644
--- a/src/video/windows/SDL_windowsevents.c
+++ b/src/video/windows/SDL_windowsevents.c
@@ -1004,6 +1004,7 @@ static SDL_bool SkipAltGrLeftControl(WPARAM wParam, LPARAM lParam)
         return SDL_FALSE;
     }
 
+#if !defined(SDL_PLATFORM_XBOXONE) && !defined(SDL_PLATFORM_XBOXSERIES)
     // Here is a trick: "Alt Gr" sends LCTRL, then RALT. We only
     // want the RALT message, so we try to see if the next message
     // is a RALT message. In that case, this is a false LCTRL!
@@ -1018,6 +1019,8 @@ static SDL_bool SkipAltGrLeftControl(WPARAM wParam, LPARAM lParam)
             }
         }
     }
+#endif /* !defined(SDL_PLATFORM_XBOXONE) && !defined(SDL_PLATFORM_XBOXSERIES) */
+
     return SDL_FALSE;
 }
 
@@ -2299,10 +2302,10 @@ void WIN_PumpEvents(SDL_VideoDevice *_this)
 
     WIN_CheckKeyboardAndMouseHotplug(_this, SDL_FALSE);
 
-#endif /*!defined(SDL_PLATFORM_XBOXONE) && !defined(SDL_PLATFORM_XBOXSERIES)*/
-
     WIN_UpdateIMECandidates(_this);
 
+#endif /*!defined(SDL_PLATFORM_XBOXONE) && !defined(SDL_PLATFORM_XBOXSERIES)*/
+
 #ifdef SDL_PLATFORM_GDK
     GDK_DispatchTaskQueue();
 #endif
diff --git a/src/video/windows/SDL_windowsvideo.h b/src/video/windows/SDL_windowsvideo.h
index c4ceca66af1f0..ea0867beb6f5c 100644
--- a/src/video/windows/SDL_windowsvideo.h
+++ b/src/video/windows/SDL_windowsvideo.h
@@ -345,6 +345,7 @@ typedef struct
     void *data;
 } TSFSink;
 
+#ifndef SDL_DISABLE_WINDOWS_IME
 /* Definition from Win98DDK version of IMM.H */
 typedef struct tagINPUTCONTEXT2
 {
@@ -370,6 +371,7 @@ typedef struct tagINPUTCONTEXT2
     DWORD fdwInit;
     DWORD dwReserve[3];
 } INPUTCONTEXT2, *PINPUTCONTEXT2, NEAR *NPINPUTCONTEXT2, FAR *LPINPUTCONTEXT2;
+#endif
 
 /* Private display data */
 
@@ -458,8 +460,10 @@ struct SDL_VideoData
     SDL_bool ime_horizontal_candidates;
 #endif
 
+#if !defined(SDL_PLATFORM_XBOXONE) && !defined(SDL_PLATFORM_XBOXSERIES)
     COMPOSITIONFORM ime_composition_area;
     CANDIDATEFORM ime_candidate_area;
+#endif /* !defined(SDL_PLATFORM_XBOXONE) && !defined(SDL_PLATFORM_XBOXSERIES) */
 
 #ifndef SDL_DISABLE_WINDOWS_IME
     HKL ime_hkl;

```
