@@ -2301,38 +2301,38 @@ bool WIN_SetWindowFocusable(SDL_VideoDevice *_this, SDL_Window *window, bool foc
2301
2301
void WIN_UpdateDarkModeForHWND (HWND hwnd )
2302
2302
{
2303
2303
#if !defined(SDL_PLATFORM_XBOXONE ) && !defined(SDL_PLATFORM_XBOXSERIES )
2304
- SDL_SharedObject * ntdll = SDL_LoadObject ( "ntdll.dll" );
2304
+ HMODULE ntdll = LoadLibrary ( TEXT ( "ntdll.dll" ) );
2305
2305
if (!ntdll ) {
2306
2306
return ;
2307
2307
}
2308
2308
// There is no function to get Windows build number, so let's get it here via RtlGetVersion
2309
- RtlGetVersion_t RtlGetVersionFunc = (RtlGetVersion_t )SDL_LoadFunction (ntdll , "RtlGetVersion" );
2309
+ RtlGetVersion_t RtlGetVersionFunc = (RtlGetVersion_t )GetProcAddress (ntdll , "RtlGetVersion" );
2310
2310
NT_OSVERSIONINFOW os_info ;
2311
2311
os_info .dwOSVersionInfoSize = sizeof (NT_OSVERSIONINFOW );
2312
2312
os_info .dwBuildNumber = 0 ;
2313
2313
if (RtlGetVersionFunc ) {
2314
2314
RtlGetVersionFunc (& os_info );
2315
2315
}
2316
- SDL_UnloadObject (ntdll );
2316
+ FreeLibrary (ntdll );
2317
2317
os_info .dwBuildNumber &= ~0xF0000000 ;
2318
2318
if (os_info .dwBuildNumber < 17763 ) {
2319
2319
// Too old to support dark mode
2320
2320
return ;
2321
2321
}
2322
- SDL_SharedObject * uxtheme = SDL_LoadObject ( "uxtheme.dll" );
2322
+ HMODULE uxtheme = LoadLibrary ( TEXT ( "uxtheme.dll" ) );
2323
2323
if (!uxtheme ) {
2324
2324
return ;
2325
2325
}
2326
- RefreshImmersiveColorPolicyState_t RefreshImmersiveColorPolicyStateFunc = (RefreshImmersiveColorPolicyState_t )SDL_LoadFunction (uxtheme , MAKEINTRESOURCEA (104 ));
2327
- ShouldAppsUseDarkMode_t ShouldAppsUseDarkModeFunc = (ShouldAppsUseDarkMode_t )SDL_LoadFunction (uxtheme , MAKEINTRESOURCEA (132 ));
2328
- AllowDarkModeForWindow_t AllowDarkModeForWindowFunc = (AllowDarkModeForWindow_t )SDL_LoadFunction (uxtheme , MAKEINTRESOURCEA (133 ));
2326
+ RefreshImmersiveColorPolicyState_t RefreshImmersiveColorPolicyStateFunc = (RefreshImmersiveColorPolicyState_t )GetProcAddress (uxtheme , MAKEINTRESOURCEA (104 ));
2327
+ ShouldAppsUseDarkMode_t ShouldAppsUseDarkModeFunc = (ShouldAppsUseDarkMode_t )GetProcAddress (uxtheme , MAKEINTRESOURCEA (132 ));
2328
+ AllowDarkModeForWindow_t AllowDarkModeForWindowFunc = (AllowDarkModeForWindow_t )GetProcAddress (uxtheme , MAKEINTRESOURCEA (133 ));
2329
2329
if (os_info .dwBuildNumber < 18362 ) {
2330
- AllowDarkModeForApp_t AllowDarkModeForAppFunc = (AllowDarkModeForApp_t )SDL_LoadFunction (uxtheme , MAKEINTRESOURCEA (135 ));
2330
+ AllowDarkModeForApp_t AllowDarkModeForAppFunc = (AllowDarkModeForApp_t )GetProcAddress (uxtheme , MAKEINTRESOURCEA (135 ));
2331
2331
if (AllowDarkModeForAppFunc ) {
2332
2332
AllowDarkModeForAppFunc (true);
2333
2333
}
2334
2334
} else {
2335
- SetPreferredAppMode_t SetPreferredAppModeFunc = (SetPreferredAppMode_t )SDL_LoadFunction (uxtheme , MAKEINTRESOURCEA (135 ));
2335
+ SetPreferredAppMode_t SetPreferredAppModeFunc = (SetPreferredAppMode_t )GetProcAddress (uxtheme , MAKEINTRESOURCEA (135 ));
2336
2336
if (SetPreferredAppModeFunc ) {
2337
2337
SetPreferredAppModeFunc (UXTHEME_APPMODE_ALLOW_DARK );
2338
2338
}
@@ -2350,7 +2350,7 @@ void WIN_UpdateDarkModeForHWND(HWND hwnd)
2350
2350
} else {
2351
2351
value = (SDL_GetSystemTheme () == SDL_SYSTEM_THEME_DARK ) ? TRUE : FALSE;
2352
2352
}
2353
- SDL_UnloadObject (uxtheme );
2353
+ FreeLibrary (uxtheme );
2354
2354
if (os_info .dwBuildNumber < 18362 ) {
2355
2355
SetProp (hwnd , TEXT ("UseImmersiveDarkModeColors" ), SDL_reinterpret_cast (HANDLE , SDL_static_cast (INT_PTR , value )));
2356
2356
} else {
0 commit comments