Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Issue Navigator #2006

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

Open
FastestMolasses wants to merge 17 commits into main
base: main
Choose a base branch
Loading
from issue-navigator
Open

Issue Navigator #2006

FastestMolasses wants to merge 17 commits into main from issue-navigator

Conversation

Copy link
Member

@FastestMolasses FastestMolasses commented Mar 15, 2025
edited
Loading

Description

Adds the Issue Navigator side menu to allow users to see the errors and warnings in their codebase.

Related Issues

Checklist

  • I read and understood the contributing guide as well as the code of conduct
  • The issues this PR addresses are related to each other
  • My changes generate no new warnings
  • My code builds and runs on my machine
  • My changes are all related to the related issue above
  • I documented my code

Screenshots

austincondiff reacted with thumbs up emoji
@austincondiff austincondiff changed the title (削除) Issue Navigator Menu (削除ここまで) (追記) Issue Navigator (追記ここまで) Apr 2, 2025
Copy link

@Copilot 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 introduces the Issue Navigator sidebar, which displays code errors and warnings. Key changes include:

  • Adding a new IssueNavigatorViewModel and associated data structures for managing diagnostics.
  • Integrating new Issue Navigator UI components into the NavigatorArea.
  • Updating the LSP service and WorkspaceDocument to support the new issue tracking.

Reviewed Changes

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

Show a summary per file
File Description
CodeEdit/Features/NavigatorArea/Views/NavigatorAreaView.swift Adds an "issues" tab to the navigator tabs.
CodeEdit/Features/NavigatorArea/ViewModels/IssueNavigatorViewModel.swift Introduces the view model and supporting functions for issues.
CodeEdit/Features/NavigatorArea/ProjectNavigator/OutlineView/ProjectNavigatorViewController+NSOutlineViewDelegate.swift Improves comment clarity.
CodeEdit/Features/NavigatorArea/OutlineView/StandardTableViewCell.swift Removes a duplicate subview addition of the icon.
CodeEdit/Features/NavigatorArea/OutlineView/IssueTableViewCell.swift Adds a custom table view cell for rendering issue nodes.
CodeEdit/Features/NavigatorArea/Models/NavigatorTab.swift Adds new case .issues with associated icon and label.
CodeEdit/Features/NavigatorArea/IssueNavigator/... (various files) Implements the UI for the Issue Navigator via view controllers, data sources, and a SwiftUI wrapper.
CodeEdit/Features/LSP/Service/LSPService.swift & LSPService+Events.swift Updates LSP service APIs to include workspace info and event handling.
CodeEdit/Features/LSP/LanguageServer/LanguageServer.swift Adds workspace context to the language server.
CodeEdit/Features/Documents/WorkspaceDocument/WorkspaceDocument.swift Instantiates the issue navigator view model with a hardcoded project name.
Comments suppressed due to low confidence (1)

CodeEdit/Features/Documents/WorkspaceDocument/WorkspaceDocument.swift:37

  • The IssueNavigatorViewModel is initialized with a hardcoded project name "Test". Consider retrieving the actual project name from the root folder to avoid hardcoding.
var issueNavigatorViewModel: IssueNavigatorViewModel? = IssueNavigatorViewModel(projectName: "Test")

@FastestMolasses FastestMolasses added UI This is UI related navigator language server Issues or Pull Requests related to language servers. labels Apr 5, 2025
Copy link
Collaborator

@thecoolwinter thecoolwinter left a comment

Choose a reason for hiding this comment

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

A few thoughts, love the progress here. Hard to test without some of the more recent changes on main due to some crashes happening.

Copy link
Collaborator

@thecoolwinter thecoolwinter left a comment

Choose a reason for hiding this comment

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

Looks good! I am struggling to test it consistently with a real language server, but not because of the components you've added here. I think we may need to add a call to the pull diagnostics server capability to round out the diagnostics fetching, but I say lets add an issue for that and come back to it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Reviewers

Copilot code review Copilot Copilot left review comments

@thecoolwinter thecoolwinter thecoolwinter approved these changes

@austincondiff austincondiff Awaiting requested review from austincondiff

@tom-ludwig tom-ludwig Awaiting requested review from tom-ludwig

At least 2 approving reviews are required to merge this pull request.

Labels
language server Issues or Pull Requests related to language servers. navigator UI This is UI related
Projects
None yet
Milestone
No milestone
Development

Successfully merging this pull request may close these issues.

✨ Issue Navigator

AltStyle によって変換されたページ (->オリジナル) /