neloguje se to někam? Případně by šlo logovat aktivní okno xdotoolem.
import subprocess
import time
import datetime
def window_name():
cmd = 'xdotool getwindowname `xdotool getactivewindow`'
return subprocess.check_output(cmd, shell=True).decode().strip()
if __name__ == '__main__':
prev = None
while True:
window = window_name()
if prev != window:
print(datetime.datetime.now(), window)
prev = window
time.sleep(1)
Raději bych to řešil přímo na bázi Thunderbirdu (TB), protože ještě upřesním - u psaní mailu je sice aktivní okno Thunderbirdu nebo té konkrétní zprávy, ale pokud ke zprávě budu připojovat přílohu, např. nějaký další dokument (psaný, tabulku, PDF, obrázky nebo jen budu hledat podklady pro odpověď třeba na internetu), tak vlastně trávím čas i přípravou té přílohy, pak je aktivní jiné okno. Ideální funkčnost by byla: kliknu napsat mail, na pozadí v TB se ví, kdy se otevřelo okno se zprávou, dám odeslat, mail se uloží do odeslaných a pokud budu potřebovat, tak si někde zobrazím čas strávený odpovědí.