Files
luk/maildir_gtd/actions/previous.py
2025-05-08 12:03:38 -06:00

21 lines
841 B
Python

def action_previous(app) -> None:
"""Show the previous email message by finding the next lower ID from the list of envelope IDs."""
try:
if (app.reload_needed):
app.action_fetch_list()
ids = sorted((int(envelope['id']) for envelope in app.all_envelopes), reverse=True)
for envelope_id in ids:
if envelope_id < int(app.current_message_id):
app.current_message_id = envelope_id
app.show_message(app.current_message_id)
return
app.show_status("No older messages found.", severity="warning")
app.action_oldest()
else:
app.show_status("Failed to fetch envelope list.", severity="error")
except Exception as e:
app.show_status(f"Error: {e}", severity="error")