summaryrefslogtreecommitdiff
path: root/src/gui/fpg_edit.pas
diff options
context:
space:
mode:
Diffstat (limited to 'src/gui/fpg_edit.pas')
-rw-r--r--src/gui/fpg_edit.pas33
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