|
|
1.1 root 1: #include "sun.h"
2: #include "opaque.h"
3:
4: Bool screenSaved = FALSE;
5: int lastEventTime = 0;
6: extern void SaveScreens();
7: extern long EnabledDevices, LastSelectMask[];
8: extern int sunKbdfd;
9: extern int sunMousefd;
10:
11: /*-
12: *-----------------------------------------------------------------------
13: * TimeSinceLastInputEvent --
14: * Function used for screensaver purposes by the os module.
15: *
16: * Results:
17: * The time in milliseconds since there last was any
18: * input.
19: *
20: * Side Effects:
21: * None.
22: *
23: *-----------------------------------------------------------------------
24: */
25: int
26: TimeSinceLastInputEvent()
27: {
28: struct timeb now;
29:
30: ftime(&now);
31: if (!lastEventTime)
32: lastEventTime = now.time * 1000 + now.millitm;
33: return now.time * 1000 + now.millitm - lastEventTime;
34: }
35:
36: /*-
37: *-----------------------------------------------------------------------
38: * ProcessInputEvents --
39: * Retrieve all waiting input events and pass them to DIX in their
40: * correct chronological order. Only reads from the system pointer
41: * and keyboard.
42: *
43: * Results:
44: * None.
45: *
46: * Side Effects:
47: * Events are passed to the DIX layer.
48: *
49: *-----------------------------------------------------------------------
50: */
51: void
52: ProcessInputEvents ()
53: {
54: DevicePtr pPointer;
55: DevicePtr pKeyboard;
56:
57: pPointer = LookupPointerDevice();
58: pKeyboard = LookupKeyboardDevice();
59:
60: if (LastSelectMask[0] & EnabledDevices) {
61: SetTimeSinceLastInputEvent();
62: if (LastSelectMask[0] & (1 << sunMousefd)) {
63: sunMouseEvent(pPointer);
64: LastSelectMask[0] &= ~(1 << sunMousefd);
65: }
66: if (LastSelectMask[0] & (1 << sunKbdfd)) {
67: sunKbdEvent(pKeyboard);
68: LastSelectMask[0] &= ~(1 << sunKbdfd);
69: }
70: if (screenSaved)
71: SaveScreens(SCREEN_SAVER_FORCER, ScreenSaverReset);
72: }
73: sunRestoreCursor();
74: }
75:
76:
77: /*-
78: *-----------------------------------------------------------------------
79: * SetTimeSinceLastInputEvent --
80: * Set the lastEventTime to now.
81: *
82: * Results:
83: * None.
84: *
85: * Side Effects:
86: * lastEventTime is altered.
87: *
88: *-----------------------------------------------------------------------
89: */
90: void
91: SetTimeSinceLastInputEvent()
92: {
93: struct timeb now;
94:
95: ftime(&now);
96: lastEventTime = now.time * 1000 + now.millitm;
97: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.