Ubuntu 20.04を新しくインストールすると、ドラッグロックは機能しません。

Ubuntu 20.04を新しくインストールすると、ドラッグロックは機能しません。

これは、Ubuntuがプレインストールされた状態で提供される2016年のDell Inspiron 15 7559です。その後、過去4年間、何の問題もなく16.04を実行してきました。

昨日新しくインストールしました(消去されたディスク)と20.04(以前のBIOSでは、UEFIによるオーディオの問題)ドラッグロックが機能しないことがわかりました。

xinput list

通常私に提供します(16.04と20.04)

⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ ELAN1010:00 04F3:3012 Mouse               id=12   [slave  pointer  (2)]
⎜   ↳ ELAN1010:00 04F3:3012 Touchpad            id=13   [slave  pointer  (2)]
⎜   ↳ ETPS/2 Elantech Touchpad                  id=16   [slave  pointer  (2)]
⎣ Virtual core keyboard                     id=3    [master keyboard (2)]
    ↳ Virtual core XTEST keyboard               id=5    [slave  keyboard (3)]
    ↳ Power Button                              id=6    [slave  keyboard (3)]
    ↳ Video Bus                                 id=7    [slave  keyboard (3)]
    ↳ Video Bus                                 id=8    [slave  keyboard (3)]
    ↳ Power Button                              id=9    [slave  keyboard (3)]
    ↳ Sleep Button                              id=10   [slave  keyboard (3)]
    ↳ Integrated_Webcam_HD: Integrate           id=11   [slave  keyboard (3)]
    ↳ Dell WMI hotkeys                          id=14   [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard              id=15   [slave  keyboard (3)]
    ↳ DELL Wireless hotkeys                     id=17   [slave  keyboard (3)]

そして、2つのタッチパッドデバイスのIDが時々変わるようで、両方のデバイスのフルネームを使用してプロパティを設定しました。

16.04では、ログイン時に次のコマンドを実行してドラッグロックを有効にしました。

xinput --set-prop "ELAN1010:00 04F3:3012 Touchpad" "Synaptics Locked Drags" 1
xinput --set-prop "ETPS/2 Elantech Touchpad" "Synaptics Locked Drags" 1

これら2つのコマンドは、属性名がsynapticsからlibinputに変更されたため、エラーが発生します。xinput --list-propsどちらかを実行すると、次の結果が表示されます。

Device 'ELAN1010:00 04F3:3012 Touchpad':
    Device Enabled (197):   1
    Coordinate Transformation Matrix (199): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
    libinput Tapping Enabled (349): 1
    libinput Tapping Enabled Default (350): 0
    libinput Tapping Drag Enabled (351):    1
    libinput Tapping Drag Enabled Default (352):    1
    libinput Tapping Drag Lock Enabled (353):   0
    libinput Tapping Drag Lock Enabled Default (354):   0
    libinput Tapping Button Mapping Enabled (355):  1, 0
    libinput Tapping Button Mapping Default (356):  1, 0
    libinput Natural Scrolling Enabled (333):   1
    libinput Natural Scrolling Enabled Default (334):   0
    libinput Disable While Typing Enabled (357):    1
    libinput Disable While Typing Enabled Default (358):    1
    libinput Scroll Methods Available (335):    1, 1, 0
    libinput Scroll Method Enabled (336):   1, 0, 0
    libinput Scroll Method Enabled Default (337):   1, 0, 0
    libinput Click Methods Available (359): 1, 1
    libinput Click Method Enabled (360):    0, 1
    libinput Click Method Enabled Default (361):    1, 0
    libinput Middle Emulation Enabled (362):    0
    libinput Middle Emulation Enabled Default (363):    0
    libinput Accel Speed (340): 0.000000
    libinput Accel Speed Default (341): 0.000000
    libinput Left Handed Enabled (345): 0
    libinput Left Handed Enabled Default (346): 0
    libinput Send Events Modes Available (318): 1, 1
    libinput Send Events Mode Enabled (319):    0, 0
    libinput Send Events Mode Enabled Default (320):    0, 0
    Device Node (321):  "/dev/input/event12"
    Device Product ID (322):    1267, 12306
    libinput Drag Lock Buttons (347):   <no items>
    libinput Horizontal Scroll Enabled (348):   1

そして

Device 'ETPS/2 Elantech Touchpad':
    Device Enabled (197):   1
    Coordinate Transformation Matrix (199): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
    libinput Tapping Enabled (349): 1
    libinput Tapping Enabled Default (350): 0
    libinput Tapping Drag Enabled (351):    1
    libinput Tapping Drag Enabled Default (352):    1
    libinput Tapping Drag Lock Enabled (353):   0
    libinput Tapping Drag Lock Enabled Default (354):   0
    libinput Tapping Button Mapping Enabled (355):  1, 0
    libinput Tapping Button Mapping Default (356):  1, 0
    libinput Natural Scrolling Enabled (333):   1
    libinput Natural Scrolling Enabled Default (334):   0
    libinput Disable While Typing Enabled (357):    1
    libinput Disable While Typing Enabled Default (358):    1
    libinput Scroll Methods Available (335):    1, 1, 0
    libinput Scroll Method Enabled (336):   1, 0, 0
    libinput Scroll Method Enabled Default (337):   1, 0, 0
    libinput Click Methods Available (359): 1, 1
    libinput Click Method Enabled (360):    0, 1
    libinput Click Method Enabled Default (361):    1, 0
    libinput Middle Emulation Enabled (362):    0
    libinput Middle Emulation Enabled Default (363):    0
    libinput Accel Speed (340): 0.000000
    libinput Accel Speed Default (341): 0.000000
    libinput Left Handed Enabled (345): 0
    libinput Left Handed Enabled Default (346): 0
    libinput Send Events Modes Available (318): 1, 1
    libinput Send Events Mode Enabled (319):    0, 0
    libinput Send Events Mode Enabled Default (320):    0, 0
    Device Node (321):  "/dev/input/event7"
    Device Product ID (322):    2, 14
    libinput Drag Lock Buttons (347):   <no items>
    libinput Horizontal Scroll Enabled (348):   1

だから当然次のことを試しました。

xinput --set-prop "ELAN1010:00 04F3:3012 Touchpad" "libinput Tapping Drag Lock Enabled" 1
xinput --set-prop "ETPS/2 Elantech Touchpad" "libinput Tapping Drag Lock Enabled" 1

プロパティは正常に設定されましたが、タッチパッドの動作は変わりません。

最後に、GNOME設定も更新して確認しました。

gsettings org.gnome.desktop.peripherals.touchpad インポートをクリックしてドラッグ

私にください

本物

これまで私はこれをすることができませんでした。

PS:私はXorgを次のように使用しています。

echo $XDG_SESSION_TYPE

出力

x11

調達庁:関連機器の内容/proc/bus/input/devicesは次のとおりです。

I: Bus=0011 Vendor=0002 Product=000e Version=0000
N: Name="ETPS/2 Elantech Touchpad"
P: Phys=isa0060/serio1/input0
S: Sysfs=/devices/platform/i8042/serio1/input/input6
U: Uniq=
H: Handlers=mouse2 event7 
B: PROP=5
B: EV=b
B: KEY=e420 10000 0 0 0 0
B: ABS=661800011000003

I: Bus=0018 Vendor=04f3 Product=3012 Version=0100
N: Name="ELAN1010:00 04F3:3012 Touchpad"
P: Phys=i2c-ELAN1010:00
S: Sysfs=/devices/pci0000:00/0000:00:15.0/i2c_designware.0/i2c-1/i2c-ELAN1010:00/0018:04F3:3012.0001/input/input15
U: Uniq=
H: Handlers=mouse1 event12 
B: PROP=5
B: EV=1b
B: KEY=e520 10000 0 0 0 0
B: ABS=2e0800000000003
B: MSC=20

/etc/x11/xorg.confPPPS:なしまたはマイドライブに存在します/etc/x11/xorg.conf.d/

PPPPS:これに関するいくつかの情報があります。libinput のマニュアルページしかし、正直に動作させるために必要なステップを理解していません。

編集する: これはクロスポストアクベント出身。

ベストアンサー1

この質問はaskubuntuにクロスポストされており、ここに私の答えのコピーがあります。ここから


コメントによると、ドラッグロックは機能しますが、ドラッグがタイムアウトし、見逃すのは簡単です。(つまり、タッチパッドから指を離してから再度下げる前に「ドラッグ」が機能する時間)非常に小さい(300ms)。シナプティクスのデフォルト値は5秒です。

小さすぎる理由は注意を引かないためです。接近性上の理由でこれを無限に増やすことが価値があるかもしれないが。

ATMではタイムアウトを簡単に変更できません。ハッカーとして人は変わることができるこの行のタイムアウト値ソースから libinput を再構築します。

しかし、OPが正しく指摘したように、オープンMRタイムアウトを設定可能にします。作者があきらめる該当する質問。しかし、管理者がアイデアに開いていることは簡単にわかります。ディスカッションに参加してみることができます。推論が十分に説得力がある場合、既存のMRをリセットしてマージするのは簡単です。

おすすめ記事