Ignore:
Timestamp:
Jul 4, 2025, 9:07:01 PM (14 hours ago)
Author:
chronos
Message:
  • Fixed: Do not process keyboard input during unit attack on Linux.
  • Fixed: Limit world size loaded from registry.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/LocalPlayer/Term.pas

    r648 r660  
    352352    FMessgExDlg: TMessgExDlg;
    353353    FHelpDlg: THelpDlg;
     354    procedure ProcessMessagesWithDisabledKeyboard;
    354355    procedure ResizeControls;
    355356    procedure ArrangeDialogs;
     
    65216522end;
    65226523
     6524procedure TMainScreen.ProcessMessagesWithDisabledKeyboard;
     6525begin
     6526  {$IFDEF UNIX}
     6527  // TODO: Force animation under UNIX. Causes also to process keyboard events
     6528  // which can lead to unexpected errors.
     6529  KeyboardDisabled := True;
     6530  try
     6531    Application.ProcessMessages;
     6532  finally
     6533    KeyboardDisabled := False;
     6534  end;
     6535  {$ENDIF}
     6536end;
     6537
    65236538procedure TMainScreen.MoveOnScreen(ShowMove: TShowMove;
    65246539  Step0, Step1, nStep: Integer; Restore: Boolean = True);
     
    66036618      NoMap.PaintUnit(xMoving - xMin, yMoving - yMin, UnitInfo, 0);
    66046619      PaintBufferToScreen(xMin, yMin, xRange, yRange);
    6605       {$IFDEF UNIX}
    6606       // TODO: Force animation under UNIX. Causes also to process keyboard events
    6607       // which can lead to unexpected errors.
    6608       KeyboardDisabled := True;
    6609       try
    6610         Application.ProcessMessages;
    6611       finally
    6612         KeyboardDisabled := False;
    6613       end;
    6614       {$ENDIF}
     6620
     6621      ProcessMessagesWithDisabledKeyboard;
    66156622
    66166623      SliceCount := 0;
     
    66226629        begin
    66236630          if not Idle or (GameMode = cMovie) then
    6624             Application.ProcessMessages;
     6631            ProcessMessagesWithDisabledKeyboard;
    66256632          Sleep(1);
    66266633          Inc(SliceCount);
Note: See TracChangeset for help on using the changeset viewer.