Общая документация: https://developer.chrome.com/extensions/events#filtered
// In general, it looks like this:
chrome.apiName.onEventName.addListener(handler, filter);
Примечание:
События поддерживают специальные фильтры, которые имеют значение для этого события.Список фильтров, поддерживаемых событием, будет указан в документации по этому событию в разделе «фильтры».
Итак, из документов для windows.onFocusChanged
:
Фильтры
массив WindowType windowTypes
Условия, которым должен удовлетворять удаляемый тип окна.По умолчанию он удовлетворяет ['normal', 'popup']
.
В вашем случае, как предложено wOxxOm:
chrome.windows.onFocusChanged.addListener(yourListener, {windowTypes: ['normal', 'popup']});
Единственный другой неотрицательный тип окна опцияis 'devtools'
.
К сожалению, вы не можете добавить фильтр ни при каких других условиях.Вам нужно будет проверить обработчик, если вы хотите фильтровать что-то вроде идентификатора окна, состояния окна, вкладок и т. Д.