แทนที่ทางลัดทั้งระบบสำหรับทางลัดเฉพาะแอปพลิเคชัน


11

มีวิธีการกำหนดแป้นพิมพ์ลัดในแอปพลิเคชันที่สำคัญกว่าทางลัดทั้งระบบโดยใช้การโยงคีย์เดียวกันหรือไม่

พฤติกรรมที่ต้องการ: เมื่อกดปุ่มบางปุ่มให้ตรวจสอบว่าแอปพลิเคชันที่เน้นไปที่ต้องการทำอะไร (และถ้าเป็นเช่นนั้นให้ทำ) หากไม่มีให้ตรวจสอบว่ามีปุ่มลัดของระบบสำหรับปุ่มบางปุ่มหรือไม่จากนั้นทำเช่นนั้น

สิ่งที่เกิดขึ้น: ฉันได้F11ตั้งค่าเป็น 'สลับเต็มหน้าจอ' ในเมนูการตั้งค่าสำหรับแป้นพิมพ์ลัด ใน Chrome F11ควรเปิดใช้งานโหมดเต็มหน้าจอของ Chrome เอง แต่จะถูกแทนที่โดยทางลัดทั้งระบบเช่น Chrome เปลี่ยนเป็นแบบเต็มหน้าจอ (พาเนล GNOME และแถบหัวเรื่องหายไป) แต่ไม่เข้าสู่โหมดเต็มหน้าจอของ Chrome (ที่แท็บแถบที่อยู่ หายไป)

(หมายเหตุด้าน: Firefox ไม่มีปัญหาเดียวกัน แต่น่าจะเป็นเพราะหน้าจอ FF แบบเต็มเหมือนกับ / ถูกทริกเกอร์โดยตัวจัดการหน้าต่างแบบเต็มหน้าจอ)


คำถามแรกที่อยู่ในใจของฉัน สิ่งที่พูดถึงระบบปฏิบัติการเกี่ยวกับการกดปุ่มแอปพลิเคชันหรือ X / Wayland สำหรับฉันดูเหมือนว่า X จะจัดการกับการกดปุ่มและทำให้มันยุ่งเหยิงถ้าจำเป็นก่อนที่จะส่งผ่านไปยังหน้าต่างแอปพลิเคชันของคุณกำลังรอคุณอยู่ คำถามที่สองคือ X จะรู้ได้อย่างไรว่าแอปพลิเคชันเปลี่ยนสถานะและจะทราบได้อย่างไรว่าการเปลี่ยนแปลงเกิดขึ้นโดยตรงเนื่องจากการกดปุ่ม ฉันมีแนวโน้มที่จะออกไปบนกิ่งและบอกว่าคุณโชคไม่ดี
HellionWisp

คำตอบ:


2

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

ฉันได้รับเท่า Ctrl + F11 เต็มหน้าจอทุกที่ แต่ Chromium ที่เป็นแบบเต็มหน้าจอของ Chromium!

  1. รถไฟแห่งความคิด

ฉันคิดว่าฉันอาจหลอกตัวจัดการหน้าต่างได้ถ้าฉันใช้xdotoolและส่งคำสั่งโดยตรงไปที่หน้าต่าง chrome - เพื่อประโยชน์

ถ้าอย่างนั้นฉันก็คิดว่าฉันสามารถเปลี่ยนแป้นพิมพ์ลัดใน google chrome ได้ แต่นั่นดูเหมือนว่าฮาร์ดโค้ด - อีกปลายตาย

  1. ซึ่งทิ้งเราไว้กับสิ่งนี้

ติดตั้งxdotoolเพื่อจำลองการกดแป้นพิมพ์

sudo apt-get install xdotool

กำหนดค่าแป้นพิมพ์ลัด Ubuntu ให้เป็นอะไรก็ได้ที่เราไม่เคยพิมพ์ แต่ใช้งานได้ในสคริปต์

การตั้งค่า -> อุปกรณ์ -> คีย์บอร์ด

เลื่อนลงและแก้ไขสลับโหมดเต็มหน้าจอเป็นCtrl + Alt + 1และจากนั้นกด+และเพิ่มแป้นพิมพ์ลัดแบบกำหนดเอง

แป้นพิมพ์ลัด - เต็มหน้าจอ

จากนั้นกดปุ่ม+และเพิ่มแป้นพิมพ์ลัดแบบกำหนดเอง

กล่องโต้ตอบของทางลัดที่กำหนดเอง

แก้ไขสคริปต์

nano /home/user/fullscreen.sh


#!/bin/bash
export DISPLAY=:0
windowname=$(xdotool getactivewindow getwindowname | cut -d "-" -f 2)
if [[ $windowname != *"Chromium"* ]]
then
xdotool keydown Ctrl keydown Alt key 1 keyup Alt keyup Ctrl
else
xdotool search --onlyvisible --class "Chromium" windowfocus 
sleep 0.2
xdotool key F11
fi

ทำให้มันใช้งานได้

chmod +x /home/user/fullscreen.sh

  1. ข้อสรุป

ดูเหมือนว่าจะเป็นไปไม่ได้ที่จะหลอกลวงคนจัดการหน้าต่างและลักลอบกดแป้น ในกรณีนี้ Google ทำแป้นพิมพ์ลัดเต็มหน้าจอที่ไม่สามารถกำหนดค่าได้

ขณะนี้ด้วยCtrl + F11 windowmanager ควบคุมพฤติกรรมเต็มหน้าจอยกเว้นในโครเมียม


1
คิดว่าคุณคิดถูกนี่เป็นสิ่งที่ดีที่สุดที่เราจะทำได้ด้วยความอับอายที่ Chrome / ium ไม่สนับสนุนแป้นพิมพ์ลัดที่กำหนดเอง เร็ว ๆ นี้: ตัวเลือกแป้นพิมพ์ลัดสำคัญสำหรับเคล็ดลับนี้ ฉันได้กด Ctrl + F11 ไปยังสิ่งอื่นแล้ว พยายามกับ Shift + Alt + F11 ซึ่งไม่ได้ผล Alt + F11 ทำงานได้ดี (ผมคิดว่ามันเป็นความพยายามที่จะทำ Shift + Ctrl + Alt + F11)
เฟร็ด
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.