Import Tk 8.6.10

This commit is contained in:
Steve Dower
2020-09-24 22:55:34 +01:00
parent 5ba5cbc9af
commit 42c69189d9
365 changed files with 24323 additions and 12832 deletions

View File

@@ -180,13 +180,13 @@ InitKeyMaps(void)
for (kPtr = keyArray; kPtr->keycode != 0; kPtr++) {
hPtr = Tcl_CreateHashEntry(&keycodeTable, INT2PTR(kPtr->keycode),
&dummy);
Tcl_SetHashValue(hPtr, kPtr->keysym);
Tcl_SetHashValue(hPtr, INT2PTR(kPtr->keysym));
}
Tcl_InitHashTable(&vkeyTable, TCL_ONE_WORD_KEYS);
for (kPtr = virtualkeyArray; kPtr->keycode != 0; kPtr++) {
hPtr = Tcl_CreateHashEntry(&vkeyTable, INT2PTR(kPtr->keycode),
&dummy);
Tcl_SetHashValue(hPtr, kPtr->keysym);
Tcl_SetHashValue(hPtr, INT2PTR(kPtr->keysym));
}
initialized = 1;
}
@@ -443,8 +443,11 @@ TkpGetString(
* result. */
{
(void) winPtr; /*unused*/
int ch;
Tcl_DStringInit(dsPtr);
return Tcl_DStringAppend(dsPtr, eventPtr->xkey.trans_chars, -1);
return Tcl_DStringAppend(dsPtr, eventPtr->xkey.trans_chars,
TkUtfToUniChar(eventPtr->xkey.trans_chars, &ch));
}
/*
@@ -717,7 +720,7 @@ TkpSetKeycodeAndState(
}
if (keysym <= LATIN1_MAX) {
int done = Tcl_UniCharToUtf(keysym, eventPtr->xkey.trans_chars);
int done = TkUniCharToUtf(keysym, eventPtr->xkey.trans_chars);
eventPtr->xkey.trans_chars[done] = 0;
} else {
@@ -803,7 +806,7 @@ TkpGetKeySym(
/* If nbytes has been set, it's not a function key, but a regular key that
has been translated in tkMacOSXKeyEvent.c; just use that. */
if (eventPtr->xkey.nbytes) {
return eventPtr->xkey.keycode & 0xFFFF;
return eventPtr->xkey.keycode;
}
/*