hedgewars/hwengine.pas
changeset 11501 2d72489cc5b6
parent 11497 66f1cff4284b
child 11502 382f91348d91
equal deleted inserted replaced
11500:3a4026fe7c18 11501:2d72489cc5b6
   198                     end;
   198                     end;
   199 
   199 
   200                 SDL_TEXTINPUT: uChat.TextInput(event.text);
   200                 SDL_TEXTINPUT: uChat.TextInput(event.text);
   201 
   201 
   202                 SDL_WINDOWEVENT:
   202                 SDL_WINDOWEVENT:
   203                     if event.window.event = SDL_WINDOWEVENT_SHOWN then
       
   204                     begin
   203                     begin
   205                         cHasFocus:= true;
   204                     case event.window.event of
   206                         onFocusStateChanged()
   205                         SDL_WINDOWEVENT_FOCUS_GAINED:
   207                     end
   206                                 begin
   208                     else if event.window.event = SDL_WINDOWEVENT_MINIMIZED then
   207                                 cHasFocus:= true;
   209                     begin
   208                                 onFocusStateChanged();
   210                         previousGameState:= GameState;
   209                                 end;
   211                         GameState:= gsSuspend;
   210                         SDL_WINDOWEVENT_FOCUS_LOST:
   212                     end
   211                                 begin
   213                     else if event.window.event = SDL_WINDOWEVENT_RESTORED then
   212                                 cHasFocus:= false;
   214                     begin
   213                                 onFocusStateChanged();
   215                         GameState:= previousGameState;
   214                                 end;
       
   215                         SDL_WINDOWEVENT_MINIMIZED:
       
   216                                 begin
       
   217                                 previousGameState:= GameState;
       
   218                                 GameState:= gsSuspend;
       
   219                                 end;
       
   220                         SDL_WINDOWEVENT_RESTORED:
       
   221                                 begin
       
   222                                 GameState:= previousGameState;
   216 {$IFDEF ANDROID}
   223 {$IFDEF ANDROID}
   217                         //This call is used to reinitialize the glcontext and reload the textures
   224                                 //This call is used to reinitialize the glcontext and reload the textures
   218                         ParseCommand('fullscr '+intToStr(LongInt(cFullScreen)), true);
   225                                 ParseCommand('fullscr '+intToStr(LongInt(cFullScreen)), true);
   219 {$ENDIF}
   226 {$ENDIF}
   220                     end
   227                                 end;
   221                     else if event.window.event = SDL_WINDOWEVENT_RESIZED then
   228                         SDL_WINDOWEVENT_RESIZED:
   222                     begin
   229                                 begin
   223                         cNewScreenWidth:= max(2 * (event.window.data1 div 2), cMinScreenWidth);
   230                                 cNewScreenWidth:= max(2 * (event.window.data1 div 2), cMinScreenWidth);
   224                         cNewScreenHeight:= max(2 * (event.window.data2 div 2), cMinScreenHeight);
   231                                 cNewScreenHeight:= max(2 * (event.window.data2 div 2), cMinScreenHeight);
   225                         cScreenResizeDelay:= RealTicks + 500{$IFDEF IPHONEOS}div 2{$ENDIF};
   232                                 cScreenResizeDelay:= RealTicks + 500{$IFDEF IPHONEOS}div 2{$ENDIF};
       
   233                                 end;
       
   234                         end; // case closed
   226                     end;
   235                     end;
       
   236 
   227 {$IFDEF USE_TOUCH_INTERFACE}
   237 {$IFDEF USE_TOUCH_INTERFACE}
   228                 SDL_FINGERMOTION:
   238                 SDL_FINGERMOTION:
   229                     onTouchMotion(event.tfinger.x, event.tfinger.y, event.tfinger.dx, event.tfinger.dy, event.tfinger.fingerId);
   239                     onTouchMotion(event.tfinger.x, event.tfinger.y, event.tfinger.dx, event.tfinger.dy, event.tfinger.fingerId);
   230 
   240 
   231                 SDL_FINGERDOWN:
   241                 SDL_FINGERDOWN: