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
87 lines
1.8 KiB
Plaintext
87 lines
1.8 KiB
Plaintext
SubDir HAIKU_TOP src servers input ;
|
|
|
|
SetSubDirSupportedPlatformsBeOSCompatible ;
|
|
|
|
if $(COMPILE_FOR_R5) {
|
|
SubDirC++Flags -DCOMPILE_FOR_R5 ;
|
|
}
|
|
|
|
rule MkKeymapHeader
|
|
{
|
|
local binary = $(1) ;
|
|
local source = $(2) ;
|
|
|
|
SEARCH on $(source) = $(SEARCH_SOURCE) ;
|
|
MakeLocateArch $(binary) ;
|
|
|
|
Depends $(binary) : $(source) <build>keymap ;
|
|
MkKeymapHeader1 $(binary) : <build>keymap $(source) ;
|
|
LocalClean clean : $(binary) ;
|
|
}
|
|
|
|
actions MkKeymapHeader1
|
|
{
|
|
$(HOST_ADD_BUILD_COMPATIBILITY_LIB_DIR)
|
|
$(2[1]) -o "$(1)" -h "$(2[2-])" ;
|
|
}
|
|
|
|
MkKeymapHeader [ FGristFiles SystemKeymap.cpp ] : US-International.keymap ;
|
|
|
|
SEARCH on US-International.keymap
|
|
+= [ FDirName $(SUBDIR) $(DOTDOT) $(DOTDOT) data etc keymaps ] ;
|
|
|
|
AddResources input_server : input_server.rdef ;
|
|
|
|
UsePrivateHeaders app input interface shared storage ;
|
|
|
|
|
|
SubDirC++Flags -DADD_ON_STABLE_SECONDS=1 ; # for AddOnMonitorHandler.cpp
|
|
if $(TARGET_PLATFORM) != haiku {
|
|
SubDirC++Flags -DCOMPILE_FOR_R5 ;
|
|
#APPSERVER_TEST_MODE = 1 ;
|
|
if $(APPSERVER_TEST_MODE) {
|
|
SubDirC++Flags -DAPPSERVER_TEST_MODE ;
|
|
} else {
|
|
SubDirC++Flags -DAPPSERVER_R5_COMM ;
|
|
}
|
|
} else {
|
|
APPSERVER_TEST_MODE = 0 ;
|
|
}
|
|
|
|
Server input_server :
|
|
InputServer.cpp
|
|
InputServerDevice.cpp
|
|
InputServerFilter.cpp
|
|
InputServerMethod.cpp
|
|
|
|
AddOnManager.cpp
|
|
DeviceManager.cpp
|
|
|
|
MouseSettings.cpp
|
|
KeyboardSettings.cpp
|
|
|
|
SystemKeymap.cpp
|
|
|
|
MethodReplicant.cpp
|
|
MethodMenuItem.cpp
|
|
BottomlineWindow.cpp
|
|
|
|
# storage
|
|
AddOnMonitor.cpp
|
|
AddOnMonitorHandler.cpp
|
|
NodeMonitorHandler.cpp
|
|
|
|
: be $(TARGET_LIBSTDC++)
|
|
;
|
|
|
|
SEARCH on [ FGristFiles AddOnMonitor.cpp
|
|
AddOnMonitorHandler.cpp
|
|
NodeMonitorHandler.cpp ] += [ FDirName $(SUBDIR) $(DOTDOT) $(DOTDOT) kits storage ] ;
|
|
|
|
Package haiku-inputkit-cvs :
|
|
input_server :
|
|
boot beos system servers ;
|
|
|
|
Packages haiku-inputkit-cvs :
|
|
README LICENSE install.sh ;
|