Complete Phase 1: parallel sync, IPC, theme colors, lazy CLI loading

- Sync: Parallelize message downloads with asyncio.gather (batch size 5)
- Sync: Increase HTTP semaphore from 2 to 5 concurrent requests
- Sync: Add IPC notifications to sync daemon after sync completes
- Mail: Replace all hardcoded RGB colors with theme variables
- Mail: Remove envelope icon/checkbox gap (padding cleanup)
- Mail: Add IPC listener for refresh notifications from sync
- Calendar: Style current time line with error color and solid line
- Tasks: Fix table not displaying (CSS grid to horizontal layout)
- CLI: Implement lazy command loading for faster startup (~12s to ~0.3s)
- Add PROJECT_PLAN.md with full improvement roadmap
- Add src/utils/ipc.py for Unix socket cross-app communication
This commit is contained in:
Bendt
2025-12-19 10:29:53 -05:00
parent a41d59e529
commit d4226caf0a
11 changed files with 1096 additions and 103 deletions

View File

@@ -46,24 +46,20 @@ class TasksApp(App):
CSS = """
Screen {
layout: grid;
grid-size: 2;
grid-columns: auto 1fr;
grid-rows: auto 1fr auto auto;
layout: horizontal;
}
Header {
column-span: 2;
dock: top;
}
Footer {
column-span: 2;
dock: bottom;
}
#sidebar {
width: 28;
height: 100%;
row-span: 1;
}
#sidebar.hidden {
@@ -116,7 +112,6 @@ class TasksApp(App):
background: $surface;
color: $text-muted;
padding: 0 1;
column-span: 2;
}
#detail-pane {
@@ -124,7 +119,6 @@ class TasksApp(App):
height: 50%;
border-top: solid $primary;
background: $surface;
column-span: 2;
}
#detail-pane.hidden {
@@ -154,7 +148,6 @@ class TasksApp(App):
border-top: solid $primary;
padding: 1;
background: $surface;
column-span: 2;
}
#notes-pane.hidden {