-
Notifications
You must be signed in to change notification settings - Fork 443
frontend: Activity: Improve panel UX with close options and pin feature #3975
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
frontend: Activity: Improve panel UX with close options and pin feature #3975
Conversation
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: jaehanbyun The full list of commands accepted by this bot can be found here.
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
I've implemented several UX improvements based on my personal workflow needs (ESC key, click-outside, pin feature, etc.). |
f62286a
to
5d68b26
Compare
- Add ESC key handler to close/minimize active panels - Add click-outside detection with smart exception handling - Add toggle behavior when re-clicking the same resource - Add pin functionality to keep important resources in ActivityBar - Add pin/unpin button with visual indicator (outline/filled icon) - Pinned activities minimize instead of closing completely - Extract closeOrMinimize helper to reduce code duplication - Prevent panels from closing when clicking other activity panels - Prevent panels from closing when using table controls (pagination, sort, filter, search, show/hide, namespace selector) - Replace setTimeout delay with timestamp comparison for better UX
5d68b26
to
239e41f
Compare
Signed-off-by: jaehanbyun <[email protected]>
Signed-off-by: jaehanbyun <[email protected]>
There was a problem hiding this comment.
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 enhances the Activity panel user experience by adding multiple intuitive ways to close panels and introducing a pin functionality for keeping frequently-accessed resources available.
Key changes include:
- ESC key and click-outside support for closing/minimizing panels
- Pin functionality to preserve important resources in the ActivityBar
- Toggle behavior when re-clicking the same resource
Reviewed Changes
Copilot reviewed 17 out of 17 changed files in this pull request and generated 3 comments.
Show a summary per file
File | Description |
---|---|
frontend/src/i18n/locales/*/translation.json |
Added "Pin" and "Unpin" translations for internationalization |
frontend/src/i18n/i18next-parser.config.js |
Fixed Node.js compatibility issue for translation parsing |
frontend/src/components/common/Link.tsx |
Implemented toggle behavior and activity restoration logic |
frontend/src/components/activity/Activity.tsx |
Added pin functionality, ESC key handler, and click-outside detection |
frontend/src/components/App/icons.ts |
Added pin and pin-outline icons for the pin button |
frontend/src/components/activity/__snapshots__/Activity.Basic.stories.storyshot |
Updated test snapshot to include new pin button |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
"rules": "", | ||
"ParentRefs": "", | ||
"No rules data to be shown.": "दिखाने के लिए कोई नियम डेटा नहीं है।", | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Empty line added at line 454 appears to be unintentional and should be removed to maintain consistent formatting.
Copilot uses AI. Check for mistakes.
"rules": "reglas", | ||
"ParentRefs": "Referencias Padre", | ||
"No rules data to be shown.": "Sin datos de reglas", | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Empty line added at line 457 appears to be unintentional and should be removed to maintain consistent formatting.
Copilot uses AI. Check for mistakes.
|
||
import fs from 'fs'; | ||
import path from 'path'; | ||
import { fileURLToPath } from 'url'; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
[nitpick] The import should be moved to the top with other imports (after line 18) to follow consistent import ordering conventions.
Copilot uses AI. Check for mistakes.
Thanks @jaehanbyun ! |
Personally, when I use VSCode, I tend to keep panels pinned and open for long stretches while working. In that context, the extra mouse movements required to close or minimize panels can feel a bit cumbersome, which is why I proposed this change. This approach feels more convenient to me than the current behavior, but preferences can vary. |
In any case, I think the ability to close panels with the ESC key would be useful. |
Cool. I can ask a few more people to try this out over the coming days. |
Summary
This PR significantly enhances the user experience of activity panels (resource detail views) by adding multiple intuitive ways to close/minimize panels and introducing a pin feature to keep frequently-accessed resources readily available.
Key Features:
Related Issue
Closes #3947
Changes
New Features
1. ESC Key Handler
2. Click-Outside Detection
3. Toggle Behavior
4. Pin Functionality
mdi:pin-outline
)mdi:pin
)Modified Files
frontend/src/components/activity/Activity.tsx
pinned
property to Activity interfacecloseOrMinimize()
helper functionfrontend/src/components/common/Link.tsx
closeOrMinimize()
helperSteps to Test
Basic Close Functionality
Pin Functionality
Table Controls (Should NOT close panel)
Multiple Activities
Edge Cases
Additional Context
Screen.Recording.Sept.30.2025.mp4