I installed nightly build into my laptop. My laptop has a both of touchpad and mouse. Now mouse cursor is moved by a both of touchpad and mouse, but I want only mouse. How can I stop touchpad?
Can you disable the touchpad in BIOS?
You can try to blacklist the driver of the touchpad, if you know them:
How To Permanently Blacklist a Package File | Haiku Project
I never try this, but you can do this with other drivers, better packages of drivers, too. Plese correct me if i am false.
@christech
Thanks for your advice. It works fine
But If possible, I want a solution like `synclient TouchpadOff=1â
Which driver should I put into blacklist?
~> listimage |egrep driver
egrep: warning: egrep is obsolescent; using grep -E
123 0xffffffff81e2e000 0xffffffff81e36000 0 0 /boot/system/add-ons/kernel/drivers/disk/virtual/ram_disk
136 0xffffffff82112000 0xffffffff82113000 0 0 /boot/system/add-ons/kernel/drivers/dev/zero
138 0xffffffff820fe000 0xffffffff82101000 0 0 /boot/system/add-ons/kernel/drivers/dev/tty
140 0xffffffff82114000 0xffffffff82115000 0 0 /boot/system/add-ons/kernel/drivers/dev/null
141 0xffffffff81a53000 0xffffffff81a54000 0 0 /boot/system/add-ons/kernel/drivers/dev/dprintf
142 0xffffffff81dff000 0xffffffff81e01000 0 0 /boot/system/add-ons/kernel/drivers/dev/console
454 0xffffffff81e04000 0xffffffff81e06000 0 0 /boot/system/add-ons/kernel/drivers/power/acpi_button
1130 0xffffffff81e07000 0xffffffff81e09000 0 0 /boot/system/add-ons/kernel/drivers/sensor/acpi_als
1175 0xffffffff81e39000 0xffffffff81e3c000 0 0 /boot/system/add-ons/kernel/drivers/power/acpi_battery
3087 0xffffffff81e3d000 0xffffffff81e3f000 0 0 /boot/system/add-ons/kernel/drivers/power/acpi_thermal
3890 0xffffffff81f2c000 0xffffffff81fde000 0 0 /boot/system/add-ons/kernel/drivers/dev/net/realtekwifi
4684 0xffffffff821e0000 0xffffffff8225f000 0 0 /boot/system/add-ons/kernel/drivers/dev/net/ipro1000
4792 0xffffffff82094000 0xffffffff8209f000 0 0 /boot/system/add-ons/kernel/drivers/dev/graphics/intel_extreme
4800 0xffffffff820a6000 0xffffffff820ac000 0 0 /boot/system/add-ons/kernel/drivers/dev/graphics/vesa
4933 0xffffffff817be000 0xffffffff817cf000 0 0 /boot/system/add-ons/kernel/drivers/dev/input/usb_hid
5162 0xffffffff81a4b000 0xffffffff81a4e000 0 0 /boot/system/add-ons/kernel/drivers/dev/bus/usb_raw
5314 0xffffffff8187f000 0xffffffff8188d000 0 0 /boot/system/add-ons/kernel/drivers/dev/audio/hmulti/hda
5387 0xffffffff81a6e000 0xffffffff81a6f000 0 0 /boot/system/add-ons/kernel/drivers/dev/oss/oss_loader
TEAM 926 (/bin/grep -E --color=auto driver):
~>
Try disabling (move all the way to the left) âtapping sensitivityâ in Input preferences, IIRC @humdinger gave that as a tip a long time ago to me (and others).
@Begasus
There are only âAT Keyboard 1â and âPS/2 Mouse 1â and âUSB Mouse 1â in Input preference. No âtapping sensitivityâ
Thanks.
Perhaps it is not wired as PS/2 device and so not fully seen as a touchpad?
Even if itâs ps/2, the driver may not recognize it as any particular touchpad type, and use it in mouse compatibility mode. In that case there are no specifio settings in input preferences.
Tell the input server to stop it. Compile this little program:
#include <Message.h>
#include <Messenger.h>
#include <stdio.h>
// From headers/private/input/InputServerTypes.h
#define IS_START_DEVICE 'Istd'
#define IS_STOP_DEVICE 'Ispd'
// From src/servers/input/InputServer.h
#define INPUTSERVER_SIGNATURE "application/x-vnd.Be-input_server"
#define CHECK(x) if (x != B_OK) { puts(strerror(x)); return 2; }
int main(int argc, char** argv) {
if (argc != 3)
return 1;
status_t err;
BMessage command(strcmp(argv[2], "stop") ? IS_START_DEVICE : IS_STOP_DEVICE);
err = command.AddString("device", argv[1]);
CHECK(err);
BMessenger inputServer(INPUTSERVER_SIGNATURE, -1, &err);
CHECK(err);
BMessage reply;
err = inputServer.SendMessage(&command, &reply, 5000000LL, 5000000LL);
CHECK(err);
status_t err2 = reply.FindInt32("status", &err);
CHECK(err2);
CHECK(err);
return 0;
}
And run it as ./whatever 'PS/2 Mouse 1' stop
. You can change âstopâ for âstartâ to resurrect it.
Or use iroster from Making sure you're not a bot!
~> cc -o cntltp cntltp.c
In file included from cntltp.c:1:
/boot/system/develop/headers/os/app/Message.h:12:10: fatal error: new: No such file or directory
12 | #include <new>
| ^~~~~
compilation terminated.
But /boot/system/develop/headers/os/app/Message.h is readonly
I canât remove this lineâŚ
I noticed that âPS/2 Mouse 1â is a driver for my touchpad. So moving all the way to the left of âPS/2 Mouse 1â in Input preferences makes touchpad almost stopped. but it donât stop perfectly.
@korli
Thanks for your information! next command has stopped touchpad perfectly
/bin/iroster -"PS/2 Mouse 1"
And I have put â/bin/iroster -âPS/2 Mouse 1ââ into ~/config/settings/boot/UserBootscript, but it didnât work
Something wrong with me?
I found an ad-hoc solution
(sleep 20; /bin/iroster -"PS/2 Mouse 1") &
But I donât think this is a best way
You are probably missing the gcc_syslibs_devel package that contains this file.
Removing the line would just break somewhere further down Message.h
pkgman install gcc_syslibs_devel
@PulkoMandy
Thanks for your response. But is this line correct?
#include <new>
I feel strange about include file name ânewâ which have no extention â.hâ
You can include
any file. new
is a C++ header. Either compile with c++
instead of cc
or change the source extension to cpp
. Or use whatever flag is needed to force C++. Youâll also need -lbe
to link to libbe.
But youâd better forget my dirty program and just use iroster
, which I didnât find before writing that.