Skip to content

Commit

Permalink
DeviceManagerX11: absorb get_device_type (#55)
Browse files Browse the repository at this point in the history
  • Loading branch information
danirabbit authored Mar 13, 2024
1 parent 1cca807 commit cbd4e5b
Show file tree
Hide file tree
Showing 3 changed files with 28 additions and 32 deletions.
28 changes: 0 additions & 28 deletions src/Backend/Device.vala
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,6 @@ public class Wacom.Backend.Device : GLib.Object {
PAD = 1 << 5
}

public string name { get; set; }
public string device_file { get; set; }
public string vendor_id { get; set; }
public string product_id { get; set; }
Expand Down Expand Up @@ -57,31 +56,4 @@ public class Wacom.Backend.Device : GLib.Object {
return new GLib.Settings (schema);
}
}

public static DeviceType get_device_type (Gdk.Device device) {
var source = device.get_source ();
switch (source) {
case Gdk.InputSource.MOUSE:
case Gdk.InputSource.TRACKPOINT:
return DeviceType.MOUSE;
case Gdk.InputSource.PEN:
case Gdk.InputSource.ERASER:
case Gdk.InputSource.CURSOR:
if (device.name.contains ("pad")) {
return DeviceType.TABLET | DeviceType.PAD;
}

return DeviceType.TABLET;
case Gdk.InputSource.KEYBOARD:
return DeviceType.KEYBOARD;
case Gdk.InputSource.TOUCHSCREEN:
return DeviceType.TOUCHSCREEN;
case Gdk.InputSource.TOUCHPAD:
return DeviceType.TOUCHPAD;
case Gdk.InputSource.TABLET_PAD:
return DeviceType.TABLET | DeviceType.PAD;
default:
return 0;
}
}
}
2 changes: 0 additions & 2 deletions src/Backend/DeviceManagerWayland.vala
Original file line number Diff line number Diff line change
Expand Up @@ -115,7 +115,6 @@ public class Wacom.Backend.DeviceManagerWayland : DeviceManager {
return null;
}

var name = udev_device.get_sysfs_attr ("name");
var vendor = udev_device.get_property ("ID_VENDOR_ID");
var product = udev_device.get_property ("ID_PRODUCT_ID");

Expand All @@ -125,7 +124,6 @@ public class Wacom.Backend.DeviceManagerWayland : DeviceManager {
}

var device = new Backend.Device () {
name = name,
device_file = udev_device.get_device_file (),
vendor_id = vendor,
product_id = product,
Expand Down
30 changes: 28 additions & 2 deletions src/Backend/DeviceManagerX11.vala
Original file line number Diff line number Diff line change
Expand Up @@ -66,16 +66,42 @@ public class Wacom.Backend.DeviceManagerX11 : DeviceManager {

private static Device create_device (Gdk.Device gdk_device, string device_file) {
var device = new Backend.Device () {
name = gdk_device.name,
device_file = device_file,
vendor_id = gdk_device.get_vendor_id (),
product_id = gdk_device.get_product_id (),
dev_type = Device.get_device_type (gdk_device)
dev_type = get_device_type (gdk_device)
};

return device;
}

private static Wacom.Backend.Device.DeviceType get_device_type (Gdk.Device device) {
var source = device.get_source ();
switch (source) {
case Gdk.InputSource.MOUSE:
case Gdk.InputSource.TRACKPOINT:
return Wacom.Backend.Device.DeviceType.MOUSE;
case Gdk.InputSource.PEN:
case Gdk.InputSource.ERASER:
case Gdk.InputSource.CURSOR:
if (device.name.contains ("pad")) {
return Wacom.Backend.Device.DeviceType.TABLET | Wacom.Backend.Device.DeviceType.PAD;
}

return Wacom.Backend.Device.DeviceType.TABLET;
case Gdk.InputSource.KEYBOARD:
return Wacom.Backend.Device.DeviceType.KEYBOARD;
case Gdk.InputSource.TOUCHSCREEN:
return Wacom.Backend.Device.DeviceType.TOUCHSCREEN;
case Gdk.InputSource.TOUCHPAD:
return Wacom.Backend.Device.DeviceType.TOUCHPAD;
case Gdk.InputSource.TABLET_PAD:
return Wacom.Backend.Device.DeviceType.TABLET | Wacom.Backend.Device.DeviceType.PAD;
default:
return 0;
}
}

private void remove_device (Gdk.Device gdk_device) {
var device = devices[gdk_device];

Expand Down

0 comments on commit cbd4e5b

Please sign in to comment.