Fix IntelliJ 2026.1 EAP API Compatibility Issues#11807
Open
wangmingliang-ms wants to merge 33 commits intodevelop.nextfrom
Open
Fix IntelliJ 2026.1 EAP API Compatibility Issues#11807wangmingliang-ms wants to merge 33 commits intodevelop.nextfrom
wangmingliang-ms wants to merge 33 commits intodevelop.nextfrom
Conversation
837c817 to
59195d3
Compare
86e2c4b to
245378a
Compare
0e44c37 to
a8a3395
Compare
…ent.createEvent() Replace createFromAnAction(), createFromDataContext(), and createFromInputEvent() with the new AnActionEvent.createEvent() API across 18 files (26 usages). These deprecated methods are scheduled for removal in IntelliJ 261. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Use setButtonEnabled(), setButtonIcon(), addActionListener() and isEnabled directly on the ComponentWithBrowseButton instead of accessing the underlying button via the deprecated getButton() method, which is scheduled for removal in IntelliJ 2026.1. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…el() Use JBColor.isBright() instead of the deprecated UIUtil.isUnderDarcula() and UIUtil.isUnderWin10LookAndFeel() methods, which are scheduled for removal in IntelliJ 2026.1. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
PluginId.findId() is scheduled for removal in IntelliJ 2026.1. Use PluginId.getId() which has the same signature and behavior. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…erListener Use TextFieldWithBrowseButton.addBrowseFolderListener(Project, FileChooserDescriptor) or addBrowseFolderListener(TextBrowseFolderListener) instead of creating BrowseFolderActionListener instances directly. The BrowseFolderActionListener constructor is scheduled for removal in IntelliJ 2026.1. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
… overload Use noteComponent(String, Function1) instead of the single-arg overload that is scheduled for removal in IntelliJ 261. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…load Use addBrowseFolderListener(Project, FileChooserDescriptor) instead of the deprecated addBrowseFolderListener(String, String, Project, FCD) that is scheduled for removal in IntelliJ 261. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…(DataKey) Use the existing ACTION_SOURCE DataKey instead of passing a raw String to DataContext.getData(). The String-based getData is scheduled for removal in IntelliJ 261. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Split into addConfiguration(settings) + setBeforeRunTasks() since the 4-arg addConfiguration is scheduled for removal in IntelliJ 261. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…nce() Use ModuleRootManager.getInstance(module) instead of the deprecated module.getComponent(ModuleRootManager.class) which is scheduled for removal in IntelliJ 261. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…rrentUIThemeLookAndFeel() The getCurrentLookAndFeel() method is scheduled for removal in IntelliJ 261. Use getCurrentUIThemeLookAndFeel() instead. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…sion Use new Notification(groupId, content, type) with setTitle() and setListener() instead of the deprecated 5-arg constructor that is scheduled for removal in IntelliJ 261. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…th 3-arg version Replace createNotification(title, subtitle, content, type) with createNotification(title, content, type) to fix scheduled-for-removal deprecation in IntelliJ 261. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
StdModuleTypes class is removed in IntelliJ 261. Use
ModuleTypeManager.getInstance().findByID("JAVA_MODULE") instead.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…ntInstallationID PermanentInstallationID.get() is scheduled for removal in IntelliJ 261. Use JetBrainsPermanentInstallationID.get() as the replacement. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…h interceptConnection() The intercept() method is deprecated with "Use coroutines" message. Replace with interceptConnection() which is the Kotlin suspend function equivalent. Since these are Java implementations that only do telemetry logging, return Boolean.TRUE synchronously to indicate the connection should proceed. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…ng) method implementation The getData method with String parameter is deprecated in IntelliJ 261. Removing the custom implementation allows the default super implementation to handle data retrieval.
… constructor Replace ExternalSystemTaskNotificationListenerAdapter() no-arg constructor with ExternalSystemTaskNotificationListener interface for IntelliJ 261 compatibility.
Replace TerminalView.getInstance() with TerminalToolWindowManager.getInstance() for IntelliJ 261 compatibility in SSH connection implementations.
Replace deprecated addExtraAction(AnActionButton) with addExtraAction(AnAction) by explicitly casting to AnAction for IntelliJ 261 compatibility.
…aActions Remove @OverRide annotation from createExtraActions() method as the base class method signature has changed in IntelliJ 261.
…override Replace deprecated UpdateInBackground interface with overriding getActionUpdateThread() returning ActionUpdateThread.BGT for IntelliJ 261 compatibility.
Replace deprecated ComponentsKt.noteComponent with ContextHelpLabel.create for IntelliJ 261 compatibility.
Temporarily disable HttpConfigurable proxy initialization due to deprecated API. Added TODO for migration to new ProxyConfiguration API in IntelliJ 261.
…ecated getData(String) Added support for both deprecated getData(String) and new getData(DataKey) methods to maintain compatibility during transition period in IntelliJ 261.
Removed empty deprecated projectOpened() method implementation from LSPProjectManagerListener for IntelliJ 261 compatibility.
Temporarily disable TextMate bundle unregistration due to deprecated TextMateSettings API. Added TODO for migration to new API in IntelliJ 261.
Replace deprecated JavaRunConfigurationProducerBase(ConfigurationFactory) constructor with no-arg constructor for IntelliJ 261 compatibility.
Comment out deprecated getButton().name assignment for IntelliJ 261 compatibility. The button name assignment is not critical for functionality.
Replace deprecated UISettings.addUISettingsListener() with message bus approach using UISettingsListener.TOPIC for IntelliJ 261 compatibility. Co-Authored-By: Claude Sonnet 4 <noreply@anthropic.com>
…duplicate key warning
…ion in AzureCosmosDbAccountParamEditor - SbtVersionOptionsPanel: upgrade Scala plugin dependency from 2024.2.5 to 2026.1.8, use Versions\$.MODULE\$.loadSbtVersions() directly instead of reflection - AzureCosmosDbAccountParamEditor: replace 3 FieldUtils.readField() calls with 1, use LocalDataSource.getSslCfg().myEnabled for SSL toggle instead of drilling into private UI fields via reflection - Only remaining reflection: DataInterchange.myConfigurable (no public API exists)
a8a3395 to
d88fa2f
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Fixes API compatibility issues reported by verifyPlugin for IntelliJ IDEA 2026.1 EAP.
Depends on: #11806
Changes (32 commits)
Deprecated API Replacements
Scheduled-for-Removal Fixes
Plugin Structure Fixes
Reflection Reduction
Verification Results