Qt,Qt5,Qt6: do not send KeyUp if key is autorepeated. issue #41472

(cherry picked from commit f90db81742)

Co-authored-by: zeljan1 <zeljko@holobit.hr>
This commit is contained in:
Željan Rikalo 2025-02-26 12:17:22 +00:00 committed by Željan Rikalo
parent 85a1c9e578
commit 969c4bf8ae
3 changed files with 18 additions and 0 deletions

View File

@ -3112,6 +3112,12 @@ begin
if not CanSendLCLMessage then
exit;
if (QEvent_type(Event) = QEventKeyRelease) and QKeyEvent_isAutoRepeat(QKeyEventH(Event)) then
begin
QEvent_ignore(Event);
exit(False);
end;
FillChar(KeyMsg{%H-}, SizeOf(KeyMsg), #0);
FillChar(CharMsg{%H-}, SizeOf(CharMsg), #0);
UTF8Text := '';

View File

@ -3240,6 +3240,12 @@ begin
if not CanSendLCLMessage then
exit;
if (QEvent_type(Event) = QEventKeyRelease) and QKeyEvent_isAutoRepeat(QKeyEventH(Event)) then
begin
QEvent_ignore(Event);
exit(False);
end;
FillChar(KeyMsg{%H-}, SizeOf(KeyMsg), #0);
FillChar(CharMsg{%H-}, SizeOf(CharMsg), #0);
UTF8Text := '';

View File

@ -3237,6 +3237,12 @@ begin
if not CanSendLCLMessage then
exit;
if (QEvent_type(Event) = QEventKeyRelease) and QKeyEvent_isAutoRepeat(QKeyEventH(Event)) then
begin
QEvent_ignore(Event);
exit;
end;
FillChar(KeyMsg{%H-}, SizeOf(KeyMsg), #0);
FillChar(CharMsg{%H-}, SizeOf(CharMsg), #0);
UTF8Text := '';