128ddaa3e3
* Rewrote event handling: instead of writing every single device message to the event port, they are just queued in a list, and the event loop is only notified if necessary (ie. if a notification has been sent already, new events are just queued up until the input_server found the time to process them). * This also fixed a big memory leak: every message processed by EnqueueDeviceMessage() (IOW every key or mouse event) was leaked! * no longer abuses gInputMethodListLocker to lock the method event queue (it now uses the standard event queue lock). * removed the completely superfluous, weird and decelerating event caching mechanism * tried to find a better distribution of work between _SanitizeEvents(), _MethodizeEvents(), and _DispatchEvents(). * HandleSetMousePosition() now only does what it's supposed to do (this currently causes the mouse to jump at the start, though). * now uses the "Message4" for message sending if available. * fixed "kb_mouse_settings.h" to include all headers it needs. * some more cleanup. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14966 a95241bf-73f2-0310-859d-f6bbb57e9c96
35 lines
613 B
C
35 lines
613 B
C
/*
|
|
* Copyright 2001-2005, Haiku, Inc. All Rights Reserved.
|
|
* Distributed under the terms of the MIT License.
|
|
*/
|
|
#ifndef _KB_MOUSE_SETTINGS_H
|
|
#define _KB_MOUSE_SETTINGS_H
|
|
|
|
|
|
#include <InterfaceDefs.h>
|
|
|
|
|
|
typedef struct {
|
|
bigtime_t key_repeat_delay;
|
|
int32 key_repeat_rate;
|
|
} kb_settings;
|
|
|
|
#define kb_settings_file "Keyboard_settings"
|
|
|
|
typedef struct {
|
|
bool enabled;
|
|
int32 accel_factor;
|
|
int32 speed;
|
|
} mouse_accel;
|
|
|
|
typedef struct {
|
|
int32 type;
|
|
mouse_map map;
|
|
mouse_accel accel;
|
|
bigtime_t click_speed;
|
|
} mouse_settings;
|
|
|
|
#define mouse_settings_file "Mouse_settings"
|
|
|
|
#endif /* _KB_MOUSE_SETTINGS_H */
|