1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
|
--- kxl-1.1.7.orig/src/KXLvisual.c
+++ kxl-1.1.7/src/KXLvisual.c
@@ -364,7 +366,11 @@
KXL_ReSizeFrame(w, h);
KXL_Clear_Frame(0, 0, w, h);
// Auto repeat off
- XAutoRepeatOff(KXL_Root->Display);
+ XkbSetDetectableAutoRepeat(KXL_Root->Display, True,
+ &KXL_Root->DetectAutoRepeat);
+ if(!KXL_Root->DetectAutoRepeat) {
+ XAutoRepeatOff(KXL_Root->Display);
+ }
}
//==============================================================
@@ -377,7 +383,9 @@
XFreeGC(KXL_Root->Display, KXL_Root->Frame->Gc);
KXL_Free(KXL_Root->Frame);
// Auto repeat on
- XAutoRepeatOn(KXL_Root->Display);
+ if(!KXL_Root->DetectAutoRepeat) {
+ XAutoRepeatOn(KXL_Root->Display);
+ }
// Delete font
XFreeGC(KXL_Root->Display, KXL_Root->FontGC);
// Delete window
--- kxl-1.1.7.orig/src/KXL.h
+++ kxl-1.1.7/src/KXL.h
@@ -205,6 +207,7 @@
KXL_Frame *Frame; // Pointer of frame structure
GC FontGC; // GC of font
XFontStruct *WinFont; // Pointer of font structrue
+ Bool DetectAutoRepeat; // Does the server have detectable auto repeat
} KXL_Window;
// RGBE palette
typedef struct {
|