···6061 local matched = false
62 for _, p in pairs(spoonfish.apps_to_watch) do
000063 if not p:find("^%^") then
64 p = spoonfish.escape_pattern(p)
65 end
···67 matched = true
68 break
69 end
70- if matched then
000000000071 break
72 end
73 end
74 if not matched then
0075 return
76 end
77···9899-- watch a hs.window object to be notified when it is closed or moved
100spoonfish.watch_hswindow = function(hswin)
101- if not hswin:isStandard() then
102- spoonfish.log.i(" ignoring non-standard window " .. hswin:title())
103 return
104 end
105
···6061 local matched = false
62 for _, p in pairs(spoonfish.apps_to_watch) do
63+ if p == "" then
64+ matched = true
65+ break
66+ end
67 if not p:find("^%^") then
68 p = spoonfish.escape_pattern(p)
69 end
···71 matched = true
72 break
73 end
74+ end
75+ for _, p in pairs(spoonfish.apps_to_ignore) do
76+ if p == "" then
77+ matched = false
78+ break
79+ end
80+ if not p:find("^%^") then
81+ p = spoonfish.escape_pattern(p)
82+ end
83+ if hsapp:title():find(p) then
84+ matched = false
85 break
86 end
87 end
88 if not matched then
89+ spoonfish.log.i("ignoring app[" .. hsapp:pid() .. "] " .. hsapp:title() ..
90+ " (" .. hsapp:name() .. ")")
91 return
92 end
93···114115-- watch a hs.window object to be notified when it is closed or moved
116spoonfish.watch_hswindow = function(hswin)
117+ if hswin == nil or not hswin:isStandard() then
0118 return
119 end
120