@@ -346,31 +346,41 @@ void CRenderDevice::message_loop()
346346 switch (event.window .event )
347347 {
348348 case SDL_WINDOWEVENT_MOVED:
349- case SDL_WINDOWEVENT_SIZE_CHANGED:
350- case SDL_WINDOWEVENT_MAXIMIZED:
351349 SDL_Log (" Window %d moved to %d,%d" , event.window .windowID , event.window .data1 , event.window .data2 );
352350 continue ;
351+ case SDL_WINDOWEVENT_SIZE_CHANGED:
352+ SDL_Log (" Window %d resized to %d,%d" , event.window .windowID , event.window .data1 , event.window .data2 );
353+ continue ;
353354 case SDL_WINDOWEVENT_CLOSE:
354355 event.type = SDL_QUIT;
355356 SDL_PeepEvents (&event, 1 , SDL_ADDEVENT, SDL_FIRSTEVENT, SDL_LASTEVENT);
356357 continue ;
357358#if SDL_VERSION_ATLEAST(2, 0, 5)
358359 case SDL_WINDOWEVENT_SHOWN:
359- case SDL_WINDOWEVENT_EXPOSED:
360- // case SDL_WINDOWEVENT_TAKE_FOCUS:
360+ case SDL_WINDOWEVENT_FOCUS_GAINED:
361361 if (editor ())
362362 {
363363 Device.b_is_Active = TRUE ;
364364 continue ;
365365 }
366- OnWM_Activate (event. window . data1 , event.window .data2 );
366+ OnWM_Activate (1 , event.window .data2 );
367367 SDL_Log (" Window %d is offered a focus" , event.window .windowID );
368368 continue ;
369+ case SDL_WINDOWEVENT_HIDDEN:
370+ case SDL_WINDOWEVENT_FOCUS_LOST:
371+ OnWM_Activate (0 , event.window .data2 );
372+ SDL_Log (" Window %d is lost a focus" , event.window .windowID );
373+ continue ;
369374#endif
370- default : SDL_Log (" Window %d got unknown event %d" , event.window .windowID , event.window .event ); continue ;
375+ default :
376+ SDL_Log (" Window %d got unknown event %d with %d %d" , event.window .windowID , event.window .event ,
377+ event.window .data1 , event.window .data2 );
378+ continue ;
371379 }
372380 continue ;
373- default : Log (" Recieve window %d event" , event.type ); continue ;
381+ default :
382+ SDL_Log (" Window event %d to %d,%d" , event.type , event.window .data1 , event.window .data2 );
383+ continue ;
374384 }
375385 }
376386
@@ -528,10 +538,8 @@ void CRenderDevice::Pause(BOOL bOn, BOOL bTimer, BOOL bSound, LPCSTR reason)
528538BOOL CRenderDevice::Paused () { return g_pauseMngr ().Paused (); }
529539void CRenderDevice::OnWM_Activate (WPARAM wParam, LPARAM /* lParam*/ )
530540{
531- u16 fActive = LOWORD (wParam);
532- const BOOL fMinimized = (BOOL)HIWORD (wParam);
541+ const BOOL isWndActive = (1 == wParam) ? TRUE : FALSE ;
533542
534- const BOOL isWndActive = (fActive != WA_INACTIVE && (!fMinimized )) ? TRUE : FALSE ;
535543 if (!editor () && !GEnv.isDedicatedServer && isWndActive)
536544 pInput->ClipCursor (true );
537545 else
0 commit comments