Dmitry Jemerov
408c753837
Check that a file with .kt extension is actually a KtFile
...
#KT-22111 Fixed
2018-01-09 13:54:56 +01:00
Toshiaki Kameyama
3b212558e2
KT-21949 Please add a separate Color Scheme settings for properties synthesized from Java accessors ( #1458 )
2018-01-08 13:04:43 +01:00
Toshiaki Kameyama
266b40b654
KT-21974 Editor color scheme option for Kotlin typealias names ( #1457 )
2018-01-04 17:39:39 +01:00
Dmitry Jemerov
25ea53457e
Send source code in exceptions as attachments, not text (common cases)
...
#KT-17678 In Progress
2017-12-29 15:35:53 +01:00
Dmitry Jemerov
9a61abfb9f
Don't add null module info to list
...
EA-113650 - TCE: LazyModuleDependencies.getModulesWhoseInternalsAreVisible
2017-12-29 10:19:50 +01:00
Dmitry Jemerov
2c4180222a
Check if containing file is KtFile
...
EA-109460 - CCE: KtElementImplStub.getContainingKtFile
2017-12-29 10:19:50 +01:00
Dmitry Jemerov
254f766aaf
Take longer read action in forEachKotlinOverride()
...
EA-114124 - assert: CompositeElement.getChildrenAsPsiElements
2017-12-29 10:19:50 +01:00
Mikhail Glukhikh
73bca21f94
Allow using add modifier quick-fixes in batch mode #KT-21950 Fixed
2017-12-28 20:31:47 +03:00
Mikhail Glukhikh
95e7d29743
Minor: improve style in "operator to function"
2017-12-28 20:31:40 +03:00
Toshiaki Kameyama
52df70a576
Do not suggest replacing comparison to null with function call
...
So #KT-20620 Fixed
2017-12-28 20:31:38 +03:00
Pavel V. Talanov
dd32c4e66a
Revert minor semantic differences introduced in c030a047aa
...
Fix 'pull members up' and 'kotlin injected into kotlin' tests
2017-12-27 20:24:26 +03:00
Mikhail Glukhikh
56230420f8
AbstractApplicabilityBasedInspection: move visitor inside base class
2017-12-26 18:39:51 +03:00
Mikhail Glukhikh
3268189215
Cache intention inside IntentionBasedInspection
...
So intention is created only once.
Case with multiple intentions is no more allowed.
So #KT-21137 Fixed
2017-12-26 18:39:50 +03:00
Mikhail Glukhikh
67b78bce39
Introduce AbstractApplicabilityBasedInspection
...
Related to KT-21635, KT-21137
2017-12-26 18:39:46 +03:00
Pavel V. Talanov
c030a047aa
Fix getting ModuleResolver by element for script files
...
Fixes EA-105435 (some isntances)
JavaResolveExtension: refactor API
2017-12-25 20:12:51 +03:00
Pavel V. Talanov
2af0bf4c71
Drop JsProjectDetector
...
It leads to undesired behaviour
such as returning library source when only binaries are queried
It is redundant since js libraries do not include kotlin source files
(real binary format is used for this purpose for along time now)
2017-12-25 20:12:48 +03:00
Alexey Tsvetkov
fec2d08d22
Compile actual and expected declarations together
...
#KT-20840 fixed
2017-12-22 16:12:19 +03:00
Toshiaki Kameyama
9fad40b586
KT-21928 Structure view doesn't show default constructor
2017-12-22 15:27:10 +03:00
Alexander Podkhalyuzin
8203d1c3fe
Extracted Kotlin.JVM IDE into separate module
...
This change is required to have possibility to build plugin against
minor IDEs, which don't have Java. So we want to extract idea-jvm
2017-12-21 18:34:02 +03:00
Dmitry Jemerov
d3adf57145
Don't apply highlighting to zero-length elements
...
#KT-19820 Fixed
2017-12-20 12:02:04 +01:00
Alexey Sedunov
0ab924a298
Change Signature: Fix overrider search for suspend functions
...
#KT-21288 Fixed
2017-12-19 13:47:02 +03:00
Alexey Tsvetkov
3f082346ae
Do not set api version to language version when language version is null
...
#KT-21852 fixed
#KT-21574 fixed
2017-12-18 16:22:07 +03:00
Nikolay Krasko
f67eb90dfb
Don't show file root if it's same as the only declaration (KT-21200)
...
#KT-21200 Fixed
2017-12-18 11:50:50 +03:00
Nikolay Krasko
26413acf33
Refactoring: introduce method for reuse file for single class logic
2017-12-15 16:14:50 +03:00
Nikolay Krasko
5c33e4a32d
Minor: remove warnings in KotlinStructureViewFactory
2017-12-15 16:14:49 +03:00
Nikolay Krasko
c79386594d
Don't show useless fold icon in structure view (KT-17254, KT-21200)
...
#KT-21200 In Progress
#KT-17254 Fixed
2017-12-15 16:14:49 +03:00
Nikolay Krasko
1688f6fdbd
Minor: inline method in KotlinStructureViewElement and rewrite with when
2017-12-15 16:14:49 +03:00
Nikolay Krasko
7bf071b69f
Precount 'isPublic' property if descriptor available
2017-12-15 16:14:49 +03:00
Nikolay Krasko
c28a7d8f6d
Fix structure view auto-update (KT-21733, KT-19519)
...
- Fixed by subclassing PsiTreeElementBase instead of StructureViewTreeElement
- Warnings cleanup
#KT-19519 Fixed
#KT-21733 Fixed
2017-12-15 16:14:48 +03:00
Dmitry Jemerov
40184f053e
Don't invoke formatter while checking availability of intentions
...
#KT-21632 Fixed
2017-12-14 12:02:39 +01:00
Alexander Udalov
dc23a53116
Enumerate module roots directly in ModuleHighlightUtil2.getModuleDescriptor
...
This is faster than going through FilenameIndex which would call
GlobalSearchScope.accept for all "module-info.java" files in the
project, and there can be many of those.
Also see https://github.com/JetBrains/intellij-community/pull/670
2017-12-13 11:49:51 +01:00
Alexey Sedunov
38d3362bcb
Configuration: Support selection of "Latest stable" version vs specific one
...
#KT-21229 Fixed
2017-12-12 20:48:26 +03:00
Alexander Udalov
3c98274006
Move -Xjsr-305 argument parsing out of K2JVMCompilerArguments
...
To simplify K2JVMCompilerArguments, which is mostly a data holder
2017-12-11 18:02:37 +01:00
Dmitry Jemerov
846e50dcaa
Wording fix
2017-12-08 15:44:18 +01:00
Toshiaki Kameyama
270b41dc66
KT-13378 Provide ability to configure highlighting for !! in expressions and ? in types
2017-12-08 15:44:18 +01:00
Denis Zharkov
4ed6928e6b
Avoid building stubs in KtFile::getClasses for compiled files
...
In Gradle, JavaPsiFacade finds Kotlin compiled files as KtFile instances
and tries to obtain classes from them.
And while it returns an empty array anyway, it starts building
unnecessary stub when calling `isScript`
2017-12-07 12:53:33 +03:00
Denis Zharkov
ac56965a99
Do not force loading all kt-files inside LazyPackageDescriptor constructor
...
Effectively it leads to all stubs being built for any once used package
The idea is that they only were used for FILE_TO_PACKAGE_FRAGMENT
that is mostly read in backend and rarely in the IDE, so we can replace
its usages with searching through related package-fragments
2017-12-07 12:53:33 +03:00
Denis Zharkov
d655c4075c
Introduce index for the set of top-level names by package
...
It should help with actual loading of all the stubs for all declarations
in the package on every access when it's implemented through
`getDeclarations()`
2017-12-07 12:53:33 +03:00
Denis Zharkov
2d82cb936e
Fix potential memory leak in light-classes
...
The problem is that they might indirectly retain a reference to an
obsolete ResolverForProject (it becomes outdated after out of block
modification).
The best solution would be to avoid preserving jvm-related diagnostics
(that are only used once to report them when highlighting, and exactly
they retains an obsolete resolve session)
But it seems that this may lead to a deep light-classes refactoring and
the temporary fix is storing diagnostics themselves in a CachedValue
bound to out of block modification tracker. There're no guarantees that
this would help, since CachedValue anyway is based on soft-reference
that is not the first thing GC collects
2017-12-07 12:53:33 +03:00
Denis Zharkov
f1cbf21f96
Simplify LazyLightClassDataHolder
...
- Use only stubs instead of full results in LazyLightClassData
- Store only stubs for inexactStub
2017-12-07 12:53:33 +03:00
Alexey Sedunov
e1ed74008f
Rename: Fix exception on attempt to rename KtConstructorDelegationReference
...
#KT-21536 Fixed
2017-12-06 14:17:56 +03:00
Alexey Sedunov
ec85b708c9
Misc: Use delegate with predefined name for fake light methods
...
#KT-21414 Fixed
2017-12-06 14:17:56 +03:00
Yan Zhulanow
3d1ca61f9f
Kapt: Remove artificial KaptError exception on errors from annotation processor (KT-21262)
2017-12-01 22:53:20 +09:00
Alexey Sedunov
c8d9f9ac50
Refactoring: Rename copyable property delegates for PsiElement
2017-11-29 12:00:25 +03:00
Alexey Sedunov
9d482bbbb1
Data Inflow: Show composite assignments
...
#KT-19112 Fixed
2017-11-27 21:19:22 +03:00
Simon Ogorodnik
236ba1d2f2
Refactor PerModulePackageCacheService to fix various problems
...
Original issue here - structure of VfsEvents,
when directory gets deleted, we receive only VFileDeleteEvent
for directory, but not it's content, so we should invalidate
all modules in which sources this directory located, and all
modules that located in such directory
Second problem - When VirtualFile was deleted it is impossible to
get ModuleInfo for it using getModuleInfoByVirtualFile
Third problem - stale references in cache, due cycle dependency
#KT-20987 Fixed
2017-11-22 16:07:34 +03:00
Nikolay Krasko
d2aabe076d
Refactoring: extract jar names in PathUtil and use them in artifacts
2017-11-21 01:11:01 +03:00
Denis Zharkov
91730e1a9e
Do not run search for operator-like names in inspections
...
It might be rather expensive to search componentN's usages in the whole project
2017-11-20 18:33:46 +03:00
Mikhail Glukhikh
4c583c5a61
Catch InvalidModuleException from getModality() in icon provider
...
Related to KT-20986
2017-11-18 12:38:25 +03:00
Dmitry Jemerov
64a8008a8a
Add icon for multiplatform projects, update JS icon
...
#KT-19824 Fixed
2017-11-17 13:13:04 +01:00