Polling input mode for the kdrive os layer. And a moose!
This commit is contained in:
parent
af798d2774
commit
bd20c8d340
|
@ -306,6 +306,7 @@ KdOsFuncs ItsyOsFuncs = {
|
||||||
ItsyOsSpecialKey,
|
ItsyOsSpecialKey,
|
||||||
ItsyOsDisable,
|
ItsyOsDisable,
|
||||||
ItsyOsFini,
|
ItsyOsFini,
|
||||||
|
0
|
||||||
};
|
};
|
||||||
|
|
||||||
void
|
void
|
||||||
|
|
|
@ -471,6 +471,7 @@ KdOsFuncs LinuxFuncs = {
|
||||||
LinuxSpecialKey,
|
LinuxSpecialKey,
|
||||||
LinuxDisable,
|
LinuxDisable,
|
||||||
LinuxFini,
|
LinuxFini,
|
||||||
|
0
|
||||||
};
|
};
|
||||||
|
|
||||||
void
|
void
|
||||||
|
|
|
@ -276,6 +276,7 @@ typedef struct _KdOsFuncs {
|
||||||
Bool (*SpecialKey) (KeySym);
|
Bool (*SpecialKey) (KeySym);
|
||||||
void (*Disable) (void);
|
void (*Disable) (void);
|
||||||
void (*Fini) (void);
|
void (*Fini) (void);
|
||||||
|
void (*pollEvents) (void);
|
||||||
} KdOsFuncs;
|
} KdOsFuncs;
|
||||||
|
|
||||||
typedef enum _KdSyncPolarity {
|
typedef enum _KdSyncPolarity {
|
||||||
|
|
|
@ -1468,7 +1468,8 @@ KdBlockHandler (int screen,
|
||||||
pointer readmask)
|
pointer readmask)
|
||||||
{
|
{
|
||||||
KdMouseInfo *mi;
|
KdMouseInfo *mi;
|
||||||
|
int myTimeout=0;
|
||||||
|
|
||||||
for (mi = kdMouseInfo; mi; mi = mi->next)
|
for (mi = kdMouseInfo; mi; mi = mi->next)
|
||||||
{
|
{
|
||||||
if (mi->timeoutPending)
|
if (mi->timeoutPending)
|
||||||
|
@ -1476,11 +1477,20 @@ KdBlockHandler (int screen,
|
||||||
int ms;
|
int ms;
|
||||||
|
|
||||||
ms = mi->emulationTimeout - GetTimeInMillis ();
|
ms = mi->emulationTimeout - GetTimeInMillis ();
|
||||||
if (ms < 0)
|
if (ms < 1)
|
||||||
ms = 0;
|
ms = 1;
|
||||||
AdjustWaitForDelay (timeout, ms);
|
if(ms<myTimeout || myTimeout==0)
|
||||||
|
myTimeout=ms;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
/* if we need to poll for events, do that */
|
||||||
|
if(kdOsFuncs->pollEvents)
|
||||||
|
{
|
||||||
|
(*kdOsFuncs->pollEvents)();
|
||||||
|
myTimeout=20;
|
||||||
|
}
|
||||||
|
if(myTimeout>0)
|
||||||
|
AdjustWaitForDelay (timeout, myTimeout);
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
|
|
@ -59,6 +59,7 @@ KdOsFuncs VxWorksFuncs = {
|
||||||
VxWorksSpecialKey,
|
VxWorksSpecialKey,
|
||||||
VxWorksDisable,
|
VxWorksDisable,
|
||||||
VxWorksFini,
|
VxWorksFini,
|
||||||
|
0
|
||||||
};
|
};
|
||||||
|
|
||||||
void
|
void
|
||||||
|
|
Loading…
Reference in New Issue