Build 02062026#39
Conversation
… for Anypoint Studio on Windows and macOS; remove obsolete CI configuration
…ub Copilot builds
…state (microsoft#164) - Synchronize all extMcpInfoMap accesses on the manager monitor so the HashMap is never iterated/mutated concurrently by the async doRegistration() worker, the contribution-point-policy event handler, and the UI-thread approval flow. - approveExtMcpRegistration() now snapshots the map under the lock and opens McpApprovalDialog outside the lock so the worker is not stalled while the user interacts; post-dialog reconciliation re-acquires the lock and the LSP-pushing event publish runs outside the lock. - Mark approvedExtMcpServers volatile and make hasExtMcpRegistration() synchronized for consistent visibility from the UI thread. - Avoid pre-populating in-memory approved servers from the persisted cache at startup; let doRegistration() refresh state and fire TOPIC_MCP_EXTENSION_POINT_REGISTRATION_COMPLETED so the LSP receives the verified set instead of stale data (uninstalled plugin, changed port, removed server). - Fix bundle-state guard in loadMcpRegistrationExtensionPoint() (|| -> &&) so already-active or starting bundles are not pointlessly started again. - LanguageServerSettingManager subscribes to the new completion topic and exposes an overload that accepts the approved JSON directly, avoiding the ChatServiceManager lookup from early-startup paths. - Add regression tests covering plugin uninstall, config change (re-approval required), and unchanged config (approval carry-over). Issue: microsoft#153 --------- Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: xinyi-gong <torigong@microsoft.com>
💡 Codex ReviewWhen Maven hangs or becomes silent, this loop blocks in ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
There was a problem hiding this comment.
Pull request overview
This PR adds a new Anypoint Studio integration bundle and significantly expands MuleSoft-focused Agent Mode capabilities (tools + prompt assets), while also hardening several UI/UX details (theme/background consistency, scrolling behavior, accessibility names) and introducing support for automatic conversation compression events.
Changes:
- Adds a new
com.microsoft.copilot.eclipse.anypointplugin + feature, including secure MuleSoft MCP registration via extension point and Mule-specific instruction templates. - Introduces MuleSoft project analysis and review tools (scan/summary/code review/security review/MUnit review/DataWeave file read-write) plus bundled MuleSoft agent/prompt assets.
- Improves chat UI behavior and preferences: new
@consoleand@transformtoggles, console output summarization, better background styling, and conversation “compacting…” status UI.
Reviewed changes
Copilot reviewed 58 out of 58 changed files in this pull request and generated 10 comments.
Show a summary per file
| File | Description |
|---|---|
| pom.xml | Adds Anypoint modules to the multi-module build. |
| docs/DEVELOPER_NOTES_MULESOFT_SUPPORT.md | Developer notes for MuleSoft support hardening and validation commands. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/utils/UiUtils.java | Adds local-file editor opening + icon button background handling. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/utils/SwtUtils.java | Adds nested scroll forwarding and table-column resize helper. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/utils/PreferencesUtils.java | Adds preference helpers for console/transform context toggles. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/swt/ItemController.java | Focus background caching + disposal, propagates row background to children. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/swt/DropdownPopup.java | Ensures popup background is applied recursively. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/swt/DropdownButton.java | Adds option to render using parent background when not hovered. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/swt/CssConstants.java | Adds chat surface foreground/background color helpers. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/preferences/WrappableNoteLabel.java | Inherits parent background; updates background on resize. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/preferences/WrappableIconLink.java | Inherits parent background; updates background on resize. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/preferences/TerminalAutoApproveSection.java | Adds table wheel forwarding and resize-to-fill column behavior. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/preferences/PreferencePageUtils.java | Centralizes preference page background inheritance + dark-mode text styling. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/preferences/messages.properties | Adds labels/notes for console + transform context preferences. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/preferences/Messages.java | Adds NLS keys for new preference strings. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/preferences/McpPreferencePage.java | Styles MCP text inputs; simplifies ext MCP approval action. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/preferences/McpAutoApproveSection.java | Adds vertical scroll + wheel forwarding for tree viewer. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/preferences/GeneralPreferencesPage.java | Styles GitHub Enterprise text input in dark mode. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/preferences/FileOperationAutoApproveSection.java | Adds scroll + wheel forwarding + column resize behavior. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/preferences/CustomModesPreferencePage.java | Styles custom-mode name input for dark mode. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/preferences/CustomInstructionPreferencePage.java | Styles instruction inputs; replaces inline resize logic with shared helper. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/preferences/CopilotPreferenceInitializer.java | Updates defaults for workspace/console/transform context flags. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/preferences/ChatPreferencesPage.java | Adds console + transform context toggles and styles numeric input. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/preferences/AddByokModelDialog.java | Styles BYOK dialog inputs for dark mode. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/preferences/AddApiKeyDialog.java | Styles API key dialog input for dark mode. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/i18n/messages.properties | Adds “Compacting conversation…” string. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/i18n/Messages.java | Adds NLS key for compacting status string. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/WorkingSetBar.java | Switches working set tracking to ChangedFile (workspace vs local). |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/WarnWidget.java | Renders warning text with clickable links using SWT Link. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/UserTurnWidget.java | Adds CSS class for message text and light-theme background adjustment. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/tools/WorkingSetHandler.java | Migrates handler interface to ChangedFile abstraction. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/tools/MunitValidateFlowTestsTool.java | New read-only MUnit validation tool. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/tools/MunitImprovementSuggestionsTool.java | New read-only MUnit improvement suggestions tool. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/tools/MunitFullReviewTool.java | New read-only comprehensive MUnit review tool. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/tools/MuleToolResponse.java | New structured Mule tool JSON response helper. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/tools/MuleSecurityReviewTool.java | New MuleSoft security review tool. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/tools/MuleProjectSummaryTool.java | New human-readable Mule project summarizer tool. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/tools/MuleProjectScanTool.java | New deterministic Mule project scan tool. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/tools/MuleProjectAnalysis.java | New in-memory Mule project analysis model. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/tools/MuleDwlWriteTool.java | New confirmation-gated DWL file writer tool. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/tools/MuleDwlReadTool.java | New DWL file reader tool. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/tools/MuleDiagnostic.java | New diagnostic record type for Mule analysis outputs. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/tools/MuleCodeReviewTool.java | New MuleSoft code review tool. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/tools/ChangedFile.java | New abstraction for workspace vs local filesystem files. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/tools/ApiSchemaAnalyzeTool.java | New API schema analyzer tool. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/SubagentMessageBlock.java | Renames “turn end” flush method and forwards flush to current widget. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/services/UserPreferenceService.java | Reloads built-in modes asynchronously on auth status change. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/services/MuleConsoleParser.java | Adds Mule runtime console summarization for @console context. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/services/MavenConsoleParser.java | Adds Maven console summarization for @console context. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/services/ConsoleContextPromptProcessor.java | Adds @console prompt processor that attaches console snapshots. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/services/AgentToolService.java | Registers new MuleSoft tools for Agent Mode. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/ReferencedFile.java | Adds accessible name support. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/CurrentReferencedFile.java | Provides a more descriptive accessible name for current selection. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/CopilotTurnWidget.java | Adds compacting spinner/status UI. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/ChatMarkupViewer.java | Ensures message background class/behavior is applied consistently. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/ChatContentViewer.java | Flushes buffers consistently; adds compacting status show/hide helpers. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/ChatAssistProcessor.java | Adds completion proposals for @console/@Transform depending on mode/prefs. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/BaseTurnWidget.java | Renames “turn end” API to flushMessageBuffer. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/AddContextButton.java | Makes icon button appear flat via parent background. |
| com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/ActionBar.java | Applies flat icon buttons, background refresh, and simplifies MCP approval. |
| com.microsoft.copilot.eclipse.ui/plugin.xml | Registers DataWeave content type + content assist + text editor binding. |
| com.microsoft.copilot.eclipse.ui/mulesoft-copilot/.github/prompts/mule-security-review.prompt.md | Adds MuleSoft agent prompt for security review. |
| com.microsoft.copilot.eclipse.ui/mulesoft-copilot/.github/prompts/mule-performance-review.prompt.md | Adds MuleSoft agent prompt for performance review. |
| com.microsoft.copilot.eclipse.ui/mulesoft-copilot/.github/prompts/mule-code-review.prompt.md | Adds MuleSoft agent prompt for code review. |
| com.microsoft.copilot.eclipse.ui/mulesoft-copilot/.github/prompts/logging-observability.prompt.md | Adds MuleSoft agent prompt for observability review. |
| com.microsoft.copilot.eclipse.ui/mulesoft-copilot/.github/prompts/generate-munit-tests.prompt.md | Adds MuleSoft agent prompt for generating MUnit tests. |
| com.microsoft.copilot.eclipse.ui/mulesoft-copilot/.github/prompts/error-handling-contract.prompt.md | Adds MuleSoft agent prompt for error-handling contract review. |
| com.microsoft.copilot.eclipse.ui/mulesoft-copilot/.github/prompts/deployment-readiness.prompt.md | Adds MuleSoft agent prompt for deployment readiness review. |
| com.microsoft.copilot.eclipse.ui/mulesoft-copilot/.github/prompts/dataweave-optimize.prompt.md | Adds MuleSoft agent prompt for DataWeave optimization workflow. |
| com.microsoft.copilot.eclipse.ui/mulesoft-copilot/.github/prompts/dataweave-best-practices.prompt.md | Adds MuleSoft agent prompt for DataWeave best-practices review. |
| com.microsoft.copilot.eclipse.ui/mulesoft-copilot/.github/prompts/connector-governance.prompt.md | Adds MuleSoft agent prompt for connector governance review. |
| com.microsoft.copilot.eclipse.ui/mulesoft-copilot/.github/prompts/batch-job-review.prompt.md | Adds MuleSoft agent prompt for batch job review. |
| com.microsoft.copilot.eclipse.ui/mulesoft-copilot/.github/prompts/async-flow-review.prompt.md | Adds MuleSoft agent prompt for async flow review. |
| com.microsoft.copilot.eclipse.ui/mulesoft-copilot/.github/prompts/api-spec-review.prompt.md | Adds MuleSoft agent prompt for API spec review. |
| com.microsoft.copilot.eclipse.ui/mulesoft-copilot/.github/prompts/api-led-architecture-review.prompt.md | Adds MuleSoft agent prompt for API-led architecture review. |
| com.microsoft.copilot.eclipse.ui/META-INF/MANIFEST.MF | Broadens Mylyn WikiText version ranges for Anypoint packaging. |
| com.microsoft.copilot.eclipse.ui/css/macosx-light.css | Adds light theme message background rule for macOS. |
| com.microsoft.copilot.eclipse.ui/css/light.css | Updates light theme backgrounds and message styling. |
| com.microsoft.copilot.eclipse.ui/css/dark.css | Updates dark theme backgrounds and adds input styling rules. |
| com.microsoft.copilot.eclipse.ui/build.properties | Includes bundled MuleSoft copilot assets in the build. |
| com.microsoft.copilot.eclipse.ui.test/src/com/microsoft/copilot/eclipse/ui/preferences/LanguageServerSettingManagerTests.java | Updates expected agent settings to include auto-compress. |
| com.microsoft.copilot.eclipse.ui.test/src/com/microsoft/copilot/eclipse/ui/preferences/CopilotPreferenceInitializerTest.java | Adds a default-preference test for console context. |
| com.microsoft.copilot.eclipse.ui.test/src/com/microsoft/copilot/eclipse/ui/chat/services/MavenConsoleParserTest.java | Adds unit tests for Maven console summarization. |
| com.microsoft.copilot.eclipse.ui.test/src/com/microsoft/copilot/eclipse/ui/chat/services/ConsoleContextServiceTest.java | Adds unit tests for console snapshot capturing/truncation. |
| com.microsoft.copilot.eclipse.ui.test/src/com/microsoft/copilot/eclipse/ui/chat/services/ChatCompletionServiceTest.java | Adds tests for @console command availability behavior. |
| com.microsoft.copilot.eclipse.ui.test/src/com/microsoft/copilot/eclipse/ui/chat/ChatAssistProcessorTest.java | Adds tests for @console proposal availability. |
| com.microsoft.copilot.eclipse.ui.test/src/com/microsoft/copilot/eclipse/anypoint/MuleSoftMcpConfigurationTest.java | Adds tests for MuleSoft MCP configuration generation. |
| com.microsoft.copilot.eclipse.ui.test/META-INF/MANIFEST.MF | Adds anypoint + console bundles to test dependencies. |
| com.microsoft.copilot.eclipse.repository/pom.xml | Adds repository plugin configuration to include dependencies. |
| com.microsoft.copilot.eclipse.repository/category.xml | Switches category to expose the Anypoint feature. |
| com.microsoft.copilot.eclipse.core/src/com/microsoft/copilot/eclipse/core/lsp/protocol/CopilotAgentSettings.java | Adds auto-compress and MCP tool auto-approve setting shape. |
| com.microsoft.copilot.eclipse.core/src/com/microsoft/copilot/eclipse/core/lsp/protocol/CompressionStartedParams.java | Adds protocol record for compression-start notifications. |
| com.microsoft.copilot.eclipse.core/src/com/microsoft/copilot/eclipse/core/lsp/protocol/CompressionCompletedParams.java | Adds protocol record for compression-complete notifications. |
| com.microsoft.copilot.eclipse.core/src/com/microsoft/copilot/eclipse/core/lsp/CopilotLanguageClient.java | Adds LSP notifications for compression start/completion. |
| com.microsoft.copilot.eclipse.core/src/com/microsoft/copilot/eclipse/core/format/FormatOptionProvider.java | Maps .dwl to DataWeave language ID for formatting behavior. |
| com.microsoft.copilot.eclipse.core/src/com/microsoft/copilot/eclipse/core/events/CopilotEventConstants.java | Adds MCP extension completion + compression event topics. |
| com.microsoft.copilot.eclipse.core/src/com/microsoft/copilot/eclipse/core/Constants.java | Adds console/transform context preference keys. |
| com.microsoft.copilot.eclipse.core/src/com/microsoft/copilot/eclipse/core/completion/CompletionProvider.java | Treats CancellationException as a normal cancel path. |
| com.microsoft.copilot.eclipse.core/src/com/microsoft/copilot/eclipse/core/chat/BuiltInChatModeManager.java | Adds async built-in-mode reload API. |
| com.microsoft.copilot.eclipse.core/src/com/microsoft/copilot/eclipse/core/AuthStatusManager.java | Handles sign-out cancellation by clearing local auth state. |
| com.microsoft.copilot.eclipse.core/plugin.xml | Adds dataweave content-type mapping for LSP language ID. |
| com.microsoft.copilot.eclipse.core/copilot-agent/package.json | Keeps agent dependency versions in sync. |
| com.microsoft.copilot.eclipse.core/copilot-agent/copy-binaries.js | Changes binary copy behavior to skip missing platform binaries. |
| com.microsoft.copilot.eclipse.core.test/src/com/microsoft/copilot/eclipse/core/completion/FormatOptionProviderTests.java | Adds test coverage for .dwl extension handling. |
| com.microsoft.copilot.eclipse.core.agent.win32/pom.xml | Adds tycho packaging plugin to agent fragment. |
| com.microsoft.copilot.eclipse.core.agent.macosx.x64/pom.xml | Adds tycho packaging plugin to agent fragment. |
| com.microsoft.copilot.eclipse.core.agent.macosx.aarch64/pom.xml | Adds tycho packaging plugin to agent fragment. |
| com.microsoft.copilot.eclipse.core.agent.linux.x64/pom.xml | Adds tycho packaging plugin to agent fragment. |
| com.microsoft.copilot.eclipse.core.agent.linux.aarch64/pom.xml | Adds tycho packaging plugin to agent fragment. |
| com.microsoft.copilot.eclipse.anypoint/templates/copilot-instructions-mule-template.md | Adds a Mule project copilot-instructions scaffold template. |
| com.microsoft.copilot.eclipse.anypoint/src/com/microsoft/copilot/eclipse/anypoint/MuleSoftMcpSettings.java | Adds secure storage for MuleSoft MCP settings. |
| com.microsoft.copilot.eclipse.anypoint/src/com/microsoft/copilot/eclipse/anypoint/MuleSoftMcpRegistrationProvider.java | Adds MCP registration provider for MuleSoft official server. |
| com.microsoft.copilot.eclipse.anypoint/src/com/microsoft/copilot/eclipse/anypoint/MuleSoftMcpConfiguration.java | Generates MCP server JSON for MuleSoft server via npx. |
| com.microsoft.copilot.eclipse.anypoint/pom.xml | Adds new Anypoint integration plugin module. |
| com.microsoft.copilot.eclipse.anypoint/plugin.xml | Registers MCP provider + preference page contribution. |
| com.microsoft.copilot.eclipse.anypoint/META-INF/MANIFEST.MF | Declares bundle metadata and dependencies for anypoint plugin. |
| com.microsoft.copilot.eclipse.anypoint/build.properties | Configures anypoint plugin build inclusions. |
| com.microsoft.copilot.eclipse.anypoint.feature/pom.xml | Adds anypoint feature module. |
| com.microsoft.copilot.eclipse.anypoint.feature/feature.xml | Defines Anypoint feature including base feature and dependencies. |
| CHANGELOG.md | Adds “Unreleased” section for Anypoint/MuleSoft enhancements. |
| base.target | Adds terminal feature units to target platform. |
| .gitignore | Adjusts zip ignore and adds build artifact directories to ignore. |
| .github/workflows/build-universal.yml | Adds universal build/release workflow for Anypoint Studio distribution. |
| .github/release.yml | Adds release note category configuration. |
| .github/workflows/ci.yml | Removes the existing multi-OS CI workflow. |
| private boolean enableSkills; | ||
| private boolean autoCompress; | ||
|
|
||
| @SerializedName("toolConfirmAutoApprove") | ||
| private List<McpAutoApproveSetting> toolConfirmAutoApprove = List.of(); |
| return agentMaxRequests == other.agentMaxRequests && enableSkills == other.enableSkills | ||
| && Objects.equals(toolConfirmAutoApprove, other.toolConfirmAutoApprove) | ||
| && autoCompress == other.autoCompress | ||
| && Objects.equals(toolConfirmAutoApprove, other.toolConfirmAutoApprove) | ||
| && Objects.equals(transcriptDirectory, other.transcriptDirectory) | ||
| && editorHandlesAllConfirmation == other.editorHandlesAllConfirmation |
| int remainingWidth = table.getClientArea().width; | ||
| for (TableColumn fixedColumn : fixedColumns) { | ||
| remainingWidth -= fixedColumn.getWidth(); | ||
| } | ||
| if (remainingWidth > minWidth) { | ||
| fillColumn.setWidth(remainingWidth); | ||
| } |
| public static IEditorPart openLocalFileInEditor(Path file) { | ||
| if (file == null || !Files.exists(file)) { | ||
| CopilotCore.LOGGER.error(new IllegalArgumentException("Cannot open editor: local file is null or doesn't exist")); | ||
| return null; |
No description provided.