Skip to content

hs.window.filter.new(nil) - first subscribe: 30s delay #3670

@muescha

Description

@muescha

When

  • I have a script with:
     logger.i("Before hs.window.filter.new(nil)")
     allwindows = hs.window.filter.new(nil)
     logger.i("After hs.window.filter.new(nil)")
     
     --debugInfo(allwindows)
     logger.i("before allwindows:subscribe")
     --allwindows:subscribe(hs.window.filter.events, redrawBorder)
     allwindows:subscribe(hs.window.filter.windowCreated, redrawBorder)
     logger.i("middle allwindows:subscribe")
     allwindows:subscribe(hs.window.filter.windowDestroyed, redrawBorder)
     logger.i("middle allwindows:subscribe")
     allwindows:subscribe(hs.window.filter.windowFocused, redrawBorder)
     logger.i("middle allwindows:subscribe")
     allwindows:subscribe(hs.window.filter.windowMoved, redrawBorder)
     logger.i("middle allwindows:subscribe")
     allwindows:subscribe(hs.window.filter.windowUnfocused, redrawBorder)
     logger.i("after allwindows:subscribe")

What I see

  • when chrome has some more tabs. (maybe more than 50tabs), then the delay between the first and the second subscribe is about 40s, the following subscribes all without delay
  • if there is a small amount of tabs then there is not that big dealy
  • if there are more tabs (>400) there is no significant longer delay

Debug

2024-08-14 20:16:56:          AppBorders: Before hs.window.filter.new(nil)
2024-08-14 20:16:56:          AppBorders: After hs.window.filter.new(nil)
2024-08-14 20:16:56:          AppBorders: before allwindows:subscribe
2024-08-14 20:17:33: 20:17:33 AppBorders: middle allwindows:subscribe
2024-08-14 20:17:33:          AppBorders: middle allwindows:subscribe
2024-08-14 20:17:33:          AppBorders: middle allwindows:subscribe
2024-08-14 20:17:33:          AppBorders: middle allwindows:subscribe
2024-08-14 20:17:33:          AppBorders: after allwindows:subscribe```

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions