diff --git a/platform/core-api/src/com/intellij/openapi/application/ThreadingSupport.kt b/platform/core-api/src/com/intellij/openapi/application/ThreadingSupport.kt index 9b762bbe6738..58c7682c52e4 100644 --- a/platform/core-api/src/com/intellij/openapi/application/ThreadingSupport.kt +++ b/platform/core-api/src/com/intellij/openapi/application/ThreadingSupport.kt @@ -197,12 +197,6 @@ interface ThreadingSupport { @ApiStatus.Internal fun removeWriteLockReacquisitionListener(listener: WriteLockReacquisitionListener) - @ApiStatus.Internal - fun setLegacyIndicatorProvider(provider: LegacyProgressIndicatorProvider) - - @ApiStatus.Internal - fun removeLegacyIndicatorProvider(provider: LegacyProgressIndicatorProvider) - /** * Prevents any attempt to use R/W locks inside [action]. */ diff --git a/platform/locking.impl/src/NestedLocksThreadingSupport.kt b/platform/locking.impl/src/NestedLocksThreadingSupport.kt index 9f350d9d15fe..549b746ed7e5 100644 --- a/platform/locking.impl/src/NestedLocksThreadingSupport.kt +++ b/platform/locking.impl/src/NestedLocksThreadingSupport.kt @@ -9,6 +9,7 @@ import com.intellij.openapi.application.* import com.intellij.openapi.diagnostic.Logger import com.intellij.openapi.progress.Cancellation import com.intellij.openapi.util.text.StringUtil +import com.intellij.platform.locking.impl.listeners.LegacyProgressIndicatorProvider import com.intellij.platform.locking.impl.listeners.LockAcquisitionListener import com.intellij.util.ReflectionUtil import kotlinx.coroutines.* @@ -842,14 +843,14 @@ class NestedLocksThreadingSupport : ThreadingSupport { } @ApiStatus.Internal - override fun setLegacyIndicatorProvider(provider: LegacyProgressIndicatorProvider) { + fun setLegacyIndicatorProvider(provider: LegacyProgressIndicatorProvider) { if (myLegacyProgressIndicatorProvider != null) error("LegacyProgressIndicatorProvider already registered") myLegacyProgressIndicatorProvider = provider } @ApiStatus.Internal - override fun removeLegacyIndicatorProvider(provider: LegacyProgressIndicatorProvider) { + fun removeLegacyIndicatorProvider(provider: LegacyProgressIndicatorProvider) { if (myLegacyProgressIndicatorProvider != provider) error("LegacyProgressIndicatorProvider is not registered") myLegacyProgressIndicatorProvider = null diff --git a/platform/core-api/src/com/intellij/openapi/application/LegacyProgressIndicatorProvider.kt b/platform/locking.impl/src/listeners/LegacyProgressIndicatorProvider.kt similarity index 90% rename from platform/core-api/src/com/intellij/openapi/application/LegacyProgressIndicatorProvider.kt rename to platform/locking.impl/src/listeners/LegacyProgressIndicatorProvider.kt index 48264516aa29..db410cdf4de3 100644 --- a/platform/core-api/src/com/intellij/openapi/application/LegacyProgressIndicatorProvider.kt +++ b/platform/locking.impl/src/listeners/LegacyProgressIndicatorProvider.kt @@ -1,5 +1,5 @@ // Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -package com.intellij.openapi.application +package com.intellij.platform.locking.impl.listeners import org.jetbrains.annotations.ApiStatus @@ -14,4 +14,4 @@ interface LegacyProgressIndicatorProvider { interface LegacyProgressIndicator { fun checkCanceled() } -} +} \ No newline at end of file diff --git a/platform/platform-impl/src/com/intellij/openapi/application/impl/ApplicationImpl.java b/platform/platform-impl/src/com/intellij/openapi/application/impl/ApplicationImpl.java index 8f35d676df53..1231918849c7 100644 --- a/platform/platform-impl/src/com/intellij/openapi/application/impl/ApplicationImpl.java +++ b/platform/platform-impl/src/com/intellij/openapi/application/impl/ApplicationImpl.java @@ -46,6 +46,7 @@ import com.intellij.platform.diagnostic.telemetry.TelemetryManager; import com.intellij.platform.diagnostic.telemetry.helpers.TraceKt; import com.intellij.platform.locking.impl.IntelliJLockingUtil; import com.intellij.platform.locking.impl.NestedLocksThreadingSupport; +import com.intellij.platform.locking.impl.listeners.LegacyProgressIndicatorProvider; import com.intellij.platform.locking.impl.listeners.LockAcquisitionListener; import com.intellij.psi.util.ReadActionCache; import com.intellij.ui.ComponentUtil; @@ -394,7 +395,7 @@ public final class ApplicationImpl extends ClientAwareComponentManager implement getThreadingSupport().removeWriteIntentReadActionListener(myLockDispatcherListener); lock.removeLockAcquisitionListener(myLockDispatcherListener); getThreadingSupport().removeWriteLockReacquisitionListener(myLockDispatcherListener); - getThreadingSupport().removeLegacyIndicatorProvider(myLegacyIndicatorProvider); + lock.removeLegacyIndicatorProvider(myLegacyIndicatorProvider); //noinspection deprecation myDispatcher.getMulticaster().applicationExiting();