Skip to content

Conversation

@waleedlatif1
Copy link
Collaborator

Summary

improved filters UI and search suggestions to avoid flickers & popover cutoffs

Type of Change

  • Bug fix

Testing

tested manually

Checklist

  • Code follows project style guidelines
  • Self-reviewed my changes
  • Tests added/updated and passing
  • No new warnings introduced
  • I confirm that I have read and agree to the terms outlined in the Contributor License Agreement (CLA)

@vercel
Copy link

vercel bot commented Sep 19, 2025

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

Project Deployment Preview Comments Updated (UTC)
sim Ready Ready Preview Comment Sep 19, 2025 6:22pm
1 Skipped Deployment
Project Deployment Preview Comments Updated (UTC)
docs Skipped Skipped Sep 19, 2025 6:22pm

Copy link
Contributor

@greptile-apps greptile-apps bot left a comment

Choose a reason for hiding this comment

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

Greptile Summary

This PR implements UI improvements to fix flicker and cutoff issues with dropdown menus and popovers in the search and filtering interface. The changes focus on three main areas:

Dropdown Menu Enhancement: The DropdownMenuContent component now includes avoidCollisions={false} and sticky='always' props to prevent automatic repositioning and maintain stable positioning during scroll. This addresses the core issue where dropdowns were automatically repositioning themselves when they would normally extend beyond viewport boundaries, causing visual flickers.

Tool Input Popover Standardization: Two PopoverContent components in the tool input system receive consistent styling with fixed dimensions (h-[360px]), explicit positioning (side='bottom', sideOffset={6}), and disabled collision avoidance. The first popover uses w-[200px] while the second uses w-[280px] to accommodate different content requirements. These changes prevent content-based height fluctuations and ensure predictable positioning.

Filter UI Prioritization: The logs filters component reorders filter sections to prioritize commonly used filters, moving Level to the top and Timeline to the bottom. This improves user experience by reducing the need to scroll to frequently accessed options.

Code Cleanup: All inline comments are removed from the tool-command component while preserving all functionality, including search scoring logic and keyboard navigation handlers.

These changes integrate with the existing Radix UI-based popover and dropdown system, maintaining backward compatibility while resolving positioning and visual stability issues.

Confidence score: 3/5

  • This PR addresses specific UI issues but introduces potential risks with collision handling and type assertions
  • Score reflects concerns about disabled collision avoidance potentially causing accessibility issues and the use of type assertion as any bypassing TypeScript safety
  • Pay close attention to dropdown-menu.tsx and tool-input.tsx files for potential positioning and accessibility impacts

Context used:

Context - Avoid using type assertions to 'any' in TypeScript. Instead, ensure proper type definitions are used to maintain type safety. (link)

4 files reviewed, 1 comment

Edit Code Review Bot Settings | Greptile

ref={ref}
sideOffset={sideOffset}
avoidCollisions={avoidCollisions}
sticky={sticky as any}
Copy link
Contributor

Choose a reason for hiding this comment

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

style: Type assertion as any bypasses TypeScript safety. Verify the sticky prop type matches Radix UI's expected values or define proper types.

Context Used: Context - Avoid using type assertions to 'any' in TypeScript. Instead, ensure proper type definitions are used to maintain type safety. (link)

@waleedlatif1 waleedlatif1 merged commit 225571c into staging Sep 19, 2025
5 checks passed
@waleedlatif1 waleedlatif1 deleted the improvement/search branch September 23, 2025 15:57
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