diff options
Diffstat (limited to 'src/gui/fpg_edit.pas')
-rw-r--r-- | src/gui/fpg_edit.pas | 33 |
1 files changed, 3 insertions, 30 deletions
diff --git a/src/gui/fpg_edit.pas b/src/gui/fpg_edit.pas index 01c52d4c..21e6895e 100644 --- a/src/gui/fpg_edit.pas +++ b/src/gui/fpg_edit.pas @@ -758,34 +758,7 @@ begin prevval := Text; if FDeadKeyChar> -1 then begin - case FDeadKeyChar of - keyDeadDiaeresis: - case AText of - 'a': - AText:= 'â'; - 'e': - AText:= 'ë'; - 'i': - AText:= 'ï'; - 'o': - AText:= 'ö'; - 'u': - AText:= 'ü'; - end; - keyDeadCircumflex: - case AText of - 'a': - AText:= 'â'; - 'e': - AText:= 'ê'; - 'i': - AText:= 'î'; - 'o': - AText:= 'ô'; - 'u': - AText:= 'û'; - end; - end; + AText:= UseDeadKey(AText, FDeadKeyChar); FDeadKeyChar:= -1; end; s := AText; @@ -831,8 +804,8 @@ begin hasChanged := False; fpgApplication.HideHint; - if (keycode= keyDeadCircumflex) or (keycode= keyDeadDiaeresis) then - FDeadKeyChar:= keycode; + if FDeadKeyChar = -1 then + FDeadKeyChar:= ReadDeadKey(keycode); Consumed := True; case CheckClipBoardKey(keycode, shiftstate) of |