Implement window kill support for really bad keywords.
This commit is contained in:
@@ -8,6 +8,7 @@ from pydantic import BaseModel
|
||||
class Block(BaseModel):
|
||||
name: str
|
||||
keywords: List[str]
|
||||
kill: bool = False
|
||||
|
||||
|
||||
class Config(BaseModel):
|
||||
|
||||
@@ -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] "
|
||||
|
||||
Reference in New Issue
Block a user