2.7 KiB
2.7 KiB
UI Design Review (2026-04-23)
Reviewed against requirements/ui_design.md.
Summary
The plugin has improved control alignment/spacing and better internal scrolling on key pages (notably Review Recipients and Download PDF), but several global UI design requirements are still only partially implemented.
Implemented / Largely Implemented
- WordPress admin-page navigation model is used across the plugin.
- Destructive actions use confirmation and red-link/button treatment in most CRUD lists.
- Modal editors generally use
Save/Quitand preserve draft state on validation failure. - Control label/control alignment and spacing were improved on pages with filter/selection controls.
- Long-running feedback is present for Download PDF (progress panel shown on submit).
- Review Recipients provides:
- full-page recipient inspection
- filter across fields
- sort-by + direction controls
- internal scroll region with sticky header row
- row highlight selection.
Gaps
- Standard Page Region Consistency (global)
- Requirement expects consistent context/information/statistics/actions/data pane structure where applicable.
- Current pages use ad-hoc inline layouts with inconsistent region structure and styling.
- Multi-pane data area splitters
- Draggable splitters with persisted ratios are not implemented.
- No per-page split-ratio persistence exists.
- Default table behavior: column resizing + persistence
- User-resizable column widths (including Firefox) are not implemented as a shared table behavior.
- Persisted widths per table are not implemented.
- Resize stability requirements
- Because column-resize behavior is not implemented, the associated non-reload stability guarantees are also not yet implemented/tested.
- Long-operation progress coverage
- Download PDF has progress feedback, but this is not consistently applied to all operations that may exceed 1s (for example some validate/preview/run flows depending on dataset size).
- Horizontal scrolling policy
- Requirement says avoid horizontal scrolling when content width can be adjusted.
- Review Recipients intentionally uses horizontal scroll for wide datasets; this is acceptable for usability, but should be documented as an explicit page-level exception to avoid ambiguity.
Recommended Next Steps
- Introduce a shared admin UI layout helper (PHP render helpers + shared CSS class contract) for pane regions.
- Introduce a shared table component for:
- edge-drag resize
- width persistence
- sort dropdown + direction wiring where needed.
- Add a reusable progress-status helper for long-running form/API actions.
- Add explicit requirement note for Review Recipients horizontal-scroll exception.