Alt-tab, переключающий рабочие области, если Chrome находится в фокусе

ПОМОЩНИК 18.10

Мне настраивали рабочие области так, чтобы циклы alt-tab через окна в текущей рабочей области. Однако, если я нахожусь в окне Chrome, alt-tab отправляет меня в другое окно Chrome на другой рабочей области.

Alt-tab не появляется как ярлык ни в какой хромовой документации, которую я видел.

Таким образом, похоже, что Chrome захватывает alt-tab или что некоторый слой ПОМОЩНИКА передает его вместо того, чтобы действовать на него.

У кого-либо есть идея о том, что продолжается? И / или как зафиксировать его?

0
задан 12 February 2019 в 12:31

2 ответа

Согласно официальному Google Help Center нет никакого Alt+Tab

Сделайте поиск в интернет-магазине Chrome для Shortkeys там СУЩЕСТВУЮТ ответы. Который позволит Вам переопределять любые хромовые сочетания клавиш по умолчанию. Я нашел пару. Я не могу сделать предложения все же.

Я постарался бы не задавать вопросы как это в будущем, поскольку это - проблема Chrome не Ubuntu.

Согласно этому: https://www.computerhope.com/shortcut/chrome.htm Они могут быть установлены на alt+tab.

Отредактированный: Перемещенный материал для лучше показа моего ответа.

-2
ответ дан 26 October 2019 в 06:46

Предполагая, что проблема действительно заключается в том, что какое-то окно 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 выше.

0
ответ дан 16 May 2020 в 14:35

Другие вопросы по тегам:

Похожие вопросы: