Uygulamaya özgü kısayol için sistem genelinde kısayolu geçersiz kılma


11

Uygulama önceliğinde tanımlanan bir klavye kısayolunu, aynı tuş bağlayıcısına sahip sistem çapında bir kısayol yerine vermenin bir yolu var mı?

İstenilen davranışı: Ne zaman bazı tuşlar basıldığında odaklanmış uygulama şey yapmak istiyorsa, kontrol (ve eğer öyleyse, bunu). Değilse, bazı tuşlar için bir sistem kısayolu olup olmadığını kontrol edin ve ardından bunu yapın.

Şu anda ne var :F11 Klavye kısayolları için ayarlar menüsünde 'tam ekrana geçiş yap' olarak ayarladım. Chrome'da F11Chrome'un kendi tam ekran modunu etkinleştirmesi gerekir, ancak bunun yerine sistem genelindeki kısayol tarafından geçersiz kılınır, yani Chrome tam ekran olur (GNOME paneli ve başlık çubuğu kaybolur), ancak Chrome'un tam ekran moduna girmez (sekmeler, adres çubuğu ve yer işaretleri çubuğu da vanish).

(Yan not: Firefox'ta aynı sorun yoktur, ancak bunun nedeni FF tam ekranının pencere yöneticisi tam ekranı tarafından / ile tetiklendiği gibidir)


Aklıma ilk gelen soru; işletim sistemi ile tuşa basma, uygulama veya X / Wayland hakkında neler konuşur? Bana öyle geliyor ki, X, uygulamanızın sizi beklediği pencereye geçmeden önce bir tuşa basacak ve gerekirse değiştirecektir. İkinci soru, X, uygulamanın durumunu değiştirip değiştirmediğini nasıl anlar ve bir tuşa basılması nedeniyle doğrudan bir değişiklik olup olmadığını nasıl bilebilir? Bir uzuv çıkıp bu konuda şanssız olduğunuzu söylemeye meyilli olurum.
HellionWisp

Yanıtlar:


2

Feragatname: Bu tam olarak istediğiniz şey değildir, ancak bunu yayınlamak için çok fazla zaman harcadım ve belki başka biri kullanabilir.

Ctrl + F11'in her yerde tam ekran olduğu kadar Chromium'un tam ekran olduğu Chromium kadar var!

  1. Düşünce treni

xdotoolKomutu doğrudan krom penceresine gönderir ve kullanmazsam pencere yöneticisini kandırabileceğimi düşündüm .

Sonra Google Chrome'da klavye kısayolunu değiştirebileceğimi düşündüm, ancak bu kodlanmış görünüyor - başka bir çıkmaz.

  1. Bizi bununla bırakıyor

xdotoolKlavye tuşlarını taklit etmek için yükle

sudo apt-get install xdotool

Ubuntu Klavye kısayollarını, hiçbir zaman yazmadığımız ancak komut dosyasında kullanılabilecek keyfi bir şeye yeniden yapılandırın

Ayarlar -> Cihazlar -> Klavye

Aşağı gidin ve düzenlemek için geçiş tam ekran modu için Ctrl + Alt + 1daha sonra ve vurmak +ve özel bir klavye kısayolu eklemek

klavye kısayolları - tam ekran

ve ardından +özel klavye kısayoluna basın

özel kısayol iletişim kutusu

komut dosyasını düzenle

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

çalıştırılabilir yap

chmod +x /home/user/fullscreen.sh

  1. Sonuç

Windowmanager'i kandırmak ve tuş vuruşu kaçırmak imkansız görünüyor, ancak kesinlikle geçici çözümler var. Bu durumda Google, tam ekran klavye kısayolunu yapılandırılamaz hale getirdiğinden, işaretin sadece altına düşüyor

Şimdi Ctrl + F11 ile windowmanager krom hariç tam ekran davranışını kontrol ediyor.


1
Bunun umabileceğimiz en iyi şey olduğunu düşünün - Chrome / ium'un özel klavye kısayollarını desteklemediğini utanç. Dikkate değer: Bu hile için klavye kısayolunun seçimi önemlidir! Ctrl + F11 zaten başka bir şeye bağlıydı. Çalışmayan Shift + Alt + F11 ile denedim. Alt + F11 de iyi çalıştı. (Sanırım Shift + Ctrl + Alt + F11 yapmaya çalışıyordu)
fred
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.