Ghi đè phím tắt trên toàn hệ thống cho phím tắt dành riêng cho ứng dụng


11

Có cách nào để đưa ra một phím tắt được xác định trong một ưu tiên ứng dụng so với một phím tắt trên toàn hệ thống với cùng một ràng buộc phím không?

Hành vi mong muốn: Khi một số phím được nhấn, hãy kiểm tra xem ứng dụng tập trung có muốn làm gì không (và nếu có, hãy thực hiện). Nếu không, kiểm tra xem có một phím tắt hệ thống cho một số phím và sau đó làm điều đó.

Điều hiện đang xảy ra: Tôi đã F11đặt 'chuyển đổi toàn màn hình' trong menu cài đặt cho các phím tắt. Trong Chrome, F11nên kích hoạt chế độ toàn màn hình của Chrome, nhưng thay vào đó, bị phím tắt trên toàn hệ thống, nghĩa là Chrome trở thành toàn màn hình (bảng điều khiển Gnome và thanh tiêu đề biến mất) nhưng cũng không chuyển sang chế độ toàn màn hình của Chrome (nơi cũng có các tab, thanh địa chỉ và thanh dấu trang tan biến).

(Lưu ý bên lề: Firefox không có vấn đề tương tự, nhưng điều này có vẻ là do toàn màn hình FF giống với / được kích hoạt bởi toàn màn hình của trình quản lý cửa sổ)


Câu hỏi đầu tiên xuất hiện trong đầu tôi; Điều gì nói với HĐH về các lần nhấn phím, ứng dụng hoặc X / Wayland? Dường như với tôi rằng X sẽ xử lý một phím bấm và xử lý nó nếu cần, trước khi chuyển nó đến cửa sổ ứng dụng của bạn đang chờ bạn. Câu hỏi thứ hai là làm thế nào để X biết liệu ứng dụng có thay đổi trạng thái hay không và làm thế nào để biết liệu có thay đổi xảy ra trực tiếp do nhấn phím không? Tôi muốn đi ra ngoài trên một chi và nói rằng bạn không gặp may mắn về điều này.
HellionWisp

Câu trả lời:


2

Tuyên bố miễn trừ trách nhiệm: Đây không phải là chính xác những gì bạn muốn, nhưng tôi đã dành quá nhiều thời gian cho việc này để không đăng nó và có thể người khác có thể sử dụng nó.

Tôi đã nhận được như Ctrl + F11 là toàn màn hình ở mọi nơi trừ Chromium, nơi nó là toàn màn hình của Chromium!

  1. Chuyến tàu tư tưởng

Tôi nghĩ rằng tôi có thể lừa người quản lý cửa sổ nếu tôi sử dụng xdotoolvà gửi lệnh trực tiếp đến cửa sổ chrome - không có kết quả.

Sau đó, tôi nghĩ rằng tôi có thể thay đổi phím tắt trong google chrome, nhưng điều đó dường như được mã hóa cứng - một ngõ cụt khác.

  1. Mà để lại cho chúng tôi điều này

Cài đặt xdotoolđể mô phỏng các lần nhấn bàn phím

sudo apt-get install xdotool

cấu hình lại các phím tắt Ubuntu Bàn phím thành một cái gì đó tùy ý, mà chúng ta không bao giờ gõ nhưng có thể sử dụng được trong tập lệnh

Cài đặt -> Thiết bị -> Bàn phím

Cuộn xuống và chỉnh sửa Chuyển đổi chế độ toàn màn hình sang Ctrl + Alt + 1rồi nhấn +và thêm phím tắt tùy chỉnh

phím tắt - toàn màn hình

và sau đó nhấn +và thêm một phím tắt tùy chỉnh

hộp thoại của phím tắt tùy chỉnh

chỉnh sửa kịch bản

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

làm cho nó thực thi

chmod +x /home/user/fullscreen.sh

  1. Phần kết luận

Có vẻ như không thể lừa được người quản lý cửa sổ và buôn lậu tổ hợp phím, nhưng chắc chắn có cách giải quyết có thể. Trong trường hợp này, Google đã làm cho phím tắt toàn màn hình không thể định cấu hình, do đó, nó chỉ thiếu dấu

Bây giờ với Ctrl + F11 , windowmanager điều khiển hành vi toàn màn hình ngoại trừ trong crom.


1
Hãy nghĩ rằng bạn đúng rằng đây là điều tốt nhất chúng ta có thể hy vọng - thật xấu hổ vì Chrome / ium không hỗ trợ các phím tắt tùy chỉnh. Đáng chú ý: sự lựa chọn các phím tắt quan trọng cho thủ thuật này! Tôi đã có Ctrl + F11 ràng buộc với thứ khác. Đã thử với Shift + Alt + F11, không hoạt động. Alt + F11 hoạt động tốt mặc dù. (Tôi đoán nó đã cố gắng để làm Shift + Ctrl + Alt + F11)
fred
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.