ПОМОЩНИК 18.10
Мне настраивали рабочие области так, чтобы циклы alt-tab через окна в текущей рабочей области. Однако, если я нахожусь в окне Chrome, alt-tab отправляет меня в другое окно Chrome на другой рабочей области.
Alt-tab не появляется как ярлык ни в какой хромовой документации, которую я видел.
Таким образом, похоже, что Chrome захватывает alt-tab или что некоторый слой ПОМОЩНИКА передает его вместо того, чтобы действовать на него.
У кого-либо есть идея о том, что продолжается? И / или как зафиксировать его?
Согласно официальному Google Help Center нет никакого Alt+Tab
Сделайте поиск в интернет-магазине Chrome для Shortkeys там СУЩЕСТВУЮТ ответы. Который позволит Вам переопределять любые хромовые сочетания клавиш по умолчанию. Я нашел пару. Я не могу сделать предложения все же.
Я постарался бы не задавать вопросы как это в будущем, поскольку это - проблема Chrome не Ubuntu.
Согласно этому: https://www.computerhope.com/shortcut/chrome.htm Они могут быть установлены на alt+tab.
Отредактированный: Перемещенный материал для лучше показа моего ответа.
Предполагая, что проблема действительно заключается в том, что какое-то окно Chrome устанавливает флаг оконного менеджера _NET_WM_STATE_DEMANDS_ATTENTION
и ваш оконный менеджер не может сфокусировать правильное окно, вы можете запустить скрипт, подобный следующему, чтобы выяснить проблему:
#!/bin/bash
# Copyright 2020 Mikko Rantalainen <mikko.rantalainen@iki.fi>
# License: MIT
set -e
# check 'wmctrl' has been installed
wmctrl --version > /dev/null || { echo "This script requires command 'wmctrl', aborting." 1>&2; exit 1; }
# save active window id
ACTIVE_ID=$(xprop -root | grep _NET_ACTIVE_WINDOW\(WINDOW\) | sed 's/.*window id # //')
wmctrl -l | while read id desktop machine title
do
if xprop -id "$id" | grep -q "_NET_WM_STATE_DEMANDS_ATTENTION"
then
printf "\nWindow id %s (%s) on desktop #%s demands attention:\n" "$id" "$machine" "$desktop"
#xprop -id "$id" | grep -E '(WM_CLASS|^WM_NAME.*UTF8)'
printf -- "- %s\n" "$title"
if test "$1" = "--clear"
then
wmctrl -i -a "$id"
sleep 1
fi
fi
done
if test "$1" = "--clear"
then
wmctrl -i -a "$ACTIVE_ID"
else
echo ""
echo "Pass flag '--clear' to focus each window demanding attention" 1>&2
echo "for 1 seconds to clear the demands attention flag" 1>&2
fi
Сохраните файл, например как ~/bin/list-window-demands-attention, и вы можете запустить его в терминале:
$ list-window-demands-attention
Window id 0x0320005e (desktop) on desktop #2 demands attention:
- linux - How to check actual RAM usage of tmpfs? - Unix & Linux Stack Exchange - Google Chrome
Window id 0x03200079 (desktop) on desktop #2 demands attention:
- breaking-thunderbolt-security-bjorn-ruytenberg-20200417.pdf - Google Chrome
Pass flag '--clear' to focus each window demanding attention
for 1 seconds to clear the demands attention flag
Этого должно быть достаточно, чтобы выяснить, на каких окнах вам нужно сфокусироваться, чтобы снять флажок. Если вы не возражаете против фактических окон и просто хотите очистить флаг, вы можете передать --clear
, и скрипт будет отображать каждое окно в течение 1 секунды, а затем вернется к вашему окну, которое было активным до этого. переключение любого окна. Сфокусированные окна будут подняты на вершину стека окон.
list-window-demands-attention --clear
Если вы не хотите ждать 1 секунду для каждого окна, не стесняйтесь закомментировать или удалить sleep 1
выше.