ใช้ trackpad ของแล็ปท็อปเป็นแท็บเล็ตกราฟิก


15

ฉันสนใจที่จะใช้แล็ปท็อปแทร็กแพดของฉันเป็นแท็บเล็ตรูปวาดเช่นใช้แบบสัมบูรณ์แทนที่จะเป็นพิกัดสัมพัทธ์คล้ายกับInkletสำหรับ OSX

คำถามเดียวกันถูกถามในubuntuforums.orgในเดือนพฤษภาคม 2010 แต่คำถามไม่เคยตอบ ฉันสงสัยว่าสิ่งนี้ทำบน Linux หรือไม่ ฉันกำลังพยายามหาคำค้นหาที่จะใช้ ฉันค้นหา 'linux laptop ทัชแพดโหมดสัมบูรณ์' และเกิดปัญหากับไดรเวอร์แทร็คแพดซึ่งทำให้แทร็คแพดอยู่ในโหมดสัมบูรณ์ แต่ฉันกำลังมองหาโปรแกรมที่ใช้ตำแหน่งสัมบูรณ์มากกว่าการตั้งค่าไดรเวอร์


1
คุณต้องการสิ่งนี้สำหรับ Ubuntu ที่ทำงานบน MacBook หรือไม่? หรือคุณกำลังขอหรือวิธีการทำเช่นนี้กับtrackpad ใด ๆใน Ubuntu?
Eliah Kagan

ฉันกำลังมองหาบางอย่างที่สามารถทำงานกับแล็ปท็อปเครื่องใดก็ได้
Barton Chittenden

trackpads อยู่ที่อื่น ๆกว่าผู้ที่อยู่ใน MacBooks ล่าสุดความสามารถในการนี้หรือไม่? ดูเหมือนว่าบางสิ่งบางอย่างขึ้นอยู่กับความเก่งกาจของอุปกรณ์อินพุตเอง
Eliah Kagan

1
คุณจะไม่พบโปรแกรมเดียวที่สามารถทำสิ่งนี้ได้ ใน Mac OS X กรณีนี้ไม่ได้เป็นอย่างนั้น แต่พวกเขาก็สามารถซ่อนได้อย่างถูกต้อง (เช่นสลับโหมดอินพุตตามการทำงานของแอปพลิเคชัน) เกี่ยวข้อง Q: วิธีการอ่านตำแหน่งที่แน่นอนของการแตะจาก Cirque touchpad ใน linux
gertvdijk

คำตอบ:


8

ดูที่ไดรเวอร์ไม่ใช่แอปพลิเคชัน

คุณจะไม่พบโปรแกรมที่ทำเช่นนี้เนื่องจากทัชแพดทั้งสามประเภทนี้ไดรเวอร์พยายามที่จะสรุปความเป็นตัวแทนของแอปพลิเคชัน:

  • Touchpads การรายงานข้อมูลตำแหน่งที่แน่นอนจะถูกแปลโดยไดรเวอร์ Xorg เพื่อการเคลื่อนไหวที่สัมพันธ์กันสำหรับแอปพลิเคชัน แอปพลิเคชันทั่วไปไม่สามารถพูดคุยกับทัชแพดโดยตรง (โดยการออกแบบ) ดังนั้นคุณต้องหาวิธีแก้ไขในไดรเวอร์
  • ทัชแพดที่มีความสามารถทั้งในโหมดสัมพัทธ์และโหมดสัมบูรณ์จำเป็นต้องสลับโหมดซึ่งเป็นฮาร์ดแวร์เฉพาะและไม่ทราบถึงแอปพลิเคชัน
  • ทัชแพดพื้นฐานบางอย่างไม่มีความสามารถในการรายงานตำแหน่งที่แน่นอน

น่าเสียดายที่แม้ว่าคุณจะมีทัชแพดที่สามารถรายงานค่าสัมบูรณ์ทั้งหมดได้ แต่ไดรเวอร์ทัชแพดส่วนใหญ่จะไม่ยอมให้คุณใช้ในแอพพลิเคชั่น Linux ข้อมูลสัมบูรณ์มีอยู่จริงเนื่องจากผู้ขับขี่สามารถตรวจจับได้ว่าคุณแตะที่ขอบเพื่อเลื่อนดูหรือไม่ ทดสอบสิ่งนี้เพื่อตัวคุณเองโดยใช้evtestในเทอร์มินัลเสมือน (เพื่อระงับ X) ทัชแพดของฉัน Synaptics รายงานตำแหน่งที่แน่นอนดังนี้:

Event type 3 (EV_ABS)
  Event code 0 (ABS_X)
    Value   3332
    Min     1472
    Max     5648
    Fuzz       8
    Resolution      39
  Event code 1 (ABS_Y)
    Value   2017
    Min     1408
    Max     4806
    Fuzz       8
    Resolution      79

ความสามารถในการวางอุปกรณ์ Synaptics ในโหมดสัมบูรณ์ใน Xorg ถูกลบออกเมื่อไม่นานมานี้โดยการกระทำนี้ในxf86-input-synapticsไดรเวอร์:

Remove absolute mode

Moving a touchpad in absolute mode is unusual - touchpads are disconnected
from the output device, so direct interaction is hard. There appears to be
little usage of it (I haven't seen bug reports from people claiming to use
it). Joe Shaw, author of the code and only known user doesn't have a use for
it anymore, so purge it from the repo.

ไดรเวอร์พื้นฐานทั้งระบบ: evdev

วิธีเดียวที่ฉันเห็นสิ่งนี้เป็นไปได้ในขณะนี้ใน Linux คือการใช้evdevไดรเวอร์ใน Xorg มันถูกกล่าวถึงในปี 2010 ในรายชื่อผู้รับจดหมาย Xorg (ข้อความที่ตัดตอนมาด้านล่าง):

ฉันต้องได้ตำแหน่งที่แน่นอนของนิ้วบนทัชแพดแทนที่จะเป็นแค่การเคลื่อนที่สัมพัทธ์

ไดรเวอร์ synaptics ไม่ได้ทำเช่นนี้ แต่ไดรเวอร์ evdev ทำ ดังนั้นคุณต้องกำหนดค่าเซิร์ฟเวอร์ X ของคุณเพื่อใช้ไดรเวอร์ evdev สำหรับทัชแพดแทน ตัวอย่างข้อมูลการกำหนดค่าต่อไปนี้จะทำเพื่อคุณหากคุณใช้เซิร์ฟเวอร์ 1.8 หรือใหม่กว่า

Section "InputClass"
    Identifier "evdev touchpad"
    MatchIsTouchpad "on"
    Driver "evdev"
    Option "Mode" "absolute"
EndSection

บันทึกสิ่งนี้เป็น/etc/X11/xorg.conf.d/99-evdev-touchpad.confและรีสตาร์ทเซิร์ฟเวอร์ โปรดทราบว่านี่เป็นการเปลี่ยนแปลงลักษณะการทำงานของทัชแพดเท่านั้นไม่ใช่ข้อมูลในเหตุการณ์ แต่หลังจากนั้นข้อมูลก็ยังคงสมบูรณ์อยู่เสมอ นอกจากนี้ด้วยการใช้ evdev แทนที่จะเป็นซินแน็ปติกส์คุณจะสูญเสียความสามารถในการเลื่อนด้วยสองนิ้วแตะหรืออื่น ๆ

บรรทัดล่าง: สร้างคำขอคุณลักษณะ

ฉันเห็นที่ว่างสำหรับคำขอคุณลักษณะในตัวติดตามข้อผิดพลาดต้นน้ำสำหรับไดรเวอร์ synaptics (และอาจเป็นอย่างอื่น) มันจะมีประโยชน์มากหากมีอินเทอร์เฟซใน Xorg เพื่อให้สามารถอ่านค่าตำแหน่งที่แน่นอนของทัชแพดได้ ตัวบล็อคหลักที่ฉันเห็นคือมันอาจจะเป็นฮาร์ดแวร์ที่เฉพาะเจาะจงและยากที่จะใช้งาน

ฉันคิดว่าการพูดคุยกับโจชอว์และ Peter Hutterer อาจเป็นประโยชน์อย่างยิ่งในการดูว่าประวัติศาสตร์ในเรื่องนี้เป็นอย่างไรวิธีทำให้มันเป็นคุณสมบัติที่ยอดเยี่ยมและสิ่งที่คาดหวังจากมัน


มันเป็นคำตอบที่ดี แต่ที่นี่หนูเพิ่งจะแข็งตัว (12.10)
desgua

@desgua ใช่นั่นเป็นสิ่งที่คาดหวังมาก มันไม่ได้มีค่าที่ป้อนข้อมูลใด ๆ แน่นอน ...
gertvdijk

1
ในกรณีที่ทุกคนยังคงสนใจในเรื่องนี้ฉันได้ยื่นข้อบกพร่อง: bugs.freedesktop.org/show_bug.cgi?id=75322
Donarsson

1
อัปเดต: คำขอคุณลักษณะของฉันถูกปฏิเสธและผู้ดูแลระบุว่าเขา“ เสียใจที่ได้รวมในตอนแรก” ฉันจะดูรหัสและอาจแยกมัน ถ้าฉันทำฉันจะโพสต์ความคิดเห็นล่าสุดที่นี่เพื่อให้ทุกคนที่สนใจสามารถดูได้ ขออภัยที่ส่งสแปม
Donarsson

0

นั่นขึ้นอยู่กับฮาร์ดแวร์ที่ฉันคิดว่า .. แทร็กแพดของคุณต้องการการสนับสนุนเพื่อให้ได้ตำแหน่งที่แน่นอน แล็ปท็อปแทร็คแพดปกติทำหน้าที่เหมือนเมาส์มากเพียงให้ข้อมูลทิศทางความเร็วและการเร่งความเร็วเท่านั้น ดังนั้นทุกที่ที่คุณสัมผัสมันจะย้ายจากทิศทางปัจจุบันของเคอร์เซอร์เท่านั้น


1
นั่นไม่จริงเลย X สามารถอ่านตำแหน่งที่สามารถตรวจจับขอบที่คุณใช้สำหรับการเลื่อนตัวอย่างเช่น ฉันเชื่อว่าเป็นพารามิเตอร์การกำหนดค่า X Input ที่เราพลาดไป
gertvdijk

ใช่มันก็เป็นความจริง .. ฉันไม่แน่ใจว่ามันทำงานอย่างไร แต่ฉันคิดว่าการติดตั้งแทร็คแพดยังใช้งานง่ายเกินไปที่จะใช้เป็นแท็บเล็ตรูปวาด ..
Gladen
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.