mirror of
https://git.tartarus.org/simon/putty.git
synced 2025-07-02 03:52:49 -05:00
Support for dead keys and compose sequences on Unix, by instantiating
a GtkIMMulticontext and having that filter most keypresses. I think I've got this right so that it doesn't break any previous deliberate keyboard-handling behaviour that's now _after_ the 'if (filter keypress) return' statement. [originally from svn r9567]
This commit is contained in:
@ -29,7 +29,6 @@ int mb_to_wc(int codepage, int flags, const char *mbstr, int mblen,
|
||||
mbstate_t state;
|
||||
|
||||
memset(&state, 0, sizeof state);
|
||||
setlocale(LC_CTYPE, "");
|
||||
|
||||
while (mblen > 0) {
|
||||
size_t i = mbrtowc(wcstr+n, mbstr, (size_t)mblen, &state);
|
||||
@ -40,8 +39,6 @@ int mb_to_wc(int codepage, int flags, const char *mbstr, int mblen,
|
||||
mblen -= i;
|
||||
}
|
||||
|
||||
setlocale(LC_CTYPE, "C");
|
||||
|
||||
return n;
|
||||
} else if (codepage == CS_NONE) {
|
||||
int n = 0;
|
||||
@ -73,7 +70,6 @@ int wc_to_mb(int codepage, int flags, const wchar_t *wcstr, int wclen,
|
||||
int n = 0;
|
||||
|
||||
memset(&state, 0, sizeof state);
|
||||
setlocale(LC_CTYPE, "");
|
||||
|
||||
while (wclen > 0) {
|
||||
int i = wcrtomb(output, wcstr[0], &state);
|
||||
@ -85,8 +81,6 @@ int wc_to_mb(int codepage, int flags, const wchar_t *wcstr, int wclen,
|
||||
wclen--;
|
||||
}
|
||||
|
||||
setlocale(LC_CTYPE, "C");
|
||||
|
||||
return n;
|
||||
} else if (codepage == CS_NONE) {
|
||||
int n = 0;
|
||||
|
Reference in New Issue
Block a user