"dumb mode" link title

This commit is contained in:
Yann Cébron 2024-03-12 16:47:56 +01:00
parent c664d883c1
commit bf4e6d9508
9 changed files with 13 additions and 13 deletions

View File

@ -114,7 +114,7 @@ See [](verifying_plugin_compatibility.md) for overview of API status.
| ![Internal API][internal] | Internal API | Annotated with [`@ApiStatus.Internal`](https://github.com/JetBrains/java-annotations/blob/master/common/src/main/java/org/jetbrains/annotations/ApiStatus.java), must not be used by 3rd party, see [](api_internal.md) | | ![Internal API][internal] | Internal API | Annotated with [`@ApiStatus.Internal`](https://github.com/JetBrains/java-annotations/blob/master/common/src/main/java/org/jetbrains/annotations/ApiStatus.java), must not be used by 3rd party, see [](api_internal.md) |
| ![Project-Level][project-level] | Project-Level Extension Point/Topic | <p>Can have [`Project`](%gh-ic%/platform/core-api/src/com/intellij/openapi/project/Project.java) as constructor parameter</p><p>Extension Point: Declared with `area="IDEA_PROJECT"`</p><p>Listener: registered in [`<projectListeners>`](plugin_configuration_file.md#idea-plugin__projectListeners)</p> | | ![Project-Level][project-level] | Project-Level Extension Point/Topic | <p>Can have [`Project`](%gh-ic%/platform/core-api/src/com/intellij/openapi/project/Project.java) as constructor parameter</p><p>Extension Point: Declared with `area="IDEA_PROJECT"`</p><p>Listener: registered in [`<projectListeners>`](plugin_configuration_file.md#idea-plugin__projectListeners)</p> |
| ![Non-Dynamic][non-dynamic] | Non-Dynamic Extension Point | Installation/update of plugin requires IDE restart ([](dynamic_plugins.md)) | | ![Non-Dynamic][non-dynamic] | Non-Dynamic Extension Point | Installation/update of plugin requires IDE restart ([](dynamic_plugins.md)) |
| ![DumbAware][dumb-aware] | `DumbAware` Extension Point | Implementations marked with [`DumbAware`](%gh-ic%/platform/core-api/src/com/intellij/openapi/project/DumbAware.java) will be processed during [](indexing_and_psi_stubs.md#dumb-mode) | | ![DumbAware][dumb-aware] | `DumbAware` Extension Point | Implementations marked with [`DumbAware`](%gh-ic%/platform/core-api/src/com/intellij/openapi/project/DumbAware.java) will be processed during [dumb mode](indexing_and_psi_stubs.md#dumb-mode) |
[deprecated]: https://img.shields.io/badge/-Deprecated-lightgrey?style=flat-square [deprecated]: https://img.shields.io/badge/-Deprecated-lightgrey?style=flat-square
[removal]: https://img.shields.io/badge/-Removal-red?style=flat-square [removal]: https://img.shields.io/badge/-Removal-red?style=flat-square

View File

@ -1,4 +1,4 @@
<!-- Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. --> <!-- Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -->
# PSI Performance # PSI Performance
@ -47,7 +47,7 @@ If the information you cache depends only on a subtree of the current PSI elemen
### Using `ProjectRootManager` as Dependency ### Using `ProjectRootManager` as Dependency
{id="projectRootManagerDependency"} {id="projectRootManagerDependency"}
Since 2024.1, the platform no longer increments root changes modification tracker on finish of [](indexing_and_psi_stubs.md#dumb-mode). Since 2024.1, the platform no longer increments root changes modification tracker on finish of [dumb mode](indexing_and_psi_stubs.md#dumb-mode).
If cached values use [`ProjectRootManager`](%gh-ic%/platform/projectModel-api/src/com/intellij/openapi/roots/ProjectRootManager.java) as dependency If cached values use [`ProjectRootManager`](%gh-ic%/platform/projectModel-api/src/com/intellij/openapi/roots/ProjectRootManager.java) as dependency
(without [`PsiModificationTracker`](%gh-ic%/platform/core-api/src/com/intellij/psi/util/PsiModificationTracker.java)) (without [`PsiModificationTracker`](%gh-ic%/platform/core-api/src/com/intellij/psi/util/PsiModificationTracker.java))
and at the same time depend on [indexes](indexing_and_psi_stubs.md), a dependency on and at the same time depend on [indexes](indexing_and_psi_stubs.md), a dependency on

View File

@ -26,7 +26,7 @@ The [](grouping_action.md) tutorial demonstrates three types of groups that can
## Action Implementation ## Action Implementation
An action is a class derived from the abstract class [`AnAction`](%gh-ic%/platform/editor-ui-api/src/com/intellij/openapi/actionSystem/AnAction.java). An action is a class derived from the abstract class [`AnAction`](%gh-ic%/platform/editor-ui-api/src/com/intellij/openapi/actionSystem/AnAction.java).
For actions available during [](indexing_and_psi_stubs.md#dumb-mode), extend [`DumbAwareAction`](%gh-ic%/platform/ide-core/src/com/intellij/openapi/project/DumbAwareAction.java). For actions available during [dumb mode](indexing_and_psi_stubs.md#dumb-mode), extend [`DumbAwareAction`](%gh-ic%/platform/ide-core/src/com/intellij/openapi/project/DumbAwareAction.java).
See also [](#useful-action-base-classes) below. See also [](#useful-action-base-classes) below.
The IntelliJ Platform calls methods of actions when a user interacts with a menu item or toolbar button. The IntelliJ Platform calls methods of actions when a user interacts with a menu item or toolbar button.

View File

@ -1,4 +1,4 @@
<!-- Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. --> <!-- Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -->
# Run Configurations # Run Configurations
@ -77,7 +77,7 @@ The actual run configurations are created in the `createConfiguration()` method
Configuration factory presentation is inherited from the containing configuration type. Configuration factory presentation is inherited from the containing configuration type.
If customization is needed, override the presentation methods in the factory class. If customization is needed, override the presentation methods in the factory class.
By default, configurations created by a given factory are not editable in [](indexing_and_psi_stubs.md#dumb-mode). By default, configurations created by a given factory are not editable in [dumb mode](indexing_and_psi_stubs.md#dumb-mode).
To enable editing them in Dumb Mode, return `true` from `isEditableInDumbMode()`. To enable editing them in Dumb Mode, return `true` from `isEditableInDumbMode()`.
### RunConfiguration ### RunConfiguration

View File

@ -1,4 +1,4 @@
<!-- Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. --> <!-- Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -->
# File-Based Indexes # File-Based Indexes
@ -64,7 +64,7 @@ Please see also [Improving indexing performance](indexing_and_psi_stubs.md#impro
Access to file-based indexes is performed through the [`FileBasedIndex`](%gh-ic%/platform/indexing-api/src/com/intellij/util/indexing/FileBasedIndex.java) class. Access to file-based indexes is performed through the [`FileBasedIndex`](%gh-ic%/platform/indexing-api/src/com/intellij/util/indexing/FileBasedIndex.java) class.
> Please note index access is restricted during [](indexing_and_psi_stubs.md#dumb-mode). > Please note index access is restricted during [dumb mode](indexing_and_psi_stubs.md#dumb-mode).
> >
{style="note"} {style="note"}

View File

@ -58,7 +58,7 @@ Must be one of `IDEA_APPLICATION` for Application (default), `IDEA_PROJECT` for
The plugin that contributes to the extension point will read those properties from the <path>plugin.xml</path> file. The plugin that contributes to the extension point will read those properties from the <path>plugin.xml</path> file.
If extension implementations are filtered according to [](indexing_and_psi_stubs.md#dumb-mode), the base class should be If extension implementations are filtered according to [dumb mode](indexing_and_psi_stubs.md#dumb-mode), the base class should be
marked with [`PossiblyDumbAware`](%gh-ic%/platform/core-api/src/com/intellij/openapi/project/PossiblyDumbAware.java) to highlight this. marked with [`PossiblyDumbAware`](%gh-ic%/platform/core-api/src/com/intellij/openapi/project/PossiblyDumbAware.java) to highlight this.
Base classes for extensions requiring a key: Base classes for extensions requiring a key:

View File

@ -93,7 +93,7 @@ should be implemented when whitespace matters in a language.
Note that parameter info works during indexing (using incomplete data) when the implementations also extend Note that parameter info works during indexing (using incomplete data) when the implementations also extend
[`DumbAware`](%gh-ic%/platform/core-api/src/com/intellij/openapi/project/DumbAware.java). [`DumbAware`](%gh-ic%/platform/core-api/src/com/intellij/openapi/project/DumbAware.java).
It is recommended to adapt tests for [](indexing_and_psi_stubs.md#dumb-mode) since the results might be surprising, It is recommended to adapt tests for [dumb mode](indexing_and_psi_stubs.md#dumb-mode) since the results might be surprising,
and more changes to the handler might be required for better results. and more changes to the handler might be required for better results.
Finally, language authors should be aware of the global Finally, language authors should be aware of the global

View File

@ -1,4 +1,4 @@
<!-- Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. --> <!-- Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -->
# Syntax and Error Highlighting # Syntax and Error Highlighting
@ -157,7 +157,7 @@ It uses the same [`AnnotationHolder`](%gh-ic%/platform/analysis-api/src/com/inte
To skip running specific `ExternalAnnotator` for given file, register [`ExternalAnnotatorsFilter`](%gh-ic%/platform/analysis-api/src/com/intellij/lang/ExternalAnnotatorsFilter.java) extension in `com.intellij.daemon.externalAnnotatorsFilter` extension point. To skip running specific `ExternalAnnotator` for given file, register [`ExternalAnnotatorsFilter`](%gh-ic%/platform/analysis-api/src/com/intellij/lang/ExternalAnnotatorsFilter.java) extension in `com.intellij.daemon.externalAnnotatorsFilter` extension point.
To enable running `ExternalAnnotator` during indexing in [](indexing_and_psi_stubs.md#dumb-mode), implement [`DumbAware`](%gh-ic%/platform/core-api/src/com/intellij/openapi/project/DumbAware.java) additionally (2023.3). To enable running `ExternalAnnotator` during indexing in [dumb mode](indexing_and_psi_stubs.md#dumb-mode), implement [`DumbAware`](%gh-ic%/platform/core-api/src/com/intellij/openapi/project/DumbAware.java) additionally (2023.3).
## Controlling Highlighting ## Controlling Highlighting

View File

@ -24,7 +24,7 @@ The [`SimpleFoldingBuilder`](%gh-sdk-samples%/simple_language_plugin/src/main/ja
Start by subclassing [`FoldingBuilderEx`](%gh-ic%/platform/core-api/src/com/intellij/lang/folding/FoldingBuilderEx.java) Start by subclassing [`FoldingBuilderEx`](%gh-ic%/platform/core-api/src/com/intellij/lang/folding/FoldingBuilderEx.java)
Note that `SimpleFoldingBuilder` also implements [`DumbAware`](%gh-ic%/platform/core-api/src/com/intellij/openapi/project/DumbAware.java), Note that `SimpleFoldingBuilder` also implements [`DumbAware`](%gh-ic%/platform/core-api/src/com/intellij/openapi/project/DumbAware.java),
which means the class is allowed to run in [](indexing_and_psi_stubs.md#dumb-mode), when indexes are in background update. which means the class is allowed to run in [dumb mode](indexing_and_psi_stubs.md#dumb-mode), when indexes are in background update.
> A folding builder must implement [`DumbAware`](%gh-ic%/platform/core-api/src/com/intellij/openapi/project/DumbAware.java) to function in this tutorial and pass tests. > A folding builder must implement [`DumbAware`](%gh-ic%/platform/core-api/src/com/intellij/openapi/project/DumbAware.java) to function in this tutorial and pass tests.
> >