簡體   English   中英

如何為我的Linux游戲禁用gnome窗口管理器鍵盤快捷鍵?

[英]How can I disable gnome window manager keyboard shortcuts for my linux game?

我正在將游戲移植到Linux。 這是一個復雜的游戲,具有許多鍵盤和鼠標快捷鍵,可以進行更好的控制。 快捷方式之一是利用alt和鼠標右鍵單擊,這與某些窗口管理器功能沖突-即在某些計算機上顯示上下文菜單。 我嘗試通過收集“ gsettings get org.gnome.desktop.wm.preferences mouse-button-modifier”的輸出在運行時禁用此功能,並在檢測到沖突時對其進行更改,但這非常麻煩,並且僅在少數情況下有效案例。 有人知道是否有更好,更可靠的方法來執行此操作-最好是在我的游戲窗口處於活動狀態時禁用所有快捷方式的方法。

您可以使用一些X Server代碼來抓住鍵盤並將其鎖定到應用程序窗口。 這樣可以防止其他任何東西攔截鍵盤。 參見例如: https : //tronche.com/gui/x/xlib/input/XGrabKeyboard.html

采取這種笨拙方法的缺點是,它會破壞諸如Alt + Tab退出全屏窗口的功能。

LWN上有一篇文章,介紹了Valve使Steam在Linux中工作的所有技巧( http://lwn.net/Articles/611969/)Valve甚至在某些地方使用LD_PRELOAD。 他們必須實現特殊的覆蓋,以允許alt-tab之類的東西正常工作。 您也許可以查看Steam客戶端的源代碼,以了解他們是如何做到的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM