Implement window kill support for really bad keywords.

main
Felix Martin 2022-07-23 12:46:14 -04:00
parent c82c52910c
commit 2e4856f0e5
2 changed files with 7 additions and 1 deletions

View File

@ -8,6 +8,7 @@ from pydantic import BaseModel
class Block(BaseModel):
name: str
keywords: List[str]
kill: bool = False
class Config(BaseModel):

View File

@ -139,7 +139,12 @@ def window_is_blocked(config: Config, silent: bool = False) -> bool:
return False
for b in blackblocks:
for k in b.keywords:
if k in window.keywords:
if k in window.keywords and b.kill:
window.kill()
xwindow.notify(f"Kill for {k} on {b.name}.")
logging.warning(f"Kill for [red]{k}[/red] on [red]{b.name}[/red].")
return True
elif k in window.keywords:
if not silent:
xwindow.notify(f"{window.name[:30]} blocked by {b.name}.")
logging.warning(f"[red]{window.name[:50]}[/red] "