Skip to content

Remove connection profile marker icons - #87

Merged
GordonBeeming merged 3 commits into
mainfrom
gb/remove-connection-profile-markers
Jul 28, 2026
Merged

GordonBeeming merged 3 commits into
mainfrom
gb/remove-connection-profile-markers

Conversation

@GordonBeeming

@GordonBeeming GordonBeeming commented Jul 28, 2026 •

Copy link
Copy Markdown
Owner

Summary

  • Remove the circular connection-profile marker from every surface.
  • Use each connection's background and foreground colours directly on query and results tabs.
  • Keep the colour picker preview as a fully styled row and update the UI coverage for the marker-free design.

Test plan

  • npm run test:frontend
  • npm run build
  • dotnet test sidecar/Ssmsx.Sidecar.slnx --filter "Category!=Integration"
  • cargo test --manifest-path src-tauri/Cargo.toml
  • Checked the connection dialog and expanded colour picker in the native macOS app.

Summary by CodeRabbit

  • UI Improvements

    • Removed color-marker icons from connection lists, query tabs, status bars, and profile selectors.
    • Color profiles now apply directly to tab backgrounds, text, borders, and controls for a cleaner appearance.
    • Simplified connection and database selection displays while retaining existing functionality.
  • Tests

    • Updated interface checks to verify direct color styling and confirm color-marker icons are no longer displayed.

@coderabbitai

coderabbitai Bot commented Jul 28, 2026 •

Copy link
Copy Markdown

Review Change Stack

Warning

Review limit reached

@GordonBeeming, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 33 minutes

Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available.
You're only billed for reviews past your plan's rate limits ($0.25/file).

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews.

How do review limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 2c225670-480c-4698-8ced-821e2550d984

📥 Commits

Reviewing files that changed from the base of the PR and between 32a1127 and ff8a100.

📒 Files selected for processing (2)
  • src/features/query/components/QueryResultsTable.tsx
  • src/shared/components/ColorProfileCombobox.tsx
📝 Walkthrough

Walkthrough

Color profile marker components are removed from connection, explorer, query, and combobox interfaces. Query tabs and combobox entries retain profile-based background and foreground styling, while tests now verify direct styles and marker absence.

Changes

Color profile UI simplification

Layer / File(s) Summary
Remove markers from connection surfaces
src/app/App.tsx, src/features/explorer/components/TreeNode.tsx, src/features/query/components/QueryStatusBar.tsx, src/features/query/components/QueryTargetBar.tsx
Connection and navigation components no longer resolve or render color profile markers.
Apply profile colors directly to query tabs
src/features/query/components/QueryResultsTable.tsx, src/features/query/components/QueryTabBar.tsx, tests/frontend/queryUi.test.tsx
Query tabs use profile background, foreground, and active-border colors directly; tests assert direct styles and no marker elements.
Simplify profile combobox rendering
src/shared/components/ColorProfileCombobox.tsx, tests/frontend/connectionAppearanceDom.test.tsx
Combobox selections and options retain profile styling without markers, with updated DOM and style assertions.
Remove the marker component
src/shared/components/ColorProfileMarker.tsx
The exported ColorProfileMarker component is deleted.

Estimated code review effort: 3 (Moderate) | ~20 minutes

Possibly related PRs

  • GordonBeeming/SSMSx#84: Introduces the color profile marker and related profile-based theming in the same UI surfaces.

Suggested reviewers: copilot

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately summarizes the main change: removing connection profile marker icons across the UI.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch gb/remove-connection-profile-markers

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@GordonBeeming

Copy link
Copy Markdown
Owner Author

@coderabbitai review

@coderabbitai

coderabbitai Bot commented Jul 28, 2026 •

Copy link
Copy Markdown
✅ Action performed

Review finished.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull request overview

This PR removes the circular connection-profile marker icon across the frontend UI and instead applies each connection’s background/foreground colours directly to query and results tabs, updating DOM/UI tests to match the marker-free design.

Changes:

  • Removed ColorProfileMarker and its usage across query, explorer, app header, and profile picker surfaces.
  • Applied connection profile background/foreground colours directly to query tabs and query-results tabs.
  • Updated frontend DOM/UI tests to assert marker removal and verify tab/combobox styling.

Reviewed changes

Copilot reviewed 10 out of 10 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
tests/frontend/queryUi.test.tsx Updates assertions from marker presence to full tab background/foreground styling.
tests/frontend/connectionAppearanceDom.test.tsx Adds styling expectations for the combobox and verifies markers are not rendered.
src/shared/components/ColorProfileMarker.tsx Deletes the marker component implementation.
src/shared/components/ColorProfileCombobox.tsx Removes marker rendering and keeps preview/options as fully styled rows.
src/features/query/components/QueryTargetBar.tsx Removes marker from the query target bar.
src/features/query/components/QueryTabBar.tsx Styles query tabs using profile background/foreground instead of a marker.
src/features/query/components/QueryStatusBar.tsx Removes marker from the query status bar.
src/features/query/components/QueryResultsTable.tsx Styles results/messages tabs using profile background/foreground instead of a marker.
src/features/explorer/components/TreeNode.tsx Removes the server-node marker indicator in the explorer tree.
src/app/App.tsx Removes marker from the active-connection display in the app shell.
Comments suppressed due to low confidence (1)

src/features/query/components/QueryResultsTable.tsx:518

  • Same issue as the results-set tabs: when profile is provided, the inline style sets color, so text-text-secondary hover:text-text-primary in className won’t have any effect. Conditionally apply those classes only when no profile is present to avoid dead/contradictory styling.
              className={`inline-flex items-center px-3 py-1 ${activeTab === "messages" ? "border-b-2 border-accent text-text-primary" : "text-text-secondary hover:text-text-primary"}`}

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread src/features/query/components/QueryResultsTable.tsx Outdated

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🧹 Nitpick comments (1)
tests/frontend/connectionAppearanceDom.test.tsx (1)

211-217: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick win

Assert the option foreground color too.

The new test checks the Blue option’s background but not its text color. Add an assertion for style.color so both preserved profile styles are covered.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@tests/frontend/connectionAppearanceDom.test.tsx` around lines 211 - 217,
Extend the test around the Blue option in the combobox interaction to also
assert its foreground color via style.color. Keep the existing background-color
assertion and use the expected preserved Blue profile text color.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@src/shared/components/ColorProfileCombobox.tsx`:
- Around line 178-180: Update the selected profile rendering in
ColorProfileCombobox so the flex item itself applies the truncation and overflow
behavior, rather than leaving truncate only on the nested inline span. Preserve
the existing “No profiles” fallback and ensure long profile names ellipsize
without overlapping the dropdown arrow.

---

Nitpick comments:
In `@tests/frontend/connectionAppearanceDom.test.tsx`:
- Around line 211-217: Extend the test around the Blue option in the combobox
interaction to also assert its foreground color via style.color. Keep the
existing background-color assertion and use the expected preserved Blue profile
text color.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 20eee15a-b07c-4cd1-a565-ef662f8afdc9

📥 Commits

Reviewing files that changed from the base of the PR and between 9c2600e and 32a1127.

📒 Files selected for processing (10)
  • src/app/App.tsx
  • src/features/explorer/components/TreeNode.tsx
  • src/features/query/components/QueryResultsTable.tsx
  • src/features/query/components/QueryStatusBar.tsx
  • src/features/query/components/QueryTabBar.tsx
  • src/features/query/components/QueryTargetBar.tsx
  • src/shared/components/ColorProfileCombobox.tsx
  • src/shared/components/ColorProfileMarker.tsx
  • tests/frontend/connectionAppearanceDom.test.tsx
  • tests/frontend/queryUi.test.tsx
💤 Files with no reviewable changes (1)
  • src/shared/components/ColorProfileMarker.tsx

Comment thread src/shared/components/ColorProfileCombobox.tsx Outdated
@GordonBeeming

Copy link
Copy Markdown
Owner Author

@coderabbitai review

@GordonBeeming
GordonBeeming requested a review from Copilot July 28, 2026 02:26
@coderabbitai

coderabbitai Bot commented Jul 28, 2026 •

Copy link
Copy Markdown
✅ Action performed

Review finished.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@GordonBeeming

Copy link
Copy Markdown
Owner Author

@coderabbitai review

@coderabbitai

coderabbitai Bot commented Jul 28, 2026 •

Copy link
Copy Markdown
✅ Action performed

Review finished.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 10 out of 10 changed files in this pull request and generated no new comments.

@GordonBeeming
GordonBeeming marked this pull request as ready for review July 28, 2026 02:47
@GordonBeeming
GordonBeeming merged commit 0011fc0 into main Jul 28, 2026
7 checks passed
@GordonBeeming
GordonBeeming deleted the gb/remove-connection-profile-markers branch July 28, 2026 02:50
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.

2 participants