Skip to content

fix(app): scroll to active tab when clicked (fixes #11674)#11685

Open
Geralt4 wants to merge 1 commit intoanomalyco:devfrom
Geralt4:dev
Open

fix(app): scroll to active tab when clicked (fixes #11674)#11685
Geralt4 wants to merge 1 commit intoanomalyco:devfrom
Geralt4:dev

Conversation

@Geralt4
Copy link

@Geralt4 Geralt4 commented Feb 1, 2026

Fixes #11674
Fixes #11687

Summary

Two fixes:

  1. [BUG]: (app): Clicking on overflowed tab on the right in the file view/review section does not scroll it into view #11674: When clicking on an overflowed tab in the file view/review section, the tab is now scrolled into view so the close button becomes accessible. This extends the existing tab scrolling functionality from PR fix(app): file tabs - auto scroll on open & scroll via mouse wheel #11070.

  2. Windows: Preparing apply_patch... Error: apply_patch verification failed: F #11687: Added validation to detect paths containing "USERNAME" which may indicate an unexpanded environment variable or corrupted patch on Windows. This helps diagnose the apply_patch verification failed error.

Changes

Issue #11674 (scroll to active tab when clicked)

  • Adds a createEffect that watches the active tab
  • When the active tab changes (e.g., user clicks on a tab), it checks if the tab is overflowed
  • If overflowed, it scrolls the tab into view smoothly

Issue #11687 (validate paths for unexpanded environment variables)

  • Adds path validation at the beginning of the patch processing loop to check for "USERNAME" in paths on Windows
  • Throws a descriptive error message indicating the path may contain an unexpanded environment variable or corrupted patch
  • Separated error messages for "file not found" vs "path is a directory" for clearer diagnostics

Testing

Issue #11674:

  • Open multiple file tabs until they overflow the visible area
  • Click on a partially-hidden tab on the right side
  • The tab should scroll into full view, making the close button accessible

Issue #11687:

  • The fix validates paths before attempting to read them, catching potential issues early with helpful error messages.

@github-actions
Copy link
Contributor

github-actions bot commented Feb 1, 2026

Thanks for your contribution!

This PR doesn't have a linked issue. All PRs must reference an existing issue.

Please:

  1. Open an issue describing the bug/feature (if one doesn't exist)
  2. Add Fixes #<number> or Closes #<number> to this PR description

See CONTRIBUTING.md for details.

@github-actions
Copy link
Contributor

github-actions bot commented Feb 1, 2026

The following comment was made by an LLM, it may be inaccurate:

Based on my search, I found a potentially duplicate PR:

PR #11676 - "fix(app): scroll review tab into view when clicked while overflowed"
#11676

This appears to be addressing the same issue as PR #11685. Both PRs are fixing tab scrolling behavior when tabs are overflowed, specifically making the close button accessible by scrolling tabs into view when clicked. This looks like it may be a duplicate of the current PR.

Copy link
Contributor

Copilot AI left a 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 fixes two issues: #11674 (scroll to active tab when clicked) and #11687 (validate paths for unexpanded environment variables on Windows). The changes include tab scrolling functionality, path validation improvements, and various refactoring/cleanup across multiple components.

Changes:

  • Added scroll-to-view functionality for overflowed tabs in file/review sections
  • Added path validation to detect unexpanded environment variables on Windows
  • Refactored multiple components to improve code organization and remove duplication

Reviewed changes

Copilot reviewed 180 out of 1811 changed files in this pull request and generated no comments.

Show a summary per file
File Description
packages/app/src/components/settings-providers.tsx Refactored provider notes to use a centralized lookup table and improved type safety
packages/app/src/components/settings-permissions.tsx Extracted rollback logic into a separate function for better code organization
packages/app/src/components/settings-models.tsx Extracted loading and empty state components for reusability
packages/app/src/components/settings-mcp.tsx Added TODO comment for future implementation
packages/app/src/components/settings-commands.tsx Added TODO comment for future implementation
packages/app/src/components/settings-agents.tsx Added TODO comment for future implementation
packages/app/src/components/session/session-sortable-terminal-tab.tsx Replaced setTimeout-based focus with createEffect and requestAnimationFrame
packages/app/src/components/session/session-sortable-tab.tsx Updated to use TooltipKeybind and improved memoization
packages/app/src/components/session/session-new-view.tsx Switched from sync.data.path.directory to sdk.directory
packages/app/src/components/session/session-context-metrics.ts New file: Extracts session context metrics calculation logic
packages/app/src/components/session/session-context-metrics.test.ts New file: Test coverage for session context metrics
packages/app/src/components/session/session-context-format.ts New file: Utility for formatting session context values
packages/app/src/components/session/session-context-breakdown.ts New file: Calculates token usage breakdown for session context
packages/app/src/components/session/session-context-breakdown.test.ts New file: Test coverage for context breakdown calculations
packages/app/src/components/session-context-usage.tsx Refactored to use extracted metrics calculation and added toggle functionality
packages/app/src/components/server/server-row.tsx New file: Reusable component for displaying server connection rows
packages/app/src/components/prompt-input/placeholder.ts New file: Extracted placeholder logic from prompt input component
packages/app/src/components/prompt-input/placeholder.test.ts New file: Test coverage for placeholder logic
packages/app/src/components/prompt-input/image-attachments.tsx New file: Extracted image attachments display component
packages/app/src/components/prompt-input/history.test.ts New file: Test coverage for prompt history functionality
packages/app/src/components/prompt-input/editor-dom.ts New file: DOM manipulation utilities for prompt editor
packages/app/src/components/prompt-input/editor-dom.test.ts New file: Test coverage for editor DOM utilities
packages/app/src/components/prompt-input/drag-overlay.tsx New file: Overlay component for drag and drop operations
packages/app/src/components/prompt-input/context-items.tsx New file: Display component for context items in prompt
packages/app/src/components/link.tsx Changed from button to anchor element with proper href attribute
packages/app/src/components/file-tree.test.ts New file: Test coverage for file tree functionality
packages/app/src/components/dialog-settings.tsx Removed commented out tabs
packages/app/src/components/dialog-select-provider.tsx Consolidated provider notes into a function
packages/app/src/components/dialog-select-model-unpaid.tsx Moved event handler to component scope and removed unused imports
packages/app/src/components/dialog-select-mcp.tsx Refactored status labels into a lookup object and improved error handling
packages/app/src/components/dialog-release-notes.tsx Simplified keyboard handling by moving to onKeyDown prop
packages/app/src/components/dialog-manage-models.tsx Added provider-level visibility toggling and improved sorting logic
packages/app/src/components/dialog-fork.tsx Added error handling with toast notifications
packages/app/src/components/dialog-edit-project.tsx Fixed promise handling and replaced getElementById with ref
packages/app/src/addons/serialize.ts Improved terminal buffer type checking and fixed cursor styling issues
packages/app/src/addons/serialize.test.ts Re-enabled previously skipped tests
packages/app/script/e2e-local.ts Improved cleanup handling and signal management
packages/app/playwright.config.ts Updated network configuration to use 127.0.0.1 instead of localhost
packages/app/package.json Updated version and added unit test scripts
packages/app/e2e/**/*.spec.ts Multiple e2e test improvements and new test files
packages/app/bunfig.toml Added test root configuration
package.json Updated package manager version and dependencies
Various README files Added new language links and updated installation instructions
Various .github files Added vouch system, updated workflows, and improved issue management
Various nix files Updated nix configuration and build scripts
Various .opencode files Updated agent configurations and added glossary files

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

- Scroll to active tab when clicked (fixes anomalyco#11674)
- Validate paths on Windows for unexpanded USERNAME environment variable (fixes anomalyco#11687)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

2 participants