Commit Graph

21248 Commits

Author SHA1 Message Date
Andrei Efanov
7fd8f8c401 refactor: introduce NotNull annotations to BaseElementAtCaretIntentionAction methods
GitOrigin-RevId: 20fde7acc6856d13b67d52d6b4841dfbc158e652
2023-08-22 17:10:53 +00:00
Mikhail Pyltsin
d173875ae9 IJ-CR-112205 [java-completion] IDEA-324073 Complete static methods with the first argument as qualifier
- rename collectors

GitOrigin-RevId: 7426fca2b5ab952276d6489be5f1572ca0885b23
2023-08-22 10:01:53 +00:00
Mikhail Pyltsin
671f9d52be IJ-CR-112205 [java-completion] IDEA-324073 Complete static methods with the first argument as qualifier
- added collectors

GitOrigin-RevId: 1e0d3e47c7a89d3bf07c766e919bea79245c05fa
2023-08-21 15:41:37 +00:00
Alexey Kudravtsev
e53b52f198 cleanup
GitOrigin-RevId: 6d5b643d0efe15ef76c190e0772baba0683a3091
2023-08-21 13:40:17 +00:00
Leonid Shalupov
70244a28f8 IDEA-304699 pass data contexts explicitly
GitOrigin-RevId: 99536bfde6300ab04c18c37e9f7f28602c45cedb
2023-08-19 18:38:27 +00:00
Mikhail Pyltsin
865e681dab IJ-CR-112205 [java-completion] IDEA-324073 Complete static methods with the first argument as qualifier
- more accurate with Class name and package
- added javadoc
- deleted fus collector, new one will be added

GitOrigin-RevId: 67158280894a6280fdae2523d42aa9719b66317e
2023-08-18 19:13:39 +00:00
Tagir Valeev
79b66e1879 [java-inspection] IDEA-324051 Inspections to migrate to sequenced collections (Java 21)
GitOrigin-RevId: bd008786ab983b8e8f3966d182da3be1ca9dcb55
2023-08-18 19:11:48 +00:00
Bas Leijdekkers
a19b0e5b51 Java: allow dollar signs in class name when Navigating to Symbol (IDEA-326383)
GitOrigin-RevId: 566a20418c4d15902ba9233fae32f7823ea9d89a
2023-08-18 15:30:01 +00:00
Nikita.Skvortsov
7884f01741 [gradle] Resolve external annotations using Workspace Model API IDEA-322079
Perform only one (optional) write action when resolving external annotations.

GitOrigin-RevId: 7ac8d106c2c2a877528651f85e51955b0825c3c1
2023-08-18 15:27:36 +00:00
Mikhail Pyltsin
a4d0f61b00 IJ-CR-113041 [java-intentions] IDEA-327634 CreateSealedClassMissingSwitchBranchesFix support generics
- simplify logic
- try to return some generics even if other cases can be converted

GitOrigin-RevId: ba76966068b809a3438315014da8809384988ece
2023-08-18 10:46:15 +00:00
Tagir Valeev
dbccf5f59b [java-inspections] Delete switch branch when guard is false
Part of IDEA-326939 Support multi-pattern switch labels that define no variables

GitOrigin-RevId: 6d089c7e9f705a28f29376f1208ed39d4c8aa881
2023-08-18 08:18:08 +00:00
Tagir Valeev
efbff7c99c [java-highlighting] Move guard expression to switch label
Part of IDEA-326939 Support multi-pattern switch labels that define no variables

GitOrigin-RevId: c236438af58e1c74a2bf12a5985b33cedadb9cbb
2023-08-18 08:18:06 +00:00
Yuriy Artamonov
10167ae72d [performance] IDEA-326893 Do not trigger parsing of injected fragments from InjectedReferencesContributor
GitOrigin-RevId: 71dab268fabd42786d1330898c23fd9fe06e70ea
2023-08-16 20:54:52 +00:00
Alexey Belkov
a34bfe3d47 Apply Kotlin inspection "Join declaration and assignment" in some places
GitOrigin-RevId: f1faf49699509980900ea1a6d3349e822c4f0c64
2023-08-16 15:10:50 +00:00
Vladimir Krivosheev
75fa469f6e use project.disposed condition
GitOrigin-RevId: 4412ed024ae0c600789fcd0448af0fbbfc1f2158
2023-08-15 12:32:25 +00:00
Vladimir Krivosheev
68f9cc904c cleanup
GitOrigin-RevId: 83794d4bf1782372b0d7025d648938be59387558
2023-08-15 12:32:23 +00:00
Vladimir Krivosheev
5418192cb2 IDEA-328187 lazy icon
GitOrigin-RevId: 800bce1ba40043978c5059bc01bfe76daf4fa1d3
2023-08-15 09:33:35 +00:00
Vladimir Krivosheev
fbe3606644 IDEA-328187 cleanup
GitOrigin-RevId: b256c59f9c9f720ce2105eda968a167007e450fb
2023-08-15 09:33:31 +00:00
Mikhail Pyltsin
19bb491958 [java-intentions] IDEA-327634 CreateSealedClassMissingSwitchBranchesFix support generics
- reuse GenericsUtil.getExpectedGenericType

GitOrigin-RevId: 1c5090374469a7b6d3a78d9bdb76c2f900b8dcc4
2023-08-14 11:07:52 +00:00
Mikhail Pyltsin
4fb2e28c3e [java-intentions] IDEA-314730 Not propose to convert to factory for records
- there is no point as its constructor is always public

GitOrigin-RevId: fc071e9902ec9aff12874eb99a7aa5ca53b1b1be
2023-08-11 21:40:36 +00:00
Konstantin Aleev
3f86ee66fb [spring] IDEA-328151 collect modulith library usage statistics
GitOrigin-RevId: 7c39f23ced64341d75709d402f260e39794073e2
2023-08-11 16:36:42 +00:00
Izmar Verhage
06190372c4 Deprecate AbstractStubIndex::get and migrate usages
In this commit we implement a logical implication of the fact
that StubIndex::get is deprecated, combined with the fact that
AbstractStubIndex::get is not deprecated but calls
StubIndex::get with the exact same arguments it received. The
absence of deprecation of AbstractStubIndex::get obfuscates
the fact that we want to phase out StubIndex::get calls.

Apart from deprecating said method, we add some convenience
methods in AbstractStubIndex inheritors that ensure a few things:
- The not-deprecated and preferred StubIndex::getElements is
  called with appropriate arguments, including a properly
  specialised requiredClass argument.
- Shorter syntax and DRY: only 3 arguments are required to pass
  into the convenience method, whereas getElements requires 2
  more. These 2 arguments are fields of the AbstractStubIndex
  inheritor, so it makes little sense to get them from there
  and pass them into StubIndex::getElements everywhere.

Wherever we can, these convenience methods are now used.

If you have access to JetBrains internal resources, also see:
https://jetbrains.team/p/ij/reviews/112930/timeline
https://jetbrains.slack.com/archives/CMDBCUBGE/p1691509451975689

GitOrigin-RevId: c51ef4de44aa85841799640b1ece9d291208dc69
2023-08-11 16:14:17 +00:00
Louis Vignier
89cfc1c9fc [java-highlighting] Report only semicolons between import statements
IJ-CR-110702

GitOrigin-RevId: d30e7021a979e4fc1b0ad5ce5078c5a8d805858a
2023-08-11 14:51:50 +00:00
Louis Vignier
fef81252d6 [java-highlighting] Update redundant semicolon warnings
IJ-CR-110702

GitOrigin-RevId: 12ecc516040a1caa05609ffce0c6bbd9d13c116c
2023-08-11 14:51:47 +00:00
Mikhail Pyltsin
a14cac2a94 [java-generation] IDEA-324426 SlowOp with JavaOverrideImplementMemberChooser
- showJavaOverrideImplementChooser, container can be null

GitOrigin-RevId: 0cd4b8c80c8e186b12877d2baa9862e0741b678d
2023-08-11 13:54:37 +00:00
Mikhail Pyltsin
584d755d71 [java-intentions] IDEA-327634 CreateSealedClassMissingSwitchBranchesFix support generics
- try to calculate generics for generic sealed classes using a selector type

GitOrigin-RevId: 80fafc8f359a8841814f0e13f87f67d4e81039cb
2023-08-11 13:54:34 +00:00
Mikhail Pyltsin
d60be7afdc [java-generation] IDEA-324426 SlowOp with JavaOverrideImplementMemberChooser
- Creation of JavaOverrideImplementMemberChooser divided into two parts: preparation (which can be run in background thread) and creation (which must be run in EDT)
- PsiDocCommentOwnerMemberChooserObject. All works with PSI do in advance

GitOrigin-RevId: cbd1a81708c85a4d18fe7b92d6a445249160b4b3
2023-08-11 13:54:30 +00:00
Pavel Porvatov
e53f9ce8a4 [Kotlin UI DSL] Ported CodeStyleImportsPanel to Kotlin UI DSL (removed .form)
GitOrigin-RevId: 21a43daf3b028665d942619c1fa2c1fd0d8070d3
2023-08-11 12:28:45 +00:00
Pavel Porvatov
f1518b87ee [Kotlin UI DSL] Ported CodeStyleImportsPanel to Kotlin UI DSL (removed usage of deprecated API)
GitOrigin-RevId: e844dbffc482cb7be69a5f61b67b6f63aa9e98fa
2023-08-11 12:28:42 +00:00
Mikhail Pyltsin
4d1d48cbb2 [java-completion] IJ-CR-112205 IDEA-324073 Complete static methods with the first argument as qualifier.
- use only one cache per time
- rewrite using skipClasses

GitOrigin-RevId: 04a59075c886bf6daca6a3c9e18aec2ecefbfd0b
2023-08-11 09:40:53 +00:00
Mikhail Pyltsin
58873c2fd2 [java-completion] IJ-CR-112205 IDEA-324073 Complete static methods with the first argument as qualifier.
- rewritten caches to use static for java
- added tests
- not qualified if there is static important
- smart completion
- more accurate compare types
- take into account SPACE_AFTER_COMMA
- check cancel more often

GitOrigin-RevId: 17a3f093dfd7930f0b827f9cdbc1ef8c95cf86cb
2023-08-10 15:40:11 +00:00
Sergei Tachenov
8ce093af49 IDEA-319881, EA-831741 Fix slow ops in isAlwaysExpand
An easy fix, just precompute the value in updateImpl and store for later use.

Increased memory consumption shouldn't be a big deal since it's
just a single boolean.

GitOrigin-RevId: 31539571ed8d702c9296b63f8121a8a30ecdcee2
2023-08-09 22:50:50 +00:00
Mikhail Pyltsin
674994780e [java-completion] move highlighting from LookupCellRenderer.java to MethodTags.java
GitOrigin-RevId: b1f3dde3ebab06618706e570daec0ca1c364b464
2023-08-09 18:02:00 +00:00
Tagir Valeev
9e8e549e73 [java] getSignatureNonCodeAnnotations: improve performance (IDEA-327851)
Do not query and resolve code annotations, as we need non-code ones only

GitOrigin-RevId: cf817b33f8afd51637a90dc9eb5a1ca7e61d42c2
2023-08-09 17:47:29 +00:00
Yuriy Artamonov
7618384e65 [java] IDEA-327851 NonCodeAnnotationsLineMarkerProvider runs slow in fast line markers pass
GitOrigin-RevId: a5d1ff7027c669208d99cc4ef40b1827cffef0b7
2023-08-08 21:02:36 +00:00
Andrei Efanov
1c14567d3f fix: false positive SlowOperations assertion (GO-15139)
GitOrigin-RevId: f199e7cb3d38b446a38c478a5f34a3faafb64101
2023-08-08 10:00:52 +00:00
Mikhail Pyltsin
2ba4582735 [java-highlighting] [java-inspections] IDEA-327632
Conversion to enhanced switch produces incorrect code.

- Added checks that branches don't have a fast exit

GitOrigin-RevId: 33c6cffa421a3b0c3c5b9f9f1ea29127c7a99d29
2023-08-05 21:41:20 +00:00
Bas Leijdekkers
5ca7339356 Java: don't insert unnecessary space in string templates when formatting (IDEA-321466)
GitOrigin-RevId: 196fa8dfc94555bf9554fb830aad1aa1dd0dcbf3
2023-08-04 19:58:15 +00:00
Bas Leijdekkers
599fb6bf19 Java: update "Unnecessarily escaped character" inspection for string literals (IDEA-326944)
GitOrigin-RevId: 49792b6510b8deaf20e49c509c948ba51f508de1
2023-08-04 19:58:12 +00:00
Tagir Valeev
3204f9d239 [java-completion] NormalCompletionTest: use Java 21; also fix case label completion with colon char
GitOrigin-RevId: 84169987b62cb0a1d8bac137f0044ff89e51a7d9
2023-08-04 16:44:05 +00:00
Tagir Valeev
13cf92eb7f [java-inspections] ConstantExpressionInspection: minor fixes
1. Disable for literals
2. Checkbox description moved to the form

GitOrigin-RevId: 48303e0c704ef9db5e09f64f34d3ee32d2743194
2023-08-04 15:20:12 +00:00
Bas Leijdekkers
7aece58237 Java: update "Copy string concatenation text to the clipboard" intention for strinng templates (IDEA-326944)
GitOrigin-RevId: 50fc671c52813f67616cabb634cbe90a961a4982
2023-08-04 14:23:31 +00:00
Bas Leijdekkers
268eace7b8 Java: fix "Copy string concatenation text to the clipboard" intention regression
GitOrigin-RevId: 0c35a4f8f20fd96a9529f8addd76dda770093642
2023-08-04 01:23:04 +00:00
Bas Leijdekkers
8b353e8997 java: "Seal class" intention should not be available on annotation interface (IDEA-327298)
GitOrigin-RevId: 1051943ab071973c6ff462eb2270b2bc42c6393a
2023-08-02 23:54:13 +00:00
Bas Leijdekkers
b01b60a8a2 java: "Add Javadoc" intention should not be available on local classes (IDEA-327296)
GitOrigin-RevId: c299d811b9e4a3f532003cc351531787c9574000
2023-08-02 23:54:10 +00:00
Bas Leijdekkers
d5e0643962 java: don't generate uncompilable code in "Create subclass" intention (IDEA-327254)
GitOrigin-RevId: ef1718bee6d9d9ed9886b1a02cd9c6be4aee68f7
2023-08-02 23:54:07 +00:00
Tagir Valeev
87b3de1d23 [code-style] Better support local settings; use in BindFieldsFromParametersAction
Support local settings inside CodeStyleSettingsManager.getCurrentSettings
Local settings have priority over temporary settings

GitOrigin-RevId: e9033336482f116115f1ff356bdb979ded398bed
2023-08-02 21:04:58 +00:00
Tagir Valeev
75f3bf6de4 [java-inspections] CatchMayIgnoreExceptionInspection: remove unused method (IDEA-321474)
GitOrigin-RevId: 2dc0ec448b9e058c70a354d29988cd24ad48c614
2023-08-02 21:04:51 +00:00
Tagir Valeev
f4d2f31cbc [java-intentions] CreateFieldOrPropertyFix: ModCommand
GitOrigin-RevId: ea48c319d226b2040641ec2df059177f5e5f3426
2023-08-01 13:06:32 +00:00
Bas Leijdekkers
bd4417426a Java: only highlight different parameter name when overloaded method has less parameters (IDEA-325428)
for "Parameter name differs from parameter in overridden or overloaded method" inspection

GitOrigin-RevId: 2d4bb4d4136119c51320de0338c464aff768972d
2023-08-01 11:58:17 +00:00