input: Adjust input_pointing_device_subtype enumeration and usages.
Follow input_device_type above: we don't have _TYPE or _SUBTYPE on the end, but _POINTING in the middle, because these aren't in a global "subtype" enumeration, but a B_POINTING_DEVICE-specific enumeration. Also don't bother adding the UNKNOWN type to messages that have no type; if it's not included, UNKNOWN is implied. Saves a few CPU cycles. Change-Id: I9088b9fcee63bf001b43febbe1e3ac17eb1792b4 Reviewed-on: https://review.haiku-os.org/c/haiku/+/8635 Tested-by: Commit checker robot <[email protected]> Reviewed-by: waddlesplash <[email protected]>
This commit is contained in:
committed by
waddlesplash
parent
254894210c
commit
27e83b8be8
@@ -26,10 +26,10 @@ enum input_device_type {
|
|||||||
|
|
||||||
|
|
||||||
enum input_pointing_device_subtype {
|
enum input_pointing_device_subtype {
|
||||||
B_UNKNOWN_DEVICE_SUBTYPE = 0,
|
B_UNKNOWN_POINTING_DEVICE = 0,
|
||||||
B_MOUSE_DEVICE_SUBTYPE = 1,
|
B_MOUSE_POINTING_DEVICE = 1,
|
||||||
B_TOUCHPAD_DEVICE_SUBTYPE = 2,
|
B_TOUCHPAD_POINTING_DEVICE = 2,
|
||||||
B_TABLET_DEVICE_SUBTYPE = 3
|
B_TABLET_POINTING_DEVICE = 3
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -277,7 +277,7 @@ EasyPenInputDevice::DeviceWatcher(void *arg)
|
|||||||
}
|
}
|
||||||
|
|
||||||
message->AddInt64("when", movements.timestamp);
|
message->AddInt64("when", movements.timestamp);
|
||||||
message->AddInt32("be:device_subtype", B_TABLET_DEVICE_SUBTYPE);
|
message->AddInt32("be:device_subtype", B_TABLET_POINTING_DEVICE);
|
||||||
message->AddInt32("buttons", movements.buttons);
|
message->AddInt32("buttons", movements.buttons);
|
||||||
message->AddFloat("x", movements.xpos);
|
message->AddFloat("x", movements.xpos);
|
||||||
message->AddFloat("y", movements.ypos);
|
message->AddFloat("y", movements.ypos);
|
||||||
@@ -288,7 +288,7 @@ EasyPenInputDevice::DeviceWatcher(void *arg)
|
|||||||
message = new BMessage(B_MOUSE_MOVED);
|
message = new BMessage(B_MOUSE_MOVED);
|
||||||
if (message) {
|
if (message) {
|
||||||
message->AddInt64("when", movements.timestamp);
|
message->AddInt64("when", movements.timestamp);
|
||||||
message->AddInt32("be:device_subtype", B_TABLET_DEVICE_SUBTYPE);
|
message->AddInt32("be:device_subtype", B_TABLET_POINTING_DEVICE);
|
||||||
message->AddInt32("buttons", movements.buttons);
|
message->AddInt32("buttons", movements.buttons);
|
||||||
message->AddFloat("x", movements.xpos);
|
message->AddFloat("x", movements.xpos);
|
||||||
message->AddFloat("y", movements.ypos);
|
message->AddFloat("y", movements.ypos);
|
||||||
@@ -309,7 +309,7 @@ EasyPenInputDevice::DeviceWatcher(void *arg)
|
|||||||
message = new BMessage(B_MOUSE_WHEEL_CHANGED);
|
message = new BMessage(B_MOUSE_WHEEL_CHANGED);
|
||||||
if (message) {
|
if (message) {
|
||||||
message->AddInt64("when", movements.timestamp);
|
message->AddInt64("when", movements.timestamp);
|
||||||
message->AddInt32("be:device_subtype", B_TABLET_DEVICE_SUBTYPE);
|
message->AddInt32("be:device_subtype", B_TABLET_POINTING_DEVICE);
|
||||||
message->AddFloat("be:wheel_delta_x", movements.wheel_xdelta);
|
message->AddFloat("be:wheel_delta_x", movements.wheel_xdelta);
|
||||||
message->AddFloat("be:wheel_delta_y", movements.wheel_ydelta);
|
message->AddFloat("be:wheel_delta_y", movements.wheel_ydelta);
|
||||||
|
|
||||||
|
|||||||
@@ -520,8 +520,8 @@ MouseDevice::_ControlThread()
|
|||||||
movements.wheel_ydelta) == B_OK
|
movements.wheel_ydelta) == B_OK
|
||||||
&& message->AddInt32("be:device_subtype",
|
&& message->AddInt32("be:device_subtype",
|
||||||
fIsTouchpad
|
fIsTouchpad
|
||||||
? B_TOUCHPAD_DEVICE_SUBTYPE
|
? B_TOUCHPAD_POINTING_DEVICE
|
||||||
: B_MOUSE_DEVICE_SUBTYPE) == B_OK)
|
: B_MOUSE_POINTING_DEVICE) == B_OK)
|
||||||
fTarget.EnqueueMessage(message);
|
fTarget.EnqueueMessage(message);
|
||||||
else
|
else
|
||||||
delete message;
|
delete message;
|
||||||
@@ -643,7 +643,7 @@ MouseDevice::_BuildMouseMessage(uint32 what, uint64 when, uint32 buttons,
|
|||||||
|| message->AddInt32("x", deltaX) < B_OK
|
|| message->AddInt32("x", deltaX) < B_OK
|
||||||
|| message->AddInt32("y", deltaY) < B_OK
|
|| message->AddInt32("y", deltaY) < B_OK
|
||||||
|| message->AddInt32("be:device_subtype",
|
|| message->AddInt32("be:device_subtype",
|
||||||
fIsTouchpad ? B_TOUCHPAD_DEVICE_SUBTYPE : B_MOUSE_DEVICE_SUBTYPE) < B_OK) {
|
fIsTouchpad ? B_TOUCHPAD_POINTING_DEVICE : B_MOUSE_POINTING_DEVICE) < B_OK) {
|
||||||
delete message;
|
delete message;
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -276,7 +276,7 @@ MouseInputDevice::DeviceWatcher(void* arg)
|
|||||||
message = new BMessage(B_MOUSE_UP);
|
message = new BMessage(B_MOUSE_UP);
|
||||||
|
|
||||||
message->AddInt64("when", movements.timestamp);
|
message->AddInt64("when", movements.timestamp);
|
||||||
message->AddInt32("be:device_subtype", B_MOUSE_DEVICE_SUBTYPE);
|
message->AddInt32("be:device_subtype", B_MOUSE_POINTING_DEVICE);
|
||||||
message->AddInt32("buttons", movements.buttons);
|
message->AddInt32("buttons", movements.buttons);
|
||||||
|
|
||||||
if ((buttons & movements.buttons) > 0) {
|
if ((buttons & movements.buttons) > 0) {
|
||||||
@@ -334,7 +334,7 @@ MouseInputDevice::DeviceWatcher(void* arg)
|
|||||||
message = new BMessage(B_MOUSE_MOVED);
|
message = new BMessage(B_MOUSE_MOVED);
|
||||||
if (message) {
|
if (message) {
|
||||||
message->AddInt64("when", movements.timestamp);
|
message->AddInt64("when", movements.timestamp);
|
||||||
message->AddInt32("be:device_subtype", B_MOUSE_DEVICE_SUBTYPE);
|
message->AddInt32("be:device_subtype", B_MOUSE_POINTING_DEVICE);
|
||||||
message->AddInt32("buttons", movements.buttons);
|
message->AddInt32("buttons", movements.buttons);
|
||||||
message->AddInt32("x", xdelta);
|
message->AddInt32("x", xdelta);
|
||||||
message->AddInt32("y", ydelta);
|
message->AddInt32("y", ydelta);
|
||||||
@@ -347,7 +347,7 @@ MouseInputDevice::DeviceWatcher(void* arg)
|
|||||||
message = new BMessage(B_MOUSE_WHEEL_CHANGED);
|
message = new BMessage(B_MOUSE_WHEEL_CHANGED);
|
||||||
if (message) {
|
if (message) {
|
||||||
message->AddInt64("when", movements.timestamp);
|
message->AddInt64("when", movements.timestamp);
|
||||||
message->AddInt32("be:device_subtype", B_MOUSE_DEVICE_SUBTYPE);
|
message->AddInt32("be:device_subtype", B_MOUSE_POINTING_DEVICE);
|
||||||
message->AddFloat("be:wheel_delta_x", movements.wheel_xdelta);
|
message->AddFloat("be:wheel_delta_x", movements.wheel_xdelta);
|
||||||
message->AddFloat("be:wheel_delta_y", movements.wheel_ydelta);
|
message->AddFloat("be:wheel_delta_y", movements.wheel_ydelta);
|
||||||
|
|
||||||
|
|||||||
@@ -383,7 +383,7 @@ TabletDevice::_ControlThread()
|
|||||||
&& message->AddFloat("be:wheel_delta_y",
|
&& message->AddFloat("be:wheel_delta_y",
|
||||||
movements.wheel_ydelta) == B_OK
|
movements.wheel_ydelta) == B_OK
|
||||||
&& message->AddInt32("be:device_subtype",
|
&& message->AddInt32("be:device_subtype",
|
||||||
B_TABLET_DEVICE_SUBTYPE) == B_OK)
|
B_TABLET_POINTING_DEVICE) == B_OK)
|
||||||
fTarget.EnqueueMessage(message);
|
fTarget.EnqueueMessage(message);
|
||||||
else
|
else
|
||||||
delete message;
|
delete message;
|
||||||
@@ -437,7 +437,7 @@ TabletDevice::_BuildMouseMessage(uint32 what, uint64 when, uint32 buttons,
|
|||||||
|| message->AddFloat("x", xPosition) < B_OK
|
|| message->AddFloat("x", xPosition) < B_OK
|
||||||
|| message->AddFloat("y", yPosition) < B_OK
|
|| message->AddFloat("y", yPosition) < B_OK
|
||||||
|| message->AddInt32("be:device_subtype",
|
|| message->AddInt32("be:device_subtype",
|
||||||
B_TABLET_DEVICE_SUBTYPE) < B_OK) {
|
B_TABLET_POINTING_DEVICE) < B_OK) {
|
||||||
delete message;
|
delete message;
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -170,7 +170,7 @@ filter_result PadBlocker::Filter(BMessage *message, BList *outList)
|
|||||||
|
|
||||||
// only block touchpad devices
|
// only block touchpad devices
|
||||||
if (message->FindInt32("be:device_subtype", &device) != B_OK
|
if (message->FindInt32("be:device_subtype", &device) != B_OK
|
||||||
|| device != B_TOUCHPAD_DEVICE_SUBTYPE)
|
|| device != B_TOUCHPAD_POINTING_DEVICE)
|
||||||
break;
|
break;
|
||||||
|
|
||||||
bigtime_t now = system_time();
|
bigtime_t now = system_time();
|
||||||
|
|||||||
@@ -1681,24 +1681,13 @@ InputServer::_SanitizeEvents(EventList& events)
|
|||||||
for (int32 index = 0; BMessage* event = (BMessage*)events.ItemAt(index);
|
for (int32 index = 0; BMessage* event = (BMessage*)events.ItemAt(index);
|
||||||
index++) {
|
index++) {
|
||||||
switch (event->what) {
|
switch (event->what) {
|
||||||
case B_MOUSE_WHEEL_CHANGED:
|
|
||||||
{
|
|
||||||
int32 device;
|
|
||||||
if (event->FindInt32("be:device_subtype", &device) != B_OK)
|
|
||||||
event->AddInt32("be:device_subtype", B_UNKNOWN_DEVICE_SUBTYPE);
|
|
||||||
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case B_MOUSE_MOVED:
|
case B_MOUSE_MOVED:
|
||||||
case B_MOUSE_DOWN:
|
case B_MOUSE_DOWN:
|
||||||
{
|
{
|
||||||
int32 buttons, device;
|
int32 buttons;
|
||||||
if (event->FindInt32("buttons", &buttons) != B_OK)
|
if (event->FindInt32("buttons", &buttons) != B_OK)
|
||||||
event->AddInt32("buttons", 0);
|
event->AddInt32("buttons", 0);
|
||||||
|
|
||||||
if (event->FindInt32("be:device_subtype", &device) != B_OK)
|
|
||||||
event->AddInt32("be:device_subtype", B_UNKNOWN_DEVICE_SUBTYPE);
|
|
||||||
|
|
||||||
// supposed to fall through
|
// supposed to fall through
|
||||||
}
|
}
|
||||||
case B_MOUSE_UP:
|
case B_MOUSE_UP:
|
||||||
|
|||||||
Reference in New Issue
Block a user