Я пишу расширение, которое взаимодействует с внешним процессом, поэтому рекомендуется уменьшать количество запросов типа «эй, что случилось», когда мой буфер не сфокусирован.
Итак, как лучше распознать:
- Когда мой буфер виден и сфокусирован
- Когда мой буфер виден, но не сфокусирован
- Когда мой буфер не виден и не сфокусирован
Ответы:
window-buffer
возвращает буфер, отображаемый в данный момент данным окном.get-buffer-window
, Наоборот, возвращается в окно , отображающее в настоящее время данный буфер (или ,nil
если нет такого окна, игра с дополнительным 2 - й аргумент , чтобы сказать ему , как вести себя в тех случаях , когда у вас есть несколько кадров).Используя эти два компонента, вы сможете различать все ваши случаи:
источник