Spec-Zone.ru › Hammerspoon

hs.window

Просмотр/манипулирование окнами

Примечания:

  • См. hs.screen и hs.geometry для получения дополнительной информации о том, как Hammerspoon использует кадры окна/экрана и координаты

Подмодули

  • hs.window.filter
  • hs.window.highlight
  • hs.window.layout
  • hs.window.switcher
  • hs.window.tiling

Обзор API

  • Переменные - Настраиваемые значения
    • animationDuration
    • setFrameCorrectness
  • Функции - API-вызовы, предлагаемые непосредственно расширением
    • allWindows
    • desktop
    • invisibleWindows
    • list
    • minimizedWindows
    • orderedWindows
    • setShadows
    • snapshotForID
    • timeout
    • visibleWindows
  • Конструкторы - API-вызовы, возвращающие объект, обычно предоставляющий API-методы
    • find
    • focusedWindow
    • frontmostWindow
    • get
  • Методы - API-вызовы, которые могут быть выполнены только с объектом, возвращенным конструктором
    • application
    • becomeMain
    • centerOnScreen
    • close
    • focus
    • focusTab
    • focusWindowEast
    • focusWindowNorth
    • focusWindowSouth
    • focusWindowWest
    • frame
    • id
    • isFullScreen
    • isMaximizable
    • isMinimized
    • isStandard
    • isVisible
    • maximize
    • minimize
    • move
    • moveOneScreenEast
    • moveOneScreenNorth
    • moveOneScreenSouth
    • moveOneScreenWest
    • moveToScreen
    • moveToUnit
    • otherWindowsAllScreens
    • otherWindowsSameScreen
    • raise
    • role
    • screen
    • sendToBack
    • setFrame
    • setFrameInScreenBounds
    • setFrameWithWorkarounds
    • setFullScreen
    • setSize
    • setTopLeft
    • size
    • snapshot
    • subrole
    • tabCount
    • title
    • toggleFullScreen
    • toggleZoom
    • topLeft
    • unminimize
    • windowsToEast
    • windowsToNorth
    • windowsToSouth
    • windowsToWest
    • zoomButtonRect

Документация API

Раздел переменных

animationDuration
Подпись hs.window.animationDuration (number)
Тип Переменная
Описание

Длительность анимации по умолчанию в секундах. Начальное значение 0,2; установите в 0, чтобы отключить анимации.

Источник extensions/window/window.lua строка 21
setFrameCorrectness
Подпись hs.window.setFrameCorrectness
Тип Переменная
Описание

Использование hs.window:setFrame() в некоторых случаях не работает как ожидается: а именно, нижний (или Dock) край и края между экранами могут

Источник extensions/window/window.lua строка 392

Раздел функций

allWindows
Подпись hs.window.allWindows() -> list of hs.window objects
Тип Функция
Описание

Возвращает все окна

Параметры
  • Нет
Возвращает
  • Список объектов hs.window, представляющих все открытые окна
Примечания
  • visibleWindows(), orderedWindows(), get(), find(), и несколько других функций и методов в этом и других модулях используют эту функцию, поэтому важно понять ее ограничения
  • Эта функция запрашивает все приложения для получения их окон каждый раз при вызове; если вам нужно вызывать ее много раз и производительность не приемлема, рассмотрите использование модуля hs.window.filter
  • Эта функция может возвращать только окна в текущем пространстве Mission Control; если вам нужно обращаться к окнам в разных пространствах, вы можете использовать модуль hs.window.filter.
    • если Displays have separate Spaces включено (в Системные настройки>Управление окнами), текущее пространство определяется как объединение всех в настоящее время видимых пространств
    • минимизированные окна и скрытые окна (т.е. принадлежащие скрытым приложениям, например, с помощью cmd-h) всегда считаются находящимися в текущем пространстве
  • Эта функция отфильтровывает "окно" рабочего стола; используйте hs.window.desktop() для обращения к нему. (Заметьте, однако, что hs.application.get'Finder':allWindows() будет включать рабочий стол в возвращаемый список)
  • Помимо вышеупомянутых ограничений, эта функция вернёт все окна, как сообщает OSX, включая некоторые "окна", которых вы бы не ожидали: например, каждое окно Google Chrome (фактическое) имеет сопутствующее окно для своей строчки состояния; поэтому вы можете получить неожиданные результаты - в примере Chrome, вызов hs.window.focusWindowSouth() из окна Chrome приведет к "фокусировке" его строчки состояния, а следовательно, и к фактическому окну, что, по-видимому, приведет к ничтожному результату. Чтобы избежать таких сюрпризов, вы можете использовать модуль hs.window.filter, а более конкретно, стандартный модуль фильтрации окон (hs.window.filter.default), который отфильтровывает известные случаи не являющихся окнами
  • Некоторые окна не будут сообщаться OSX - например, элементы на разных пространствах или элементы, которые находятся в полноэкранном режиме
Источник extensions/window/window.lua строка 54
desktop
Подпись hs.window.desktop() -> hs.window object
Тип Функция
Описание

Возвращает "окно" рабочего стола

Параметры
  • Нет
Возвращает
  • Объект hs.window, представляющий рабочий стол, или nil, если Finder не запущен
Примечания
  • Рабочий стол принадлежит Finder.app: когда Finder является активным приложением, вы можете сфокусироваться на рабочем столе, переключаясь между окнами с помощью cmd-`
  • Окно рабочего стола не имеет идентификатора, имеет роль AXScrollArea и не имеет подроли
  • Рабочий стол отфильтровывается из hs.window.allWindows() (и последующих использования)
Источник extensions/window/window.lua строка 33
invisibleWindows
Подпись hs.window.invisibleWindows() -> list of hs.window objects
Тип Функция
Описание

Получение всех невидимых окон

Параметры
  • Нет
Возвращает
  • Список, содержащий объекты hs.window, представляющие все окна, которые не видны в соответствии с hs.window:isVisible().
Источник extensions/window/window.lua строка 139
<%%rest_of_the_translated_html%%> END_OF_DOCUMENT_MARKER
orderedWindows
Подпись hs.window.orderedWindows() -> list of hs.window objects
Тип Функция
Описание

Возвращает все видимые окна, от переднего к заднему

Параметры
  • Нет
Возвращает
  • Список hs.window объектов, представляющих все видимые окна, упорядоченные от переднего к заднему
Источник extensions/window/window.lua строка 173
setShadows
Подпись hs.window.setShadows(shadows)
Тип Функция
Описание

Включает/Отключает тени окон

Параметры
  • shadows - Булево значение, true для отображения теней окон, false для их скрытия
Возвращает
  • Нет
Примечания
  • Эта функция использует закрытый, не документированный API вызов OS X, поэтому её работоспособность не гарантируется в будущих версиях OS X
Источник extensions/window/libwindow.m строка 563
snapshotForID
Подпись hs.window.snapshotForID(ID [, keepTransparency]) -> hs.image-object
Тип Функция
Описание

Возвращает снимок окна, указанного по ID, как hs.image объект

Параметры
  • ID - Идентификатор окна, для которого необходимо сделать снимок.
  • keepTransparency - необязательное булево значение, указывающее, нужно ли сохранить значение альфа-канала (прозрачность) окна в результирующем изображении, или оно должно быть полностью непрозрачным (по умолчанию).
Возвращает
  • hs.image объект снимка окна или nil, если снимок создать не удалось
Примечания
  • См. также метод hs.window:snapshot()
  • Поскольку идентификатор окна не всегда может быть определён динамически, эта функция позволит вам предоставить ID окна, который был кэширован ранее.
Источник extensions/window/libwindow.m строка 589
timeout
Подпись hs.window.timeout(value) -> boolean
Тип Функция
Описание

Устанавливает значение таймаута, используемое в API доступности.

Параметры
  • value - Число секунд для нового значения таймаута.
Возвращает
  • true если операция выполнена успешно, иначе false если произошла ошибка.
Источник extensions/window/libwindow.m строка 65
visibleWindows
Подпись hs.window.visibleWindows() -> list of hs.window objects
Тип Функция
Описание

Получает все видимые окна

Параметры
  • Нет
Возвращает
  • Список hs.window объектов, представляющих все видимые окна в соответствии с hs.window:isVisible()
Источник extensions/window/window.lua строка 122

Конструкторы

find
Подпись hs.window.find(hint) -> hs.window object(s)
Тип Конструктор
Описание

Ищет окна

Параметры
  • hint - критерий поиска желаемого окна(ок); может быть: - числовой идентификатор в соответствии с hs.window:id() - строковый шаблон, который соответствует (через string.find) заголовку окна в соответствии с hs.window:title() (для удобства сопоставление выполняется для строчных строк)
Возвращает
  • одно или несколько объектов hs.window, соответствующих предоставленному критерию поиска, или nil если не найдено
Примечания
  • для удобства вы можете вызвать это как hs.window(hint)
  • см. также hs.window.get
  • для более сложных случаев использования и/или для лучшей производительности, если вы часто вызываете это, рассмотрите использование hs.window.filter

Использование:

-- by id
hs.window(8812):title() --> Hammerspoon Console
-- by title
hs.window'bash':application():name() --> Terminal
Источник extensions/window/window.lua строка 208
focusedWindow
Подпись hs.window.focusedWindow() -> window
Тип Конструктор
Описание

Возвращает окно, имеющее фокус клавиатуры/мыши

Параметры
  • Нет
Возвращает
  • Объект hs.window, представляющий текущее окно с фокусом
Источник extensions/window/libwindow.m строка 94
frontmostWindow
Подпись hs.window.frontmostWindow() -> hs.window object
Тип Конструктор
Описание

Возвращает окно с фокусом или, если ни одно окно не имеет фокуса, возвращает самое переднее

Параметры
  • Нет
Возвращает
  • Объект hs.window, представляющий самое переднее окно, или nil если нет видимых окон
Источник extensions/window/window.lua строка 748
get
Подпись hs.window.get(hint) -> hs.window object
Тип Конструктор
Описание

Получает конкретное окно

Параметры
  • hint - критерий поиска желаемого окна; может быть: - числовой идентификатор в соответствии с hs.window:id() - строка с названием окна в соответствии с hs.window:title()
Возвращает
  • первый объект hs.window, соответствующий предоставленному критерию поиска, или nil если не найдено
Примечания
  • см. также hs.window.find и hs.application:getWindow()
Источник extensions/window/window.lua строка 189

Методы

application
Подпись hs.window:application() -> app or nil
Тип Метод
Описание

Получает hs.application объект, к которому принадлежит окно

Параметры
  • Нет
Возвращает
  • Объект hs.application, представляющий приложение, которому принадлежит окно, или nil, если произошла ошибка
Источник extensions/window/libwindow.m строка 482
becomeMain
Подпись hs.window:becomeMain() -> window
Тип Метод
Описание

Делает окно основным окном своего приложения

Параметры
  • Нет
Возвращает
  • Объект hs.window
Примечания
  • Преобразование окна в основное не переключает фокус на приложение. См. hs.window.focus()
Источник extensions/window/libwindow.m строка 500
centerOnScreen
Подпись hs.window:centerOnScreen([screen][, ensureInScreenBounds][, duration]) --> hs.window object
Тип Метод
Описание

Центрирует окно на экране

Параметры
  • screen - (необязательно) Объект hs.screen или аргумент для hs.screen.find; если nil, использовать экран, на котором расположено окно
  • ensureInScreenBounds - (необязательно) если true, использовать setFrameInScreenBounds() для обеспечения того, чтобы результирующая рамка окна полностью находилась внутри экрана
  • duration - (необязательно) Количество секунд для анимации перехода. По умолчанию используется значение hs.window.animationDuration
Возвращает
  • Объект hs.window
Источник extensions/window/window.lua строка 864
close
Подпись hs.window:close() -> bool
Тип Метод
Описание

Закрывает окно

Параметры
  • Нет
Возвращает
  • True, если операция выполнена успешно, false - в противном случае
Источник extensions/window/libwindow.m строка 324
focus
Подпись hs.window:focus() -> hs.window object
Тип Метод
Описание

Фокусирует окно

Параметры
  • Нет
Возвращает
  • Объект hs.window
Источник extensions/window/window.lua строка 508
END_OF_DOCUMENT_MARKER
focusTab
Signature hs.window:focusTab(index) -> bool
Type Method
Description

Фокусирует вкладку в группе вкладок окна по индексу или последнюю вкладку, если индекс вне границ.

Parameters
  • index - Число, индекс вкладки для фокусировки (с 1)
Returns
  • true, если вкладка была успешно активирована, или false, если возникла проблема
Notes
  • Этот метод работает с группами вкладок документа и некоторыми вкладками приложений, такими как Chrome и Safari.
Source extensions/window/libwindow.m строка 341
focusWindowEast
Signature hs.window:focusWindowEast([candidateWindows[, frontmost[, strict]]]) -> boolean
Type Method
Description

Фокусирует ближайшее возможное окно к востоку (то есть справа).

Parameters
  • candidateWindows - (необязательно) список кандидатов среди окон; если nil, то все видимые окна к востоку являются кандидатами.
  • frontmost - (необязательно) логическое значение; если true, то фокусирует ближайшее окно, которое не перекрывается другим окном.
  • strict - (необязательно) логическое значение; если true, то рассматриваются только окна под углом между 45° и -45° по оси на восток.
Returns
  • true если окно было найдено и фокусировано, false в противном случае; nil если поиск не смог пройти
Notes
  • Если вы не передаёте candidateWindows, Hammerspoon будет каждый раз запрашивать список всех видимых окон, это может быть медленным и некоторые нежелательные «окна» могут быть включены (см. примечания к hs.window.allWindows()); рассмотрите использование эквивалентных методов в hs.window.filter вместо этого.
Source extensions/window/window.lua строка 783
focusWindowNorth
Signature hs.window:focusWindowNorth([candidateWindows[, frontmost[, strict]]]) -> boolean
Type Method
Description

Фокусирует ближайшее возможное окно к северу (то есть вверх).

Parameters
  • candidateWindows - (необязательно) список кандидатов среди окон; если nil, то все видимые окна к востоку являются кандидатами.
  • frontmost - (необязательно) логическое значение; если true, то фокусирует ближайшее окно, которое не перекрывается другим окном.
  • strict - (необязательно) логическое значение; если true, то рассматриваются только окна под углом между 45° и -45° по оси на восток.
Returns
  • true если окно было найдено и фокусировано, false в противном случае; nil если поиск не смог пройти
Notes
  • Если вы не передаёте candidateWindows, Hammerspoon будет каждый раз запрашивать список всех видимых окон, это может быть медленным и некоторые нежелательные «окна» могут быть включены (см. примечания к hs.window.allWindows()); рассмотрите использование эквивалентных методов в hs.window.filter вместо этого.
Source extensions/window/window.lua строка 823
focusWindowSouth
Signature hs.window:focusWindowSouth([candidateWindows[, frontmost[, strict]]]) -> boolean
Type Method
Description

Фокусирует ближайшее возможное окно к югу (то есть вниз).

Parameters
  • candidateWindows - (необязательно) список кандидатов среди окон; если nil, то все видимые окна к востоку являются кандидатами.
  • frontmost - (необязательно) логическое значение; если true, то фокусирует ближайшее окно, которое не перекрывается другим окном.
  • strict - (необязательно) логическое значение; если true, то рассматриваются только окна под углом между 45° и -45° по оси на восток.
Returns
  • true если окно было найдено и фокусировано, false в противном случае; nil если поиск не смог пройти
Notes
  • Если вы не передаёте candidateWindows, Hammerspoon будет каждый раз запрашивать список всех видимых окон, это может быть медленным и некоторые нежелательные «окна» могут быть включены (см. примечания к hs.window.allWindows()); рассмотрите использование эквивалентных методов в hs.window.filter вместо этого.
Source extensions/window/window.lua строка 843
focusWindowWest
Signature hs.window:focusWindowWest([candidateWindows[, frontmost[, strict]]]) -> boolean
Type Method
Description

Фокусирует ближайшее возможное окно к западу (то есть слева).

Parameters
  • candidateWindows - (необязательно) список кандидатов среди окон; если nil, то все видимые окна к востоку являются кандидатами.
  • frontmost - (необязательно) логическое значение; если true, то фокусирует ближайшее окно, которое не перекрывается другим окном.
  • strict - (необязательно) логическое значение; если true, то рассматриваются только окна под углом между 45° и -45° по оси на восток.
Returns
  • true если окно было найдено и фокусировано, false в противном случае; nil если поиск не смог пройти
Notes
  • Если вы не передаёте candidateWindows, Hammerspoon будет каждый раз запрашивать список всех видимых окон, это может быть медленным и некоторые нежелательные «окна» могут быть включены (см. примечания к hs.window.allWindows()); рассмотрите использование эквивалентных методов в hs.window.filter вместо этого.
Source extensions/window/window.lua строка 803
frame
Signature hs.window:frame() -> hs.geometry rect
Type Method
Description

Получает рамку окна в абсолютных координатах.

Parameters
  • None
Returns
  • Прямоугольник hs.geometry, содержащий координаты верхнего левого угла окна и его ширину и высоту.
Source extensions/window/window.lua строка 430
id
Signature hs.window:id() -> number or nil
Type Method
Description

Получает уникальный идентификатор окна.

Parameters
  • None
Returns
  • Число, содержащее уникальный идентификатор окна, или nil, если произошла ошибка.
Source extensions/window/libwindow.m строка 546
isFullScreen
Signature hs.window:isFullScreen() -> bool or nil
Type Method
Description

Получает состояние окна в полноэкранном режиме.

Parameters
  • None
Returns
  • True, если окно в полноэкранном режиме, false - если нет. Nil, если произошла ошибка.
Source extensions/window/libwindow.m строка 400
isMaximizable
Signature hs.window:isMaximizable() -> bool or nil
Type Method
Description

Определяет, можно ли увеличить окно.

Parameters
  • None
Returns
  • True, если окно можно увеличить, False - если нельзя, или nil, если произошла ошибка.
Source extensions/window/libwindow.m строка 296
isMinimized
Signature hs.window:isMinimized() -> bool
Type Method
Description

Получает состояние минимизированности окна.

Parameters
  • None
Returns
  • True, если окно минимизировано, иначе false.
Source extensions/window/libwindow.m строка 456
isStandard
Signature hs.window:isStandard() -> bool
Type Method
Description

Определяет, является ли окно стандартным окном.

Parameters
  • None
Returns
  • True, если окно стандартное, иначе false.
Notes
  • «Стандартное окно» означает, что это не необычное всплывающее окно, модальное диалоговое окно, плавающее окно и т. д.
Source extensions/window/libwindow.m строка 164
isVisible
Signature hs.window:isVisible() -> boolean
Type Method
Description

Определяет, является ли окно видимым (то есть не скрыто и не минимизировано).

Parameters
  • None
Returns
  • true если окно видимое, иначе false
Notes
  • Это не означает, что пользователь может увидеть окно — оно может быть скрыто другими окнами или находиться за пределами экрана.
Source extensions/window/window.lua строка 243
максимизировать
Подпись hs.window:maximize([duration]) -> hs.window object
Тип Метод
Описание

Максимизирует окно

Параметры
  • duration - (необязательно) Количество секунд для анимации перехода. По умолчанию используется значение hs.window.animationDuration
Возвращает
  • Объект hs.window
Примечания
  • Окно будет увеличено до максимального размера, не скрывая док-панель/меню
Источник extensions/window/window.lua строка 581
минимизировать
Подпись hs.window:minimize() -> window
Тип Метод
Описание

Минимизирует окно

Параметры
  • Нет
Возвращает
  • Объект hs.window
Примечания
  • Этот метод всегда выполняется с анимацией в соответствии с настройками вашей системы и не зависит от hs.window.animationDuration
Источник extensions/window/libwindow.m строка 417
переместить
Подпись hs.window:move(rect[, screen][, ensureInScreenBounds][, duration]) --> hs.window object
Тип Метод
Описание

Перемещает окно

Параметры
  • rect - Может быть: - точкой hs.geometry, или аргументом для её создания; перемещает экран на это смещение, сохраняя его размер постоянным; screen игнорируется - прямоугольником hs.geometry, или аргументом для его создания; устанавливает рамку окна на этот прямоугольник в абсолютных координатах; screen игнорируется - прямоугольником hs.geometry единиц, или аргументом для его создания; устанавливает рамку окна на этот прямоугольник относительно желаемого экрана; если screen имеет значение nil, используется экран, на котором находится окно в настоящее время
  • screen - (необязательно) Объект hs.screen или аргумент для hs.screen.find; допустимо только если rect является прямоугольником единиц
  • ensureInScreenBounds - (необязательно) если true, используйте setFrameInScreenBounds() для обеспечения того, чтобы полученная рамка окна полностью находилась внутри экрана окна
  • duration - (необязательно) Количество секунд для анимации перехода. По умолчанию используется значение hs.window.animationDuration
Возвращает
  • Объект hs.window
Источник extensions/window/window.lua строка 930
переместитьНаОдинЭкранВосток
...
переместитьНаОдинЭкранСевер
...
переместитьНаОдинЭкранЮг
...
переместитьНаОдинЭкранЗапад
...
переместитьНаЭкран
...
переместитьНаЕдиницу
...
другиеОкнаВсеЭкраны
...
другиеОкнаТотЖеЭкран
...
поднять
...
END_OF_DOCUMENT_MARKER
роль
Подпись hs.window:role() -> string
Тип Метод
Описание

Получает роль окна

Параметры
  • Нет
Возвращает
  • Строка, содержащая роль окна
Источник extensions/window/libwindow.m строка 147
экран
Подпись hs.window:screen() -> hs.screen object
Тип Метод
Описание

Получает экран, на котором находится окно

Параметры
  • Нет
Возвращает
  • Объект hs.screen , представляющий экран, содержащий окно.
Примечания
  • Хотя окна можно перетащить для отображения на нескольких экранах, часть окна исчезнет при отпускании мыши. Экран, возвращаемый этим методом, будет соответствовать части окна, которая останется видимой.
Источник extensions/window/window.lua строка 618
отправитьНазад
Подпись hs.window:sendToBack() -> hs.window object
Тип Метод
Описание

Отправляет окно назад

Параметры
  • Нет
Возвращает
  • Объект hs.window
Примечания
  • Из-за способа работы этого метода и ограничений OSX, вызов этого метода при большом количестве случайным образом перекрывающих (в отличие от аккуратно разложенных) окон может быть визуально резким и потребовать значительного времени для завершения. Поэтому, если вы не используете упорядоченные макеты или у вас много окон в целом, вам, вероятно, лучше использовать hs.application:hide() (или просто cmd-h)
  • Этот метод работает путем фокусировки всех перекрывающих окон позади данного окна, спереди назад. Если этот метод вызван для фокусированного окна, фокус переключится на верхнее окно под этим; в противном случае текущее фокусированное окно получит фокус после того, как данное окно будет отправлено назад.
Источник extensions/window/window.lua строка 539
установитьКадр
Подпись hs.window:setFrame(rect[, duration]) -> hs.window object
Тип Метод
Описание

Устанавливает кадр окна в абсолютных координатах

Параметры
  • rect - прямоугольник hs.geometry или аргумент конструктора, описывающий кадр, который должен быть применен к окну
  • duration - (необязательно) Количество секунд для анимации перехода. По умолчанию используется значение hs.window.animationDuration
Возвращает
  • Объект hs.window
Источник extensions/window/window.lua строка 368
установитьКадрВГраницахЭкрана
Подпись hs.window:setFrameInScreenBounds([rect][, duration]) -> hs.window object
Тип Метод
Описание

Устанавливает кадр окна в абсолютных координатах, возможно, скорректированный для обеспечения его полного расположения внутри экрана

Параметры
  • rect - прямоугольник hs.geometry или аргумент конструктора, описывающий кадр, который должен быть применён к окну; если опущен, будет использован текущий кадр окна
  • duration - (необязательно) Количество секунд для анимации перехода. По умолчанию используется значение hs.window.animationDuration
Возвращает
  • Объект hs.window
Источник extensions/window/window.lua строка 412
установитьКадрСОбходнымиПутями
Подпись hs.window:setFrameWithWorkarounds(rect[, duration]) -> hs.window object
Тип Метод
Описание

Устанавливает кадр окна в абсолютных координатах, используя дополнительные обходные пути, описанные в hs.window.setFrameCorrectness

Параметры
  • rect - прямоугольник hs.geometry или аргумент конструктора, описывающий кадр, который должен быть применен к окну
  • duration - (необязательно) Количество секунд для анимации перехода. По умолчанию используется значение hs.window.animationDuration
Возвращает
  • Объект hs.window
Источник extensions/window/window.lua строка 380
установитьПолноэкранныйРежим
Подпись hs.window:setFullScreen(fullscreen) -> window
Тип Метод
Описание

Устанавливает полноэкранный режим окна

Параметры
  • fullscreen - логическое значение, true, если окно должно быть полноэкранным, false — если нет
Возвращает
  • Объект hs.window
Источник extensions/window/libwindow.m строка 382
изменитьРазмер
Подпись hs.window:setSize(size) -> window
Тип Метод
Описание

Изменяет размер окна

Параметры
  • size - таблица размеров, содержащая ширину и высоту, до которых должно быть изменено окно
Возвращает
  • Объект hs.window
Источник extensions/window/libwindow.m строка 239
установитьЛевыйВерхнийУгол
Подпись hs.window:setTopLeft(point) -> window
Тип Метод
Описание

Перемещает окно в заданную точку

Параметры
  • point - таблица координат, содержащая абсолютные координаты, в которые должно быть перемещено окно
Возвращает
  • Объект hs.window
Источник extensions/window/libwindow.m строка 218
размер
Подпись hs.window:size() -> size
Тип Метод
Описание

Получает размер окна

Параметры
  • Нет
Возвращает
  • Таблица размеров, содержащая ширину и высоту окна
Источник extensions/window/libwindow.m строка 201
снимок
Подпись hs.window:snapshot([keepTransparency]) -> hs.image-object
Тип Метод
Описание

Возвращает снимок окна как объект hs.image

Параметры
  • keepTransparency - необязательное булево значение, указывающее, следует ли сохранять значение альфа-канала окна (прозрачность) на полученном изображении или если оно должно быть полностью непрозрачным (по умолчанию).
Возвращает
  • Объект hs.image снимка окна или nil, если создание снимка невозможно
Примечания
  • См. также функцию hs.window.snapshotForID()
Источник extensions/window/libwindow.m строка 611
подроль
Подпись hs.window:subrole() -> string
Тип Метод
Описание

Получает подроль окна

Параметры
  • Нет
Возвращает
  • Строка, содержащая подроль окна
Примечания
  • Это обычно помогает определить, является ли окно особым типом окна, например, модальным окном или плавающим окном
Источник extensions/window/libwindow.m строка 127
количествоВкладок
Подпись hs.window:tabCount() -> number or nil
Тип Метод
Описание

Получает количество вкладок в окне

Параметры
  • Нет
Возвращает
  • Число, содержащее количество вкладок, или nil, если произошла ошибка
Примечания
  • Предназначен для использования с методом focusTab, если он возвращает число, то focusTab может переключаться между указанным количеством вкладок.
Источник extensions/window/libwindow.m строка 362
заголовок
Подпись hs.window:title() -> string
Тип Метод
Описание

Получает заголовок окна

Параметры
  • Нет
Возвращает
  • Строка, содержащая заголовок окна
Источник extensions/window/libwindow.m строка 110
END_OF_DOCUMENT_MARKER
toggleFullScreen
Подпись hs.window:toggleFullScreen() -> hs.window object
Тип Метод
Описание

Переключает полноэкранный режим окна

Параметры
  • Нет
Возвращаемое значение
  • Объект hs.window
Примечания
  • Не все окна поддерживают полноэкранный режим
Источник extensions/window/window.lua строка 597
toggleZoom
Подпись hs.window:toggleZoom() -> window
Тип Метод
Описание

Переключает режим масштабирования окна (это эквивалентно нажатию на зеленую кнопку максимизации/полноэкранного режима в левом верхнем углу окна)

Параметры
  • Нет
Возвращаемое значение
  • Объект hs.window
Источник extensions/window/libwindow.m строка 257
topLeft
Подпись hs.window:topLeft() -> point
Тип Метод
Описание

Получает абсолютные координаты левого верхнего угла окна

Параметры
  • Нет
Возвращаемое значение
  • Таблица точек, содержащая абсолютные координаты левого верхнего угла окна
Источник extensions/window/libwindow.m строка 184
unminimize
Подпись hs.window:unminimize() -> window
Тип Метод
Описание

Выводит окно из минимизированного состояния

Параметры
  • Нет
Возвращаемое значение
  • Объект hs.window
Источник extensions/window/libwindow.m строка 438
windowsToEast
Подпись hs.window:windowsToEast([candidateWindows[, frontmost[, strict]]]) -> list of hs.window objects
Тип Метод
Описание

Получает все окна, расположенные к востоку от текущего окна

Параметры
  • candidateWindows - (необязательно) список кандидатов среди окон; если nil, кандидатами будут все видимые окна к востоку.
  • frontmost - (необязательно) булево значение, если true, неокклюдированные окна будут размещены перед окклюдированными в списке результатов.
  • strict - (необязательно) булево значение, если true, будут учитываться только окна под углом между 45° и -45° по оси на восток
Возвращаемое значение
  • Список объектов hs.window, представляющих все окна, расположенные к востоку (справа) от текущего окна, в порядке возрастания расстояния
Примечания
  • Если вы не передаете candidateWindows, Hammerspoon будет запрашивать список всех видимых окон каждый раз при вызове этого метода; это может быть медленным, и могут быть включены некоторые нежелательные "окна" (см. примечания к hs.window.allWindows()); рассмотрите возможность использования эквивалентных методов в hs.window.filter вместо этого
Источник extensions/window/window.lua строка 688
windowsToNorth
Подпись hs.window:windowsToNorth([candidateWindows[, frontmost[, strict]]]) -> list of hs.window objects
Тип Метод
Описание

Получает все окна, расположенные к северу от текущего окна

Параметры
  • candidateWindows - (необязательно) список кандидатов среди окон; если nil, кандидатами будут все видимые окна к северу.
  • frontmost - (необязательно) булево значение, если true, неокклюдированные окна будут размещены перед окклюдированными в списке результатов.
  • strict - (необязательно) булево значение, если true, будут учитываться только окна под углом между 45° и -45° по оси на север
Возвращаемое значение
  • Список объектов hs.window, представляющих все окна, расположенные к северу (вверх) от текущего окна, в порядке возрастания расстояния
Примечания
  • Если вы не передаете candidateWindows, Hammerspoon будет запрашивать список всех видимых окон каждый раз при вызове этого метода; это может быть медленным, и могут быть включены некоторые нежелательные "окна" (см. примечания к hs.window.allWindows()); рассмотрите возможность использования эквивалентных методов в hs.window.filter вместо этого
Источник extensions/window/window.lua строка 718
windowsToSouth
Подпись hs.window:windowsToSouth([candidateWindows[, frontmost[, strict]]]) -> list of hs.window objects
Тип Метод
Описание

Получает все окна, расположенные к югу от текущего окна

Параметры
  • candidateWindows - (необязательно) список кандидатов среди окон; если nil, кандидатами будут все видимые окна к югу.
  • frontmost - (необязательно) булево значение, если true, неокклюдированные окна будут размещены перед окклюдированными в списке результатов.
  • strict - (необязательно) булево значение, если true, будут учитываться только окна под углом между 45° и -45° по оси на юг
Возвращаемое значение
  • Список объектов hs.window, представляющих все окна, расположенные к югу (вниз) от текущего окна, в порядке возрастания расстояния
Примечания
  • Если вы не передаете candidateWindows, Hammerspoon будет запрашивать список всех видимых окон каждый раз при вызове этого метода; это может быть медленным, и могут быть включены некоторые нежелательные "окна" (см. примечания к hs.window.allWindows()); рассмотрите возможность использования эквивалентных методов в hs.window.filter вместо этого
Источник extensions/window/window.lua строка 733
windowsToWest
Подпись hs.window:windowsToWest([candidateWindows[, frontmost[, strict]]]) -> list of hs.window objects
Тип Метод
Описание

Получает все окна, расположенные к западу от текущего окна

Параметры
  • candidateWindows - (необязательно) список кандидатов среди окон; если nil, кандидатами будут все видимые окна к западу.
  • frontmost - (необязательно) булево значение, если true, неокклюдированные окна будут размещены перед окклюдированными в списке результатов.
  • strict - (необязательно) булево значение, если true, будут учитываться только окна под углом между 45° и -45° по оси на запад
Возвращаемое значение
  • Список объектов hs.window, представляющих все окна, расположенные к западу (слева) от текущего окна, в порядке возрастания расстояния
Примечания
  • Если вы не передаете candidateWindows, Hammerspoon будет запрашивать список всех видимых окон каждый раз при вызове этого метода; это может быть медленным, и могут быть включены некоторые нежелательные "окна" (см. примечания к hs.window.allWindows()); рассмотрите возможность использования эквивалентных методов в hs.window.filter вместо этого
Источник extensions/window/window.lua строка 703
zoomButtonRect
Подпись hs.window:zoomButtonRect() -> rect-table or nil
Тип Метод
Описание

Получает прямоугольник-таблицу для расположения кнопки масштабирования (зеленая кнопка, обычно в левом верхнем углу окна)

Параметры
  • Нет
Возвращаемое значение
  • Прямоугольник-таблица, содержащая рамку области кнопки масштабирования, или nil в случае ошибки
Примечания
  • Координаты в таблице прямоугольника (т.е. значения x и y) указаны в абсолютных координатах, а не относительно окна, к которому принадлежит кнопка, или экрана, на котором расположено окно
  • Хотя не идеально, этот метод может предоставить полезный способ найти область titlebar, подходящую для имитации событий щелчка мыши, с помощью hs.eventtap
Источник extensions/window/libwindow.m строка 275

© 2014–2017 Hammerspoon contributors
Licensed under the MIT License.
https://www.hammerspoon.org/docs/hs.window.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API