Files
luk/maildir_gtd/actions/next.py
2025-05-08 12:09:43 -06:00

18 lines
752 B
Python

async def action_next(app) -> None:
"""Show the next email message by finding the next higher 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)
for envelope_id in ids:
if envelope_id > int(app.current_message_id):
app.show_message(envelope_id)
return
app.show_status("No newer messages found.", severity="warning")
app.action_newest()
else:
app.show_status("Failed to fetch envelope list.", severity="error")
except Exception as e:
app.show_status(f"Error: {e}", severity="error")