The "hasNoWindows" pseudo-event triggers after every windowRejected event (rejection/destruction) so long as the filter previously had an event that set "hasWindow" to true.
Based on the description
Pseudo-event for hs.window.filter:subscribe(): the windowfilter now rejects all windows
I'm pretty sure it should only fire when there are 0 windows remaining that match the filter.
The "hasNoWindows" pseudo-event triggers after every windowRejected event (rejection/destruction) so long as the filter previously had an event that set "hasWindow" to true.
Based on the description
I'm pretty sure it should only fire when there are 0 windows remaining that match the filter.