Skip to content

feat(lsp): improve actions, navigation, and position handling - #2837

Merged
bajrangCoder merged 1 commit into
mainfrom
feat/lsp-actions-and-navigation
Aug 30, 2026
Merged

feat(lsp): improve actions, navigation, and position handling#2837
bajrangCoder merged 1 commit into
mainfrom
feat/lsp-actions-and-navigation

Conversation

@bajrangCoder

Copy link
Copy Markdown
Member
  • advertise code action resolve support
  • clamp LSP positions beyond document bounds
  • support LocationLink and multiple navigation results
  • add LSP operations to the selection menu
  • fix navigation scrolling after switching files
  • use shared position and location normalization helpers

- advertise code action resolve support
- clamp LSP positions beyond document bounds
- support LocationLink and multiple navigation results
- add LSP operations to the selection menu
- fix navigation scrolling after switching files
- use shared position and location normalization helpers
@greptile-apps

greptile-apps Bot commented Aug 30, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

The PR expands LSP navigation and touch-menu actions while centralizing safe position and location normalization.

  • Advertises lazy code-action edit resolution and resolves actions before execution.
  • Supports multiple definition-family results and LocationLink responses through the references panel.
  • Clamps server positions before applying diagnostics, edits, hints, colors, hover ranges, and navigation.
  • Centralizes range revealing so explicit navigation wins over delayed viewport restoration.

Confidence Score: 5/5

The PR appears safe to merge with no concrete changed-code failures identified.

The navigation, position normalization, workspace-edit mapping, selection-menu capability checks, and delayed-scroll cancellation paths are internally consistent with the repository contracts examined.

Important Files Changed

Filename Overview
src/cm/lsp/definition.ts Adds multi-provider definition-family navigation with deduplication, direct navigation, and references-panel fallback.
src/cm/lsp/positionUtils.ts Introduces bounded LSP-position conversion shared across editor features.
src/cm/lsp/codeActions.ts Resolves lazy code actions and applies normalized, mapped workspace edits.
src/cm/lsp/rename.ts Uses shared bounded position conversion for prepare-rename and workspace edits.
src/lib/editorManager.js Adds centralized range revealing that cancels delayed active-file scroll restoration.
src/lib/selectionMenu.js Adds a capability-filtered LSP action picker to the selection menu.
src/components/referencesPanel/utils.js Routes reference navigation through shared position conversion and range revealing.

Sequence Diagram

sequenceDiagram
  participant U as User
  participant C as LSP command
  participant S as Language server
  participant N as Location normalizer
  participant P as References panel
  participant E as Editor manager
  U->>C: Invoke navigation action
  C->>S: textDocument definition-family request
  S-->>C: Location, Location[], or LocationLink[]
  C->>N: Normalize and deduplicate results
  alt One location
    N->>E: Open file and reveal range
  else Multiple locations
    N->>P: Display normalized results
    U->>P: Select result
    P->>E: Open file and reveal range
  end
Loading

Reviews (1): Last reviewed commit: "feat(lsp): improve actions, navigation, ..." | Re-trigger Greptile

@bajrangCoder
bajrangCoder added this pull request to the merge queue Aug 30, 2026
Merged via the queue into main with commit 9d20f50 Aug 30, 2026
9 checks passed
@github-project-automation github-project-automation Bot moved this from Backlog to Done in The Code Board - Acode Aug 30, 2026
@bajrangCoder
bajrangCoder deleted the feat/lsp-actions-and-navigation branch August 30, 2026 04:22
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

Status: Done

Development

Successfully merging this pull request may close these issues.

1 participant