Skip to content

Close button#85

Draft
glenn-jocher wants to merge 22 commits into
mainfrom
close-button
Draft

Close button#85
glenn-jocher wants to merge 22 commits into
mainfrom
close-button

Conversation

@glenn-jocher
Copy link
Copy Markdown
Member

@glenn-jocher glenn-jocher commented Mar 28, 2026

🛠️ PR Summary

Made with ❤️ by Ultralytics Actions

🌟 Summary

Adds a dismissible close button to the chat launcher pill, letting users hide it temporarily while preserving a quick keyboard path to restore and reopen chat. 🚀

📊 Key Changes

  • Added a new ult-pill-close button to the chat pill UI with hover-reveal styling and responsive sizing. ❌
  • Introduced a new circleX icon for the close control in js/chat.js.
  • Persisted pill dismissal state with localStorage using ult-pill-hidden so the hidden state survives reloads. 💾
  • Applied a pill-dismissed class to animate and disable the pill after dismissal.
  • Added close button event handlers for click and tooltip behavior, including stopPropagation() to avoid opening chat when dismissing the pill.
  • Restored the hidden pill automatically when the keyboard shortcut is used, then opened chat as usual. ⌨️
  • Included corresponding minified output updates in js/chat.min.js.

🎯 Purpose & Impact

  • Improves UX by giving users direct control over whether the floating chat pill remains visible. 🙂
  • Reduces UI distraction for users who want a cleaner interface without removing chat functionality entirely.
  • Keeps chat discoverable and accessible by allowing the pill to reappear through the existing keyboard shortcut.
  • Adds lightweight persistence with minimal implementation risk and clear visual behavior across desktop and mobile sizes.
📋 Skipped 1 file (lock files, generated, images, etc.)
  • js/chat.min.js

@vercel
Copy link
Copy Markdown

vercel Bot commented Mar 28, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
llm Ready Ready Preview, Comment Mar 28, 2026 6:52pm

Request Review

@UltralyticsAssistant
Copy link
Copy Markdown
Member

👋 Hello @glenn-jocher, thank you for submitting a ultralytics/llm 🚀 PR! This is an automated message to help streamline review, and an engineer will assist you shortly. Please review the checklist below for a smooth integration. 😊

  • Define a Purpose: Clearly explain the purpose of your fix or feature in your PR description, and link to any relevant issues. Ensure your commit messages are clear, concise, and adhere to the project's conventions.
  • Synchronize with Source: Confirm your PR is synchronized with the ultralytics/llm main branch. If it's behind, update it by clicking the 'Update branch' button or by running git pull and git merge main locally.
  • Ensure CI Checks Pass: Verify all Ultralytics Continuous Integration (CI) checks are passing. If any checks fail, please address the issues.
  • Update Documentation: Update the relevant documentation for any new or modified features.
  • Add Tests: If applicable, include or update tests to cover your changes, and confirm that all tests are passing.
  • Sign the CLA: Please ensure you have signed our Contributor License Agreement if this is your first Ultralytics PR by writing "I have read the CLA Document and I sign the CLA" in a new message.
  • Minimize Changes: Limit your changes to the minimum necessary for your bug fix or feature addition. "It is not daily increase but daily decrease, hack away the unessential. The closer to the source, the less wastage there is." — Bruce Lee

For more guidance, please refer to our Contributing Guide. Don't hesitate to leave a comment if you have any questions. Thank you for contributing to Ultralytics! 🚀

Copy link
Copy Markdown
Member

@UltralyticsAssistant UltralyticsAssistant left a comment

Choose a reason for hiding this comment

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

🔍 PR Review

Made with ❤️ by Ultralytics Actions

Good UX addition overall, but there are a few functional issues to address before merging: the new close button is nested inside a button, storage access is unguarded, the dismiss action is not reachable on touch devices, and the dismissed pill remains keyboard-focusable while invisible.

💬 Posted 4 inline comments

📋 Skipped 1 file (lock files, generated, images, etc.)
  • js/chat.min.js

@codecov
Copy link
Copy Markdown

codecov Bot commented Mar 28, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

Copy link
Copy Markdown
Member

@UltralyticsAssistant UltralyticsAssistant left a comment

Choose a reason for hiding this comment

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

🔍 PR Review 2

Made with ❤️ by Ultralytics Actions

Nice, focused UI change overall, but there are a few functional issues to address before merging: the new close control is nested inside a button, the dismiss action is hover-only so it is not reliably usable on touch devices, and the hidden state is not actually persisted across reloads.

💬 Posted 3 inline comments

📋 Skipped 1 file (lock files, generated, images, etc.)
  • js/chat.min.js

Comment thread js/chat.js
Comment thread js/chat.js
Comment thread js/chat.js
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants