diff --git a/reference_guide/api_changes_list_2021.md b/reference_guide/api_changes_list_2021.md index c8dc49d97..7d1281583 100644 --- a/reference_guide/api_changes_list_2021.md +++ b/reference_guide/api_changes_list_2021.md @@ -380,7 +380,7 @@ Add implementation for `com.intellij.openapi.fileEditor.FileEditor.getFile()` : Project is now only accessible via `com.intellij.openapi.ui.playback.PlaybackContext.getProject()` since it may change during script execution. JSON Widget suppressor `com.intellij.json.jsonWidgetSuppressor` EP -: Override new method [`JsonWidgetSuppressor.isCandidateForSuppress(VirtualFile, Project)`](%gh-ic%/json/src/com/jetbrains/jsonSchema/extension/JsonWidgetSuppressor.java) for quick check in EDT before `suppressSwitcherWidget()` is called on background thread. +: Override new method [`JsonWidgetSuppressor.isCandidateForSuppress(VirtualFile, Project)`](%gh-ic%/json/src/com/jetbrains/jsonSchema/extension/JsonWidgetSuppressor.java) for quick check in [EDT](threading_model.md) before `suppressSwitcherWidget()` is called on a background thread. ### HTTP Client Plugin 2021.1 diff --git a/reference_guide/api_changes_list_2023.md b/reference_guide/api_changes_list_2023.md index e9de11005..eb4129c14 100644 --- a/reference_guide/api_changes_list_2023.md +++ b/reference_guide/api_changes_list_2023.md @@ -150,7 +150,7 @@ JsonPath library unbundled : Coroutine scope was added to track editor lifetime. `com.intellij.collaboration.ui.codereview.details.model.CodeReviewChangesViewModelBase` class removed -: Incorrect EDT-reliant implementation removed. +: Incorrect [EDT](threading_model.md)-reliant implementation removed. `com.intellij.collaboration.async.CoroutineUtilKt.DisposingScope(Disposable, CoroutineContext)` method removed : Use `com.intellij.collaboration.async.CoroutineUtilKt.disposingScope(CoroutineContext)` instead. diff --git a/topics/basics/plugin_structure/dynamic_plugins.md b/topics/basics/plugin_structure/dynamic_plugins.md index 8a17ac4e0..25b889335 100644 --- a/topics/basics/plugin_structure/dynamic_plugins.md +++ b/topics/basics/plugin_structure/dynamic_plugins.md @@ -56,7 +56,7 @@ Application, project, and module [services](plugin_services.md) declared with `o ## Code -> Loading and unloading plugins happens in EDT and under write action. +> Loading and unloading plugins happens in [EDT](threading_model.md) and under write action. > {style="note"} diff --git a/topics/basics/plugin_structure/plugin_components.md b/topics/basics/plugin_structure/plugin_components.md index cef0ad0c9..7a5c8dcd5 100644 --- a/topics/basics/plugin_structure/plugin_components.md +++ b/topics/basics/plugin_structure/plugin_components.md @@ -62,14 +62,14 @@ Implementation in [Kotlin](using_kotlin.md) is required because Java doesn't sup To execute code when a project is being opened, use one of these two [extensions](plugin_extensions.md): `com.intellij.postStartupActivity` -: [`StartupActivity`](%gh-ic%/platform/core-api/src/com/intellij/openapi/startup/StartupActivity.kt) for immediate execution on EDT. +: [`StartupActivity`](%gh-ic%/platform/core-api/src/com/intellij/openapi/startup/StartupActivity.kt) for immediate execution on [EDT](threading_model.md). Implement `DumbAware` to indicate activity can run in a background thread (in parallel with other such tasks). `com.intellij.backgroundPostStartupActivity` : [`StartupActivity.Background`](%gh-ic%/platform/core-api/src/com/intellij/openapi/startup/StartupActivity.kt) for execution with a 5-second delay in a background thread (2019.3 or later). -Any long-running or CPU-intensive tasks should be made visible to users by using `ProgressManager.run(Task.Backgroundable)`. -Access to indexes must be wrapped with [`DumbService`](indexing_and_psi_stubs.md#dumb-mode), see also [General Threading Rules](threading_model.md). +Any long-running or CPU-intensive tasks should be made visible to users by using `ProgressManager.run(Task.Backgroundable)` (see [](background_processes.md)). +Access to indexes must be wrapped with [`DumbService`](indexing_and_psi_stubs.md#dumb-mode), see also [](threading_model.md). See also [](ide_infrastructure.md#running-tasks-once). diff --git a/topics/reference_guide/custom_language_support/parameter_info.md b/topics/reference_guide/custom_language_support/parameter_info.md index 88a79e7a9..6a3c417a4 100644 --- a/topics/reference_guide/custom_language_support/parameter_info.md +++ b/topics/reference_guide/custom_language_support/parameter_info.md @@ -53,7 +53,7 @@ The initial phase describes what happens when no parameter info is currently dis 2. If the returned function call element is valid, the `showParameterInfo()` method is invoked. Implementations of this method usually just call `showHint()` of the `CreateParameterInfoContext` providing the offset at which the popup should appear. 3. For each item to show from step 1, the `updateUI()` method is called. - No heavy work is allowed in this method since it runs on EDT, and it should only update the UI representation using, e.g., + No heavy work is allowed in this method since it runs on [EDT](threading_model.md), and it should only update the UI representation using, e.g., `setUIComponentEnabled()` or `setupUIComponentPresentation()` of the provided `ParameterInfoUIContext`. 4. After that the following methods are called which will be explained in the next phase: `findElementForUpdatingParameterInfo()`, `updateParameterInfo()`, `updateUI()`.