History log of /haiku/src/servers/input/InputServerDevice.cpp
Revision Date Author Comments
# 23debb05 19-Oct-2008 Axel Dörfler <axeld@pinc-software.de>

* Rewrote InputServerDevice.h header.
* Renamed _BDeviceAddOn_ to DeviceAddOn, and put it into the BPrivate namespace.
* Moved the DeviceManager functionality into the AddOnManager - this also
solves a locking issue, as BInputServerDevice::Control() was called in the
context of the DeviceManager before.
* The AddOnManager now uses the BPathMonitor to monitor the devices that
BInputServerDevices ask for - this greatly simplifies the code.
* Got rid of TList.h, and use ObjectList.h instead.
* Added PathList class that has a list of paths with reference count, used by
DeviceAddOn and the AddOnManager.
* DeviceAddOn got an actual implementation that lives in InputServerDevice.cpp.
* Added an experimental BInputServerDevice::AddDevices() that could be used
instead of recursing over devices manually. It replaces the functionality
that was found in the DeviceManager before (this was done implicitely for
all monitored devices).
* Greatly cleaned up and simplified the AddOnManager.
* Also fixed lots of potential errors/leaks when things go wrong.
* Removed the extra locker in AddOnManager - its BLooper lock is now used
instead.
* Replaced PRINT()/PRINTERR() macros in the AddOnManager with TRACE(), and
ERROR(), both now use debug_printf().
* Hopefully this fixes the problem that I don't have keyboard under VirtualBox
from time to time.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28241 a95241bf-73f2-0310-859d-f6bbb57e9c96


# d246d9be 10-Dec-2007 Stefano Ceccherini <stefano.ceccherini@gmail.com>

Some old changes I forgot to commit... BInputServerDevice::InitCheck()
now checks if the fOwner allocation went fine (and returns B_NO_MEMORY
in case it didn't). Since it can fail, inherited classes should call it
as well (I modified MouseInputDevice's and KeyboardInputDevice's
versions for now)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23106 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9514d2e5 15-Nov-2005 Axel Dörfler <axeld@pinc-software.de>

* introduced a global gInputServer object, so that you don't need to cast the
be_app object anymore.
* fixed some missing locks for the input device list.
* moved the input device list into the InputServer object - didn't make a lot
of sense the way it was done before. Also moved registering/unregistering
into the InputerServer class.
* Made the InputDeviceListItem class a bit more useful and encapsulated.
* cleanup, removed empty function documentation stubs.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14946 a95241bf-73f2-0310-859d-f6bbb57e9c96


# c3937704 26-Oct-2004 Jérôme Duval <korli@users.berlios.de>

fixed devices showed as stopped when they were running


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9513 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7cc945c1 18-Oct-2004 Jérôme Duval <korli@users.berlios.de>

added debug stuff


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9406 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 0548f831 02-Sep-2004 Jérôme Duval <korli@users.berlios.de>

complete register and unregister


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8807 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 00740cc5 29-Aug-2004 Jérôme Duval <korli@users.berlios.de>

Integrated MouseSettings and KeyboardSettings
update license info
clean up
removed node monitoring messages handling
fixed several message handlers


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8710 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b69a5532 27-Aug-2004 Jérôme Duval <korli@users.berlios.de>

reworked device manager


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8671 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 6e6fa57f 26-Aug-2004 Jérôme Duval <korli@users.berlios.de>

Added a device manager for devices monitoring


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8666 a95241bf-73f2-0310-859d-f6bbb57e9c96


# cba20309 26-Aug-2004 Jérôme Duval <korli@users.berlios.de>

minor debug info


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8664 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e6c0b53d 23-Aug-2004 Jérôme Duval <korli@users.berlios.de>

Added filtering. Commented now former unused addon code.
We now load and manage device and filter addons successfully.
Tested with nervous and InputRecorder devices and InputRecorder filter.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8626 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 173f7185 19-Aug-2004 Jérôme Duval <korli@users.berlios.de>

AddOnManager improved, initializations, message handling improved


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8610 a95241bf-73f2-0310-859d-f6bbb57e9c96


# ce9ad52d 28-Jul-2004 Jérôme Duval <korli@users.berlios.de>

Removed public headers, Input.cpp is in kits/interface/ already
Filled default hooks in Device Filter Method


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8501 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7c8b733d 17-Jul-2002 Michael Phipps <michaelphipps@nowhere.fake>

Checkin, per Jason Vandermark.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@294 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 52a38012 08-Jul-2002 ejakowatz <ejakowatz@nowhere.fake>

It is accomplished ...


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 23debb05d034dcc04cd6cb0735189609abe8e2d3 19-Oct-2008 Axel Dörfler <axeld@pinc-software.de>

* Rewrote InputServerDevice.h header.
* Renamed _BDeviceAddOn_ to DeviceAddOn, and put it into the BPrivate namespace.
* Moved the DeviceManager functionality into the AddOnManager - this also
solves a locking issue, as BInputServerDevice::Control() was called in the
context of the DeviceManager before.
* The AddOnManager now uses the BPathMonitor to monitor the devices that
BInputServerDevices ask for - this greatly simplifies the code.
* Got rid of TList.h, and use ObjectList.h instead.
* Added PathList class that has a list of paths with reference count, used by
DeviceAddOn and the AddOnManager.
* DeviceAddOn got an actual implementation that lives in InputServerDevice.cpp.
* Added an experimental BInputServerDevice::AddDevices() that could be used
instead of recursing over devices manually. It replaces the functionality
that was found in the DeviceManager before (this was done implicitely for
all monitored devices).
* Greatly cleaned up and simplified the AddOnManager.
* Also fixed lots of potential errors/leaks when things go wrong.
* Removed the extra locker in AddOnManager - its BLooper lock is now used
instead.
* Replaced PRINT()/PRINTERR() macros in the AddOnManager with TRACE(), and
ERROR(), both now use debug_printf().
* Hopefully this fixes the problem that I don't have keyboard under VirtualBox
from time to time.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28241 a95241bf-73f2-0310-859d-f6bbb57e9c96


# d246d9be8858c760576574109315332d6fd11f8a 10-Dec-2007 Stefano Ceccherini <stefano.ceccherini@gmail.com>

Some old changes I forgot to commit... BInputServerDevice::InitCheck()
now checks if the fOwner allocation went fine (and returns B_NO_MEMORY
in case it didn't). Since it can fail, inherited classes should call it
as well (I modified MouseInputDevice's and KeyboardInputDevice's
versions for now)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23106 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9514d2e5e6d5f285d06e3628b0062ea945ee6d21 15-Nov-2005 Axel Dörfler <axeld@pinc-software.de>

* introduced a global gInputServer object, so that you don't need to cast the
be_app object anymore.
* fixed some missing locks for the input device list.
* moved the input device list into the InputServer object - didn't make a lot
of sense the way it was done before. Also moved registering/unregistering
into the InputerServer class.
* Made the InputDeviceListItem class a bit more useful and encapsulated.
* cleanup, removed empty function documentation stubs.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14946 a95241bf-73f2-0310-859d-f6bbb57e9c96


# c39377044471916bdc675bf3d19f9faa7cc0446e 26-Oct-2004 Jérôme Duval <korli@users.berlios.de>

fixed devices showed as stopped when they were running


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9513 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7cc945c1efefd9f696771b62e4b1e4d8f30cdc56 18-Oct-2004 Jérôme Duval <korli@users.berlios.de>

added debug stuff


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9406 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 0548f831d5ab3d5948d19a7b5d9e4ed760332eb1 02-Sep-2004 Jérôme Duval <korli@users.berlios.de>

complete register and unregister


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8807 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 00740cc502b4158b05917e6773cf949f9514106f 29-Aug-2004 Jérôme Duval <korli@users.berlios.de>

Integrated MouseSettings and KeyboardSettings
update license info
clean up
removed node monitoring messages handling
fixed several message handlers


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8710 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b69a5532aee3a9b3e410c09e9353886df6972da3 27-Aug-2004 Jérôme Duval <korli@users.berlios.de>

reworked device manager


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8671 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 6e6fa57fb5940312dffc51461250f3b85b457cf3 26-Aug-2004 Jérôme Duval <korli@users.berlios.de>

Added a device manager for devices monitoring


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8666 a95241bf-73f2-0310-859d-f6bbb57e9c96


# cba20309fd6353fad9e9938746e902bd58ccb183 26-Aug-2004 Jérôme Duval <korli@users.berlios.de>

minor debug info


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8664 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e6c0b53ddc2f5d877499395c9aa15b262339c67d 23-Aug-2004 Jérôme Duval <korli@users.berlios.de>

Added filtering. Commented now former unused addon code.
We now load and manage device and filter addons successfully.
Tested with nervous and InputRecorder devices and InputRecorder filter.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8626 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 173f7185f40ac1e71a48c1d0de9c5523afb993ff 19-Aug-2004 Jérôme Duval <korli@users.berlios.de>

AddOnManager improved, initializations, message handling improved


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8610 a95241bf-73f2-0310-859d-f6bbb57e9c96


# ce9ad52de60d3a369781d9b2aad4dc3cfaadd322 28-Jul-2004 Jérôme Duval <korli@users.berlios.de>

Removed public headers, Input.cpp is in kits/interface/ already
Filled default hooks in Device Filter Method


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8501 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7c8b733d03f81aa3ed7f85287d6ecfee9c7e1fef 17-Jul-2002 Michael Phipps <michaelphipps@nowhere.fake>

Checkin, per Jason Vandermark.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@294 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 52a380120846174213ccce9c4aab0dda17c72083 08-Jul-2002 ejakowatz <ejakowatz@nowhere.fake>

It is accomplished ...


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10 a95241bf-73f2-0310-859d-f6bbb57e9c96