Dmitry Jemerov
8f38d03b48
Indicate vararg parameters in Goto Symbol presentation
...
#KT-17899 Fixed
2017-05-18 21:02:24 +02:00
Nikolay Krasko
14c343de35
Enable auto-indent in multiline strings when caret is before interpolation
...
#KT-17849 Fixed
2017-05-18 20:00:18 +03:00
Nikolay Krasko
251a0270a4
Make auto-indent work for multiline string with injection (KT-17942)
...
#KT-17942 Fixed
2017-05-18 20:00:18 +03:00
Nikolay Krasko
0551659281
Don't indent to unrelated closing quote (KT-17894)
...
#KT-17894 Fixed
2017-05-18 20:00:18 +03:00
Nikolay Krasko
0cd3e4f3a4
Minor: JetFile -> KtFile
2017-05-18 20:00:17 +03:00
Alexey Sedunov
0994474e87
Presentation: Fix NPE on functional type rendering
...
#KT-17638 Fixed
2017-05-18 14:22:40 +03:00
Alexey Sedunov
a80fb6f20f
Copy: Report module accessibility conflicts
2017-05-18 14:22:39 +03:00
Pavel V. Talanov
55721e4f16
Test not creating resolvers for modules that have no relevant packages
2017-05-16 22:15:06 +03:00
Pavel V. Talanov
798c80ed07
Use wrappers around java.util.* to emulate kotlin.collection.* behaviour
...
Backend: If kotlin class extends kotlin.collection.List
write it as it's super interface (light class mode only)
IDE: Provide wrapper classes to java resolve
that try to emulate backend behaviour
For example if kotlin class implements kotlin.collections.Map,
we provide a superinterface that has abstract 'getEntries' method
and 'entrySet' method that is considered default.
In reality all those methods are generated in the class itself.
In IDE supporting this case without hacks is not feasible performance-wise
since kotlin.collection.* may not be an immediate supertype and we need
to compute all supertypes just to calculate own methods of the class
2017-05-16 22:01:03 +03:00
Mikhail Glukhikh
51af18608f
AbstractLocalInspectionTest: add LANGUAGE_VERSION support
...
Related to KT-17164
2017-05-16 20:44:12 +03:00
Mikhail Glukhikh
9990550429
Introduce inspection "replace arrayOf with literal" #KT-17164 Fixed
2017-05-16 20:44:11 +03:00
Dmitry Neverov
bf4e69e17f
Make semicolon in loop with empty body not redundant
...
So #KT-12805 Fixed
2017-05-16 16:43:28 +03:00
fitermay
e30b9758f4
Introduce action to add missing when branches on sealed class
...
Made via diagnostics NON_EXHAUSTIVE_WHEN_FOR_SEALED_CLASS
with INFO severity and quick-fix
So #KT-17580 Fixed
2017-05-16 16:43:27 +03:00
Alexey Sedunov
1072495001
Copy: Support top-level declarations
2017-05-16 13:10:41 +03:00
Alexey Sedunov
4c1c1a989a
Copy: Support multiple classes in the same file
2017-05-16 13:10:40 +03:00
Alexey Sedunov
92446df14a
Copy: Support class copying
...
#KT-8180 Fixed
#KT-9054 Fixed
2017-05-16 13:10:39 +03:00
Alexey Sedunov
f2bb6e4dac
Rename: Support import aliases
...
#KT-4379 Fixed
2017-05-16 13:10:36 +03:00
Alexey Sedunov
3c94184de9
Rename: Support labeled expressions
...
#KT-7107 Fixed
2017-05-16 13:10:34 +03:00
Dmitry Jemerov
675305fef3
Don't highlight 'this' references as deprecated
...
#KT-17613 Fixed
2017-05-15 14:57:52 +02:00
Dmitry Neverov
cd24adac32
Detect redundant 'is' check
...
#KT-14187 Fixed
2017-05-15 11:24:35 +03:00
Nikolay Krasko
861cac5b52
Better indent in multi-line strings (KT-17849)
...
Inspired by MultilineStringEnterHandler from https://github.com/JetBrains/intellij-scala
https://github.com/JetBrains/intellij-scala/blob/edb741f344afff063197b406ca0c7c266a26c436/src/org/jetbrains/plugins/scala/editor/enterHandler/MultilineStringEnterHandler.scala
#KT-17849 Fixed
2017-05-12 17:34:05 +03:00
Mikhail Glukhikh
a1e00ed9f1
Don't suggest "if to ?." without else when used in expression position
2017-05-11 20:47:16 +03:00
Mikhail Glukhikh
326d850760
Use "if-then to" even for 'if (arg != null) arg' removing 'if'
2017-05-11 20:47:10 +03:00
Mikhail Glukhikh
977d8e1cd7
If to safe access: fix message when no dot calls are available
...
Now "Replace 'if' with safe cast" is suggested
2017-05-11 20:47:04 +03:00
Mikhail Glukhikh
66c5717adc
Refactoring of IfThen: ToDoubleBang / ToElvis / ToSafeAccess
...
Some common actions were extracted to IfThenUtils.kt
Use consistent logic in all three intentions
Also fixes potential PSI consistency problems in conversions dot->safe calls
2017-05-11 20:46:11 +03:00
Dmitry Neverov
fd6d1520c7
Convert 'if' with 'is' check to 'as?' with safe call #KT-17054 Fixed
2017-05-11 20:46:05 +03:00
Mikhail Glukhikh
6523f237a6
Test fix (I hope so) from parameter info group
2017-05-11 16:38:51 +03:00
Kirill Rakhman
a8b2d3b4e8
Add inspection to detect copy() calls in a data class without named arguments
...
So #KT-17660 Fixed
2017-05-10 17:43:44 +03:00
Dmitry Jemerov
9c4f897d31
Index properties defined in primary constructor
...
#KT-15029 Fixed
2017-05-10 14:27:28 +02:00
Dmitry Jemerov
d1893cfa5f
Don't highlight entire complex callee expression as call
...
If an expression returns something that has invoke() defined on it,
this entire expression can act as a callee. If we highlight it, this
will suppress more useful highlighting such as string literals.
#KT-16159 Fixed
2017-05-10 14:27:25 +02:00
Dmitry Jemerov
c778e0454d
Show line markers for suspending iteration
...
#KT-16803 Fixed
2017-05-10 14:27:23 +02:00
Dmitry Jemerov
baa43a2a55
Show line markers for sealed classes
...
#KT-16755 Fixed
2017-05-10 14:27:22 +02:00
Dmitry Jemerov
66ce2a6998
Render anonymous objects in Show Expression Type
...
#KT-17304 Fixed
2017-05-10 14:25:03 +02:00
Mikhail Glukhikh
382bf9a500
ConvertReferenceToLambda status refactoring
...
Intention is not registered now; inspection is enabled by default now,
but has highlight level of "No highlighting"
2017-05-10 14:56:38 +03:00
Mikhail Glukhikh
759e6643c6
ConvertLambdaToReference refactoring
...
Intention is not registered now; inspection is enabled by default now,
but has highlight level of "No highlighting"
Inspection does not depend on text length now
So #KT-14335 Fixed
2017-05-10 14:56:37 +03:00
Mikhail Glukhikh
1d722e01f0
Get rid of local version of RemoveModifierFix
2017-05-10 14:56:36 +03:00
Alexey Sedunov
f70bac019a
Change Signature: Fix TypeInfo comparison
...
#KT-13437 Fixed
2017-05-10 14:49:53 +03:00
Alexey Sedunov
8bbf8e185a
Move: Filter out usages with visibility error before refactoring
...
If declaration is already invisible before move,
no visibility conflict should be reported
#KT-17571 Fixed
2017-05-10 14:49:52 +03:00
Alexey Sedunov
0a5f9d8181
Move: Specify conflict containing declaration more precisely
...
Also do not render class fqname for member declarations
#KT-17547 Fixed
2017-05-10 14:49:51 +03:00
Dmitry Jemerov
4b811a3639
Fix tests
2017-05-09 11:50:31 +02:00
nd
e20e097a63
Stricter type checks in 'convert to range' intention ( #1073 )
...
#KT-17079 #KT-17762 Fixed
2017-05-09 10:31:32 +03:00
Nadia Humbert-Labeaumaz
e76f1acc0b
Remove "Move to class body" intention for annotation parameters ( #1076 )
...
#KT-17708 Fixed
2017-05-09 10:27:37 +03:00
Yuli Fiterman
99b1bb98dc
KT-7848: Literal copy/paste processor for Kotlin ( #1074 )
...
* KT-7848 Initial implementation of literal copy/paste processor for Kotlin
* KT-7847: Tests
* KT-7847: fix issues caught in unit tests with recognizing invalid template entries
* KT-7847: check for KtFile
* KT-7847: fix capitalization for test data file names
* KT-7847: Initial changes according as per review
2017-05-08 17:18:28 +03:00
Kirill Rakhman
8e00af5642
Add intention to convert top level val with object expression to object declaration ( #974 )
...
* Add intention to convert top level val with object expression to object
Fixes #KT-14137
* fix intention description
2017-05-08 16:35:03 +03:00
nd
93b5eec71e
Convert to secondary constructor is not applicable to data classes ( #1071 )
...
#KT-15942 Fixed
2017-05-08 16:24:37 +03:00
nd
c9f475b402
Detect redundant semicolon before empty import list ( #1072 )
...
#KT-16577 Fixed
2017-05-08 16:14:22 +03:00
shiraji
56d712a02a
Introduce quick-fix adding label to 'return' in closures #KT-16851 Fixed
2017-05-05 23:27:10 +03:00
Denis Zharkov
6e114a90dc
Adjust debugger to the new suspend function strategy
...
Now it's impossible to determine by descriptor if there is
a state machine for function, but at the same time
it doesn't really matter here since there is no LINENUMBERs
in doResume of continuation implementations for named suspend
functions
#KT-17585 Fixed
#KT-16603 Fixed
2017-05-05 14:14:38 +03:00
Kirill Rakhman
cd07aea5e3
Add quickfix for adding 'lateinit'
...
Fixes #KT-17650
2017-05-05 11:09:07 +03:00
qx
f6fe1c50c2
Used ConvertMemberToExtensionIntention in MigrateExternalExtensionFix instead of manually creating extension method
2017-05-04 16:11:17 +03:00