Repository navigation
feat: revamp NetworkMock operation sheet UX - #157
MaxMichel2 wants to merge 9 commits into
Conversation
…eview/sequence pages
| val lines = remember(key1 = response.content, key2 = response.contentType) { | ||
| response.displayContent().lines() | ||
| } |
There was a problem hiding this comment.
Large previews create every row
Pretty-printing turns a compact JSON array into thousands of lines, but ResponseContentPane still creates every DiffLineRow at once inside a scrolling Column. Opening a large response, including the fallback for oversized comparisons, builds and measures off-screen rows before showing the preview. This adds substantial UI work and can make the page stall. Use a LazyColumn so only visible rows are created.
Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!
There was a problem hiding this comment.
Addressed in 35c0740: single/split and inline previews now use finite-width LazyColumn rows inside one pane-level horizontal scroller. Logical lines remain unwrapped and gutters scroll with all rows. Device tests cover 5,000-line lazy composition, synchronized horizontal scrolling, and independent split panes; focused preview tests and Detekt pass.
Summary
Validation
Follow-ups
#154 runtime overrides, #155 custom mock editor, #156 network logger.
History
Five original checkpoint commits in order, followed by four requested iteration commits.
The PR appears safe to merge, with a non-blocking performance concern for large formatted previews.
Findings
Summary
This PR replaces the NetworkMock operation sheet with fixed-height Picker, Preview, and Sequence pages.
Diagram
%%{init: {'theme': 'neutral'}}%% flowchart LR List[Operation list] --> Picker[Picker] Picker -->|Eye| Preview[Preview] Preview -->|Compare with| Compare[Compare] Compare -->|Back| Picker Preview -->|Back| Picker Picker -->|Build or Edit| Sequence[Sequence draft] Sequence -->|Cancel or Back| Picker Sequence -->|Save| Apply[Apply choice and close] Picker -->|Select response or failure| ApplyReviews (1) · Last reviewed commit: ":memo: Document NetworkMock sheet revamp" · Reviewed by Greptile