Skip to content

fix: model settings dialog, close #1716#1718

Merged
looplj merged 1 commit into
unstablefrom
dev-tmp
May 28, 2026
Merged

fix: model settings dialog, close #1716#1718
looplj merged 1 commit into
unstablefrom
dev-tmp

Conversation

@looplj

@looplj looplj commented May 25, 2026

Copy link
Copy Markdown
Owner

@devin-ai-integration devin-ai-integration Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ Devin Review: No Issues Found

Devin Review analyzed this PR and found no potential bugs to report.

View in Devin Review to see 1 additional finding.

Open in Devin Review

@greptile-apps

greptile-apps Bot commented May 25, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

This PR fixes the model settings dialog so it no longer overflows the viewport on smaller screens or when content is tall. The dialog is now capped at 90% of the viewport height with the header and footer pinned, and the settings cards scroll within the remaining space.

  • DialogContent gains flex flex-col max-h-[90vh] overflow-hidden; DialogHeader and DialogFooter gain shrink-0 to stay fixed while the settings list scrolls.
  • The settings content area becomes flex-1 min-h-0 overflow-y-auto, which is the standard Tailwind pattern for a scrollable inner region inside a height-bounded flex container.

Confidence Score: 5/5

Safe to merge — the change is a self-contained layout fix with no logic, data, or API impact.

The diff only adds Tailwind utility classes to make the dialog scrollable and height-bounded. No state management, data fetching, or business logic is touched, and the chosen flex-column pattern is a well-established approach for this type of constraint.

No files require special attention.

Important Files Changed

Filename Overview
frontend/src/features/models/components/models-settings-dialog.tsx Makes the dialog height-bounded (max-h-[90vh]) and scrollable by converting DialogContent to a flex-column layout, pinning the header/footer with shrink-0, and giving the content area flex-1 + overflow-y-auto. Loading state spinner lacks flex-1 (pre-existing note from prior review).

Flowchart

%%{init: {'theme': 'neutral'}}%%
flowchart TD
    A["DialogContent\nflex flex-col max-h-[90vh] overflow-hidden"] --> B["DialogHeader\nshrink-0"]
    A --> C{isLoading?}
    C -- "true" --> D["Spinner div\nflex items-center justify-center py-12"]
    C -- "false" --> E["Content div\nflex-1 min-h-0 overflow-y-auto\n(scrolls within remaining space)"]
    E --> F[Card: Fallback]
    E --> G[Card: Query All Channel Models]
    E --> H[Card: Blacklist Regex]
    E --> I[Card: Default Model API]
    E --> J[Card: Auto Reasoning Effort]
    A --> K["DialogFooter\nshrink-0"]
    K --> L[Cancel Button]
    K --> M[Save Button]
Loading

Reviews (2): Last reviewed commit: "fix: model settings dialog, close #1716" | Re-trigger Greptile

@looplj looplj merged commit a240989 into unstable May 28, 2026
4 checks passed
junjiangao pushed a commit to junjiangao/axonhub that referenced this pull request May 30, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant