Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package extest for openSUSE:Factory checked in at 2026-07-20 09:59:07 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/extest (Old) and /work/SRC/openSUSE:Factory/.extest.new.24530 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "extest" Mon Jul 20 09:59:07 2026 rev:3 rq:1366608 version:1.0.3 Changes: -------- --- /work/SRC/openSUSE:Factory/extest/extest.changes 2025-09-01 17:18:21.071349502 +0200 +++ /work/SRC/openSUSE:Factory/.extest.new.24530/extest.changes 2026-07-20 10:01:04.563635417 +0200 @@ -1,0 +2,8 @@ +Sun Jul 19 13:52:16 UTC 2026 - Tobias Görgens <[email protected]> + +- Update to version 1.0.3: + * Support SIDE and EXTRA mouse buttons + * Update dependencies + * Fixed warning about redundancy. cliippy lint + +------------------------------------------------------------------- Old: ---- extest-1+git20241105.1a419a1.tar.xz New: ---- _servicedata extest-1.0.3.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ extest.spec ++++++ --- /var/tmp/diff_new_pack.9ULW8D/_old 2026-07-20 10:01:05.615670822 +0200 +++ /var/tmp/diff_new_pack.9ULW8D/_new 2026-07-20 10:01:05.619670957 +0200 @@ -17,7 +17,7 @@ Name: extest -Version: 1+git20241105.1a419a1 +Version: 1.0.3 Release: 0 Summary: X11 XTEST reimplementation primarily for Steam Controller on Wayland License: MIT ++++++ _service ++++++ --- /var/tmp/diff_new_pack.9ULW8D/_old 2026-07-20 10:01:05.655672168 +0200 +++ /var/tmp/diff_new_pack.9ULW8D/_new 2026-07-20 10:01:05.659672303 +0200 @@ -2,17 +2,17 @@ <services> <service name="tar_scm" mode="manual"> <param name="url">https://github.com/Supreeeme/extest.git</param> - <param name="versionformat">1+git%cd.%h</param> + <param name="versionformat">@PARENT_TAG@</param> <param name="scm">git</param> <param name="changesgenerate">enable</param> - <param name="revision">main</param> + <param name="revision">1.0.3</param> </service> <service name="recompress" mode="manual"> <param name="file">*.tar</param> <param name="compression">xz</param> </service> <service name="cargo_vendor" mode="manual"> - <param name="srctar">extest-1+git20241105.1a419a1.tar.xz</param> + <param name="srctar">extest-1.0.3.tar.xz</param> <param name="compression">zst</param> <param name="update">true</param> </service> ++++++ _servicedata ++++++ <servicedata> <service name="tar_scm"> <param name="url">https://github.com/Supreeeme/extest.git</param> <param name="changesrevision">0d068672fdaefd6f6565036ddd8e6949ee82eb63</param></service></servicedata> (No newline at EOF) ++++++ extest-1+git20241105.1a419a1.tar.xz -> extest-1.0.3.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/extest-1+git20241105.1a419a1/Cargo.lock new/extest-1.0.3/Cargo.lock --- old/extest-1+git20241105.1a419a1/Cargo.lock 2024-11-06 02:04:23.000000000 +0100 +++ new/extest-1.0.3/Cargo.lock 2025-09-03 03:18:41.000000000 +0200 @@ -1,12 +1,12 @@ # This file is automatically @generated by Cargo. # It is not intended for manual editing. -version = 3 +version = 4 [[package]] name = "autocfg" -version = "1.1.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" +checksum = "c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8" [[package]] name = "bitflags" @@ -15,6 +15,12 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" [[package]] +name = "bitflags" +version = "2.9.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2261d10cca569e4643e526d8dc2e62e433cc8aba21ab764233731f8d369bf394" + +[[package]] name = "bitvec" version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -28,18 +34,25 @@ [[package]] name = "cc" -version = "1.0.83" +version = "1.2.35" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0" +checksum = "590f9024a68a8c40351881787f1934dc11afd69090f5edb6831464694d836ea3" dependencies = [ - "libc", + "find-msvc-tools", + "shlex", ] [[package]] name = "cfg-if" -version = "1.0.0" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" +checksum = "2fd1289c04a9ea8cb22300a459a72a385d7c73d3259e2ed7dcb2af674838cfa9" + +[[package]] +name = "cfg_aliases" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724" [[package]] name = "dlib" @@ -52,21 +65,20 @@ [[package]] name = "downcast-rs" -version = "1.2.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ea835d29036a4087793836fa931b08837ad5e957da9e23886b29586fb9b6650" +checksum = "75b325c5dbd37f80359721ad39aca5a29fb04c89279657cffdda8736d0c0b9d2" [[package]] name = "evdev" -version = "0.12.1" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2bed59fcc8cfd6b190814a509018388462d3b203cf6dd10db5c00087e72a83f3" +checksum = "a3c10865aeab1a7399b3c2d6046e8dcc7f5227b656f235ed63ef5ee45a47b8f8" dependencies = [ "bitvec", "cfg-if", "libc", - "nix 0.23.2", - "thiserror", + "nix 0.29.0", ] [[package]] @@ -80,6 +92,12 @@ ] [[package]] +name = "find-msvc-tools" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e178e4fba8a2726903f6ba98a6d221e76f9c12c650d5dc0e6afdc50677b49650" + +[[package]] name = "funty" version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -87,9 +105,9 @@ [[package]] name = "hermit-abi" -version = "0.3.3" +version = "0.3.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d77f7ec81a6d05a3abb01ab6eb7590f6083d08449fe5a1c8b1e620283546ccb7" +checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024" [[package]] name = "io-lifetimes" @@ -104,40 +122,31 @@ [[package]] name = "libc" -version = "0.2.150" +version = "0.2.175" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89d92a4743f9a61002fae18374ed11e7973f530cb3a3255fb354818118b2203c" +checksum = "6a82ae493e598baaea5209805c49bbf2ea7de956d50d7da0da1164f9c6d28543" [[package]] name = "libloading" -version = "0.8.1" +version = "0.8.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c571b676ddfc9a8c12f1f3d3085a7b163966a8fd8098a90640953ce5f6170161" +checksum = "07033963ba89ebaf1584d767badaa2e8fcec21aedea6b8c0346d487d49c28667" dependencies = [ "cfg-if", - "windows-sys", + "windows-targets 0.53.3", ] [[package]] name = "log" -version = "0.4.20" +version = "0.4.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f" +checksum = "13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94" [[package]] name = "memchr" -version = "2.6.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f665ee40bc4a3c5590afb1e9677db74a508659dfd71e126420da8274909a0167" - -[[package]] -name = "memoffset" -version = "0.6.5" +version = "2.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce" -dependencies = [ - "autocfg", -] +checksum = "32a282da65faaf38286cf3be983213fcf1d2e2a58700e808f83f4ea9a4804bc0" [[package]] name = "memoffset" @@ -150,46 +159,45 @@ [[package]] name = "nix" -version = "0.23.2" +version = "0.26.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f3790c00a0150112de0f4cd161e3d7fc4b2d8a5542ffc35f099a2562aecb35c" +checksum = "598beaf3cc6fdd9a5dfb1630c2800c7acd31df7aaf0f565796fba2b53ca1af1b" dependencies = [ - "bitflags", - "cc", + "bitflags 1.3.2", "cfg-if", "libc", - "memoffset 0.6.5", + "memoffset", ] [[package]] name = "nix" -version = "0.26.4" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "598beaf3cc6fdd9a5dfb1630c2800c7acd31df7aaf0f565796fba2b53ca1af1b" +checksum = "71e2746dc3a24dd78b3cfcb7be93368c6de9963d30f43a6a73998a9cf4b17b46" dependencies = [ - "bitflags", + "bitflags 2.9.4", "cfg-if", + "cfg_aliases", "libc", - "memoffset 0.7.1", ] [[package]] name = "once_cell" -version = "1.18.0" +version = "1.21.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d" +checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d" [[package]] name = "pkg-config" -version = "0.3.27" +version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964" +checksum = "7edddbd0b52d732b21ad9a5fab5c704c14cd949e5e9a1ec5929a24fded1b904c" [[package]] name = "proc-macro2" -version = "1.0.70" +version = "1.0.101" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "39278fbbf5fb4f646ce651690877f89d1c5811a3d4acb27700c1cb3cdb78fd3b" +checksum = "89ae43fd86e4158d6db51ad8e2b80f313af9cc74f5c0e03ccb87de09998732de" dependencies = [ "unicode-ident", ] @@ -205,9 +213,9 @@ [[package]] name = "quote" -version = "1.0.33" +version = "1.0.40" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae" +checksum = "1885c039570dc00dcb4ff087a89e185fd56bae234ddc7f056a945bf36467248d" dependencies = [ "proc-macro2", ] @@ -225,21 +233,16 @@ checksum = "e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294" [[package]] -name = "smallvec" -version = "1.11.2" +name = "shlex" +version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4dccd0940a2dcdf68d092b8cbab7dc0ad8fa938bf95787e1b916b0e3d0e8e970" +checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" [[package]] -name = "syn" -version = "2.0.39" +name = "smallvec" +version = "1.15.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23e78b90f2fcf45d3e842032ce32e3f2d1545ba6636271dcbf24fa306d87be7a" -dependencies = [ - "proc-macro2", - "quote", - "unicode-ident", -] +checksum = "67b1b7a3b5fe4f1376887184045fcf45c69e92af734b7aaddc05fb777b6fbd03" [[package]] name = "tap" @@ -248,30 +251,10 @@ checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" [[package]] -name = "thiserror" -version = "1.0.50" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9a7210f5c9a7156bb50aa36aed4c95afb51df0df00713949448cf9e97d382d2" -dependencies = [ - "thiserror-impl", -] - -[[package]] -name = "thiserror-impl" -version = "1.0.50" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "266b2e40bc00e5a6c09c3584011e08b06f123c00362c92b975ba9843aaaa14b8" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - -[[package]] name = "unicode-ident" -version = "1.0.12" +version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" +checksum = "5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512" [[package]] name = "wayland-backend" @@ -294,7 +277,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "489c9654770f674fc7e266b3c579f4053d7551df0ceb392f153adb1f9ed06ac8" dependencies = [ - "bitflags", + "bitflags 1.3.2", "nix 0.26.4", "wayland-backend", "wayland-scanner", @@ -306,7 +289,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3b28101e5ca94f70461a6c2d610f76d85ad223d042dd76585ab23d3422dd9b4d" dependencies = [ - "bitflags", + "bitflags 1.3.2", "wayland-backend", "wayland-client", "wayland-scanner", @@ -335,12 +318,18 @@ ] [[package]] +name = "windows-link" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e6ad25900d524eaabdbbb96d20b4311e1e7ae1699af4fb28c17ae66c80d798a" + +[[package]] name = "windows-sys" version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" dependencies = [ - "windows-targets", + "windows-targets 0.48.5", ] [[package]] @@ -349,13 +338,30 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" dependencies = [ - "windows_aarch64_gnullvm", - "windows_aarch64_msvc", - "windows_i686_gnu", - "windows_i686_msvc", - "windows_x86_64_gnu", - "windows_x86_64_gnullvm", - "windows_x86_64_msvc", + "windows_aarch64_gnullvm 0.48.5", + "windows_aarch64_msvc 0.48.5", + "windows_i686_gnu 0.48.5", + "windows_i686_msvc 0.48.5", + "windows_x86_64_gnu 0.48.5", + "windows_x86_64_gnullvm 0.48.5", + "windows_x86_64_msvc 0.48.5", +] + +[[package]] +name = "windows-targets" +version = "0.53.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d5fe6031c4041849d7c496a8ded650796e7b6ecc19df1a431c1a363342e5dc91" +dependencies = [ + "windows-link", + "windows_aarch64_gnullvm 0.53.0", + "windows_aarch64_msvc 0.53.0", + "windows_i686_gnu 0.53.0", + "windows_i686_gnullvm", + "windows_i686_msvc 0.53.0", + "windows_x86_64_gnu 0.53.0", + "windows_x86_64_gnullvm 0.53.0", + "windows_x86_64_msvc 0.53.0", ] [[package]] @@ -365,42 +371,90 @@ checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" [[package]] +name = "windows_aarch64_gnullvm" +version = "0.53.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "86b8d5f90ddd19cb4a147a5fa63ca848db3df085e25fee3cc10b39b6eebae764" + +[[package]] name = "windows_aarch64_msvc" version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" [[package]] +name = "windows_aarch64_msvc" +version = "0.53.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c7651a1f62a11b8cbd5e0d42526e55f2c99886c77e007179efff86c2b137e66c" + +[[package]] name = "windows_i686_gnu" version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" [[package]] +name = "windows_i686_gnu" +version = "0.53.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c1dc67659d35f387f5f6c479dc4e28f1d4bb90ddd1a5d3da2e5d97b42d6272c3" + +[[package]] +name = "windows_i686_gnullvm" +version = "0.53.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9ce6ccbdedbf6d6354471319e781c0dfef054c81fbc7cf83f338a4296c0cae11" + +[[package]] name = "windows_i686_msvc" version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" [[package]] +name = "windows_i686_msvc" +version = "0.53.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "581fee95406bb13382d2f65cd4a908ca7b1e4c2f1917f143ba16efe98a589b5d" + +[[package]] name = "windows_x86_64_gnu" version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" [[package]] +name = "windows_x86_64_gnu" +version = "0.53.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2e55b5ac9ea33f2fc1716d1742db15574fd6fc8dadc51caab1c16a3d3b4190ba" + +[[package]] name = "windows_x86_64_gnullvm" version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" [[package]] +name = "windows_x86_64_gnullvm" +version = "0.53.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0a6e035dd0599267ce1ee132e51c27dd29437f63325753051e71dd9e42406c57" + +[[package]] name = "windows_x86_64_msvc" version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" [[package]] +name = "windows_x86_64_msvc" +version = "0.53.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "271414315aff87387382ec3d271b52d7ae78726f5d44ac98b4f4030c91880486" + +[[package]] name = "wyz" version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/extest-1+git20241105.1a419a1/Cargo.toml new/extest-1.0.3/Cargo.toml --- old/extest-1+git20241105.1a419a1/Cargo.toml 2024-11-06 02:04:23.000000000 +0100 +++ new/extest-1.0.3/Cargo.toml 2025-09-03 03:18:41.000000000 +0200 @@ -7,7 +7,7 @@ crate-type = ['cdylib'] [dependencies] -evdev = "0.12.1" +evdev = "0.13.1" once_cell = "1.17.1" wayland-client = "0.30.1" wayland-protocols = { version = "0.30.0", features = ["client", "unstable"] } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/extest-1+git20241105.1a419a1/src/lib.rs new/extest-1.0.3/src/lib.rs --- old/extest-1+git20241105.1a419a1/src/lib.rs 2024-11-06 02:04:23.000000000 +0100 +++ new/extest-1.0.3/src/lib.rs 2025-09-03 03:18:41.000000000 +0200 @@ -5,9 +5,8 @@ use wayland::get_axes_range; use evdev::{ - uinput::{VirtualDevice, VirtualDeviceBuilder}, - AbsInfo, AbsoluteAxisType, AttributeSet, EventType, InputEvent, Key, RelativeAxisType, - UinputAbsSetup, + uinput::VirtualDevice, AbsInfo, AbsoluteAxisCode, AttributeSet, EventType, InputEvent, KeyCode, + RelativeAxisCode, UinputAbsSetup, }; use once_cell::sync::Lazy; use std::ffi::{c_int, c_uint, c_ulong}; @@ -23,30 +22,34 @@ static DEVICE: Lazy<Mutex<VirtualDevice>> = Lazy::new(|| { let size = get_axes_range(); Mutex::new( - VirtualDeviceBuilder::new() + VirtualDevice::builder() .unwrap() .name("extest fake device") .with_keys(&AttributeSet::from_iter( - [Key::BTN_LEFT, Key::BTN_RIGHT, Key::BTN_MIDDLE] - .into_iter() - .chain(KEYS.iter().copied()), - )) - .unwrap() - .with_relative_axes(&AttributeSet::from_iter( [ - RelativeAxisType::REL_X, - RelativeAxisType::REL_Y, - RelativeAxisType::REL_WHEEL, + KeyCode::BTN_LEFT, + KeyCode::BTN_RIGHT, + KeyCode::BTN_MIDDLE, + KeyCode::BTN_EXTRA, + KeyCode::BTN_SIDE, ] + .into_iter() + .chain(KEYS.iter().copied()), )) .unwrap() + .with_relative_axes(&AttributeSet::from_iter([ + RelativeAxisCode::REL_X, + RelativeAxisCode::REL_Y, + RelativeAxisCode::REL_WHEEL, + ])) + .unwrap() .with_absolute_axis(&UinputAbsSetup::new( - AbsoluteAxisType::ABS_X, + AbsoluteAxisCode::ABS_X, AbsInfo::new(0, 0, size.width, 0, 0, 1), )) .unwrap() .with_absolute_axis(&UinputAbsSetup::new( - AbsoluteAxisType::ABS_Y, + AbsoluteAxisCode::ABS_Y, AbsInfo::new(0, 0, size.height, 0, 0, 1), )) .unwrap() @@ -66,15 +69,19 @@ // Seems that X11 keycodes are just 8 + linux keycode - https://wiki.archlinux.org/title/Keyboard_input#Identifying_keycodes let key = match keycode { - 156 => Key::KEY_TAB, // I have no idea where this comes from - keycode => Key::new((keycode - 8) as u16), + 156 => KeyCode::KEY_TAB, // I have no idea where this comes from + keycode => KeyCode::new((keycode - 8) as u16), }; #[cfg(debug_assertions)] println!("emitting keycode {key:?}"); - dev.emit(&[InputEvent::new_now(EventType::KEY, key.0, is_press as i32)]) - .unwrap(); + dev.emit(&[InputEvent::new_now( + EventType::KEY.0, + key.0, + is_press as i32, + )]) + .unwrap(); 1 } @@ -85,6 +92,8 @@ RightClick = 3, ScrollUp = 4, ScrollDown = 5, + Side = 8, + Extra = 9, } impl TryFrom<u32> for MouseButtons { @@ -97,6 +106,8 @@ 3 => Ok(RightClick), 4 => Ok(ScrollUp), 5 => Ok(ScrollDown), + 8 => Ok(Side), + 9 => Ok(Extra), other => Err(other), } } @@ -112,9 +123,11 @@ let mut dev = DEVICE.lock().unwrap(); // values determined via xev let key = match button.try_into() { - Ok(MouseButtons::LeftClick) => Key::BTN_LEFT, - Ok(MouseButtons::MiddleClick) => Key::BTN_MIDDLE, - Ok(MouseButtons::RightClick) => Key::BTN_RIGHT, + Ok(MouseButtons::LeftClick) => KeyCode::BTN_LEFT, + Ok(MouseButtons::MiddleClick) => KeyCode::BTN_MIDDLE, + Ok(MouseButtons::RightClick) => KeyCode::BTN_RIGHT, + Ok(MouseButtons::Side) => KeyCode::BTN_SIDE, + Ok(MouseButtons::Extra) => KeyCode::BTN_EXTRA, Ok(MouseButtons::ScrollUp | MouseButtons::ScrollDown) => { // These are sent with is_press true and is_press false like the other buttons, // but we only care about is_press because an "unpressed" scroll event doesn't make @@ -126,8 +139,8 @@ _ => unreachable!(), }; dev.emit(&[InputEvent::new_now( - EventType::RELATIVE, - RelativeAxisType::REL_WHEEL.0, + EventType::RELATIVE.0, + RelativeAxisCode::REL_WHEEL.0, value, )]) .unwrap(); @@ -140,8 +153,14 @@ } }; - dev.emit(&[InputEvent::new_now(EventType::KEY, key.0, is_press as i32)]) - .unwrap(); + #[cfg(debug_assertions)] + println!("emitting mouse button {key:?}"); + dev.emit(&[InputEvent::new_now( + EventType::KEY.0, + key.0, + is_press as i32, + )]) + .unwrap(); 1 } @@ -154,8 +173,8 @@ ) -> c_int { let mut dev = DEVICE.lock().unwrap(); let events = [ - InputEvent::new_now(EventType::RELATIVE, RelativeAxisType::REL_X.0, x), - InputEvent::new_now(EventType::RELATIVE, RelativeAxisType::REL_Y.0, y), + InputEvent::new_now(EventType::RELATIVE.0, RelativeAxisCode::REL_X.0, x), + InputEvent::new_now(EventType::RELATIVE.0, RelativeAxisCode::REL_Y.0, y), ]; dev.emit(&events).unwrap(); 1 @@ -171,8 +190,8 @@ ) -> c_int { let mut dev = DEVICE.lock().unwrap(); let events = [ - InputEvent::new_now(EventType::ABSOLUTE, AbsoluteAxisType::ABS_X.0, x), - InputEvent::new_now(EventType::ABSOLUTE, AbsoluteAxisType::ABS_Y.0, y), + InputEvent::new_now(EventType::ABSOLUTE.0, AbsoluteAxisCode::ABS_X.0, x), + InputEvent::new_now(EventType::ABSOLUTE.0, AbsoluteAxisCode::ABS_Y.0, y), ]; dev.emit(&events).unwrap(); 1 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/extest-1+git20241105.1a419a1/src/steam_keys.rs new/extest-1.0.3/src/steam_keys.rs --- old/extest-1+git20241105.1a419a1/src/steam_keys.rs 2024-11-06 02:04:23.000000000 +0100 +++ new/extest-1.0.3/src/steam_keys.rs 2025-09-03 03:18:41.000000000 +0200 @@ -1,130 +1,130 @@ -use evdev::Key; +use evdev::KeyCode; // Every key that Big Picture allows binding. -pub const KEYS: &[Key] = &[ - Key::KEY_ESC, - Key::KEY_F1, - Key::KEY_F2, - Key::KEY_F3, - Key::KEY_F4, - Key::KEY_F5, - Key::KEY_F6, - Key::KEY_F7, - Key::KEY_F8, - Key::KEY_F9, - Key::KEY_F10, - Key::KEY_F11, - Key::KEY_F12, - - Key::KEY_GRAVE, // ` - Key::KEY_1, - Key::KEY_2, - Key::KEY_3, - Key::KEY_4, - Key::KEY_5, - Key::KEY_6, - Key::KEY_7, - Key::KEY_8, - Key::KEY_9, - Key::KEY_0, - Key::KEY_MINUS, - Key::KEY_EQUAL, - Key::KEY_BACKSPACE, - - Key::KEY_TAB, - Key::KEY_Q, - Key::KEY_W, - Key::KEY_E, - Key::KEY_R, - Key::KEY_T, - Key::KEY_Y, - Key::KEY_U, - Key::KEY_I, - Key::KEY_O, - Key::KEY_P, - Key::KEY_LEFTBRACE, - Key::KEY_RIGHTBRACE, - Key::KEY_BACKSLASH, - - Key::KEY_CAPSLOCK, - Key::KEY_A, - Key::KEY_S, - Key::KEY_D, - Key::KEY_F, - Key::KEY_G, - Key::KEY_H, - Key::KEY_J, - Key::KEY_K, - Key::KEY_L, - Key::KEY_SEMICOLON, - Key::KEY_APOSTROPHE, - Key::KEY_ENTER, - - Key::KEY_LEFTSHIFT, - Key::KEY_Z, - Key::KEY_X, - Key::KEY_C, - Key::KEY_V, - Key::KEY_B, - Key::KEY_N, - Key::KEY_M, - Key::KEY_COMMA, - Key::KEY_DOT, - Key::KEY_SLASH, - Key::KEY_RIGHTSHIFT, - - Key::KEY_LEFTCTRL, - Key::KEY_RIGHTCTRL, - Key::KEY_LEFTMETA, - Key::KEY_LEFTALT, - Key::KEY_SPACE, - Key::KEY_RIGHTALT, - - Key::KEY_VOLUMEUP, - Key::KEY_VOLUMEDOWN, - Key::KEY_MUTE, - Key::KEY_PLAY, - Key::KEY_STOP, - Key::KEY_NEXT, - Key::KEY_PREVIOUS, - Key::KEY_PREVIOUSSONG, - Key::KEY_NEXTSONG, - Key::KEY_PLAYPAUSE, - Key::KEY_INSERT, - Key::KEY_HOME, - Key::KEY_PAGEUP, - Key::KEY_DELETE, - Key::KEY_END, - Key::KEY_PAGEDOWN, - - Key::KEY_UP, - Key::KEY_LEFT, - Key::KEY_RIGHT, - Key::KEY_DOWN, - - Key::KEY_NUMLOCK, - Key::KEY_KPSLASH, - Key::KEY_KPASTERISK, - Key::KEY_KPMINUS, - - Key::KEY_KP7, - Key::KEY_KP8, - Key::KEY_KP9, - Key::KEY_KPPLUS, - - Key::KEY_KP4, - Key::KEY_KP5, - Key::KEY_KP6, - - Key::KEY_KP1, - Key::KEY_KP2, - Key::KEY_KP3, - Key::KEY_KPENTER, - - Key::KEY_KP0, - Key::KEY_KPDOT, - Key::KEY_KPLEFTPAREN, - Key::KEY_KPRIGHTPAREN, - Key::KEY_102ND, // Output by < (less than key) +pub const KEYS: &[KeyCode] = &[ + KeyCode::KEY_ESC, + KeyCode::KEY_F1, + KeyCode::KEY_F2, + KeyCode::KEY_F3, + KeyCode::KEY_F4, + KeyCode::KEY_F5, + KeyCode::KEY_F6, + KeyCode::KEY_F7, + KeyCode::KEY_F8, + KeyCode::KEY_F9, + KeyCode::KEY_F10, + KeyCode::KEY_F11, + KeyCode::KEY_F12, + + KeyCode::KEY_GRAVE, // ` + KeyCode::KEY_1, + KeyCode::KEY_2, + KeyCode::KEY_3, + KeyCode::KEY_4, + KeyCode::KEY_5, + KeyCode::KEY_6, + KeyCode::KEY_7, + KeyCode::KEY_8, + KeyCode::KEY_9, + KeyCode::KEY_0, + KeyCode::KEY_MINUS, + KeyCode::KEY_EQUAL, + KeyCode::KEY_BACKSPACE, + + KeyCode::KEY_TAB, + KeyCode::KEY_Q, + KeyCode::KEY_W, + KeyCode::KEY_E, + KeyCode::KEY_R, + KeyCode::KEY_T, + KeyCode::KEY_Y, + KeyCode::KEY_U, + KeyCode::KEY_I, + KeyCode::KEY_O, + KeyCode::KEY_P, + KeyCode::KEY_LEFTBRACE, + KeyCode::KEY_RIGHTBRACE, + KeyCode::KEY_BACKSLASH, + + KeyCode::KEY_CAPSLOCK, + KeyCode::KEY_A, + KeyCode::KEY_S, + KeyCode::KEY_D, + KeyCode::KEY_F, + KeyCode::KEY_G, + KeyCode::KEY_H, + KeyCode::KEY_J, + KeyCode::KEY_K, + KeyCode::KEY_L, + KeyCode::KEY_SEMICOLON, + KeyCode::KEY_APOSTROPHE, + KeyCode::KEY_ENTER, + + KeyCode::KEY_LEFTSHIFT, + KeyCode::KEY_Z, + KeyCode::KEY_X, + KeyCode::KEY_C, + KeyCode::KEY_V, + KeyCode::KEY_B, + KeyCode::KEY_N, + KeyCode::KEY_M, + KeyCode::KEY_COMMA, + KeyCode::KEY_DOT, + KeyCode::KEY_SLASH, + KeyCode::KEY_RIGHTSHIFT, + + KeyCode::KEY_LEFTCTRL, + KeyCode::KEY_RIGHTCTRL, + KeyCode::KEY_LEFTMETA, + KeyCode::KEY_LEFTALT, + KeyCode::KEY_SPACE, + KeyCode::KEY_RIGHTALT, + + KeyCode::KEY_VOLUMEUP, + KeyCode::KEY_VOLUMEDOWN, + KeyCode::KEY_MUTE, + KeyCode::KEY_PLAY, + KeyCode::KEY_STOP, + KeyCode::KEY_NEXT, + KeyCode::KEY_PREVIOUS, + KeyCode::KEY_PREVIOUSSONG, + KeyCode::KEY_NEXTSONG, + KeyCode::KEY_PLAYPAUSE, + KeyCode::KEY_INSERT, + KeyCode::KEY_HOME, + KeyCode::KEY_PAGEUP, + KeyCode::KEY_DELETE, + KeyCode::KEY_END, + KeyCode::KEY_PAGEDOWN, + + KeyCode::KEY_UP, + KeyCode::KEY_LEFT, + KeyCode::KEY_RIGHT, + KeyCode::KEY_DOWN, + + KeyCode::KEY_NUMLOCK, + KeyCode::KEY_KPSLASH, + KeyCode::KEY_KPASTERISK, + KeyCode::KEY_KPMINUS, + + KeyCode::KEY_KP7, + KeyCode::KEY_KP8, + KeyCode::KEY_KP9, + KeyCode::KEY_KPPLUS, + + KeyCode::KEY_KP4, + KeyCode::KEY_KP5, + KeyCode::KEY_KP6, + + KeyCode::KEY_KP1, + KeyCode::KEY_KP2, + KeyCode::KEY_KP3, + KeyCode::KEY_KPENTER, + + KeyCode::KEY_KP0, + KeyCode::KEY_KPDOT, + KeyCode::KEY_KPLEFTPAREN, + KeyCode::KEY_KPRIGHTPAREN, + KeyCode::KEY_102ND, // Output by < (less than key) ]; ++++++ vendor.tar.zst ++++++ /work/SRC/openSUSE:Factory/extest/vendor.tar.zst /work/SRC/openSUSE:Factory/.extest.new.24530/vendor.tar.zst differ: char 7, line 1
