mirror of
https://github.com/chylex/IntelliJ-Disable-Task-Contexts.git
synced 2025-05-25 17:34:07 +02:00
Do not use private APIs
This commit is contained in:
parent
997ea4b321
commit
8b4f1925f7
@ -1,24 +1,24 @@
|
||||
package com.chylex.intellij.disabletaskcontexts
|
||||
|
||||
import com.intellij.openapi.diagnostic.Logger
|
||||
import com.intellij.openapi.extensions.impl.ExtensionComponentAdapter
|
||||
import com.intellij.tasks.context.WorkingContextProvider
|
||||
|
||||
@Suppress("UnstableApiUsage")
|
||||
object WorkingContextExtensionChangeListener : Runnable {
|
||||
private val logger = Logger.getInstance("DisableTaskContextsPlugin")
|
||||
private val unregisterAllPredicate: (String, ExtensionComponentAdapter) -> Boolean = { _, _ -> false }
|
||||
|
||||
private var isRunning = false
|
||||
|
||||
override fun run() {
|
||||
if (!isRunning && WorkingContextProvider.EP_NAME.hasAnyExtensions()) {
|
||||
isRunning = true
|
||||
|
||||
val point = WorkingContextProvider.EP_NAME.point
|
||||
|
||||
try {
|
||||
WorkingContextProvider.EP_NAME.point.unregisterExtensions(unregisterAllPredicate, false)
|
||||
for (extension in point.extensions) {
|
||||
point.unregisterExtension(extension.javaClass)
|
||||
}
|
||||
|
||||
if (!WorkingContextProvider.EP_NAME.hasAnyExtensions()) {
|
||||
if (point.size() == 0) {
|
||||
logger.info("Unregistered task context providers.")
|
||||
}
|
||||
else {
|
||||
|
Loading…
Reference in New Issue
Block a user