From df5ec5c218b71a9c9fab718113321ef9448cbb2f Mon Sep 17 00:00:00 2001 From: Vadim Brilyantov Date: Wed, 5 Dec 2018 17:27:52 +0300 Subject: [PATCH] report stats for pullUp/pushDown refactorings tmp --- .../idea/refactoring/pullUp/KotlinPullUpHandler.kt | 14 ++++++++++++++ .../refactoring/pushDown/KotlinPushDownHandler.kt | 14 ++++++++++++++ .../rename/RenameKotlinImplicitLambdaParameter.kt | 4 ++-- libraries/stdlib/src/kotlin/util/KotlinVersion.kt | 2 +- 4 files changed, 31 insertions(+), 3 deletions(-) diff --git a/idea/src/org/jetbrains/kotlin/idea/refactoring/pullUp/KotlinPullUpHandler.kt b/idea/src/org/jetbrains/kotlin/idea/refactoring/pullUp/KotlinPullUpHandler.kt index 219b8028ce9..d98d0c6e0dc 100644 --- a/idea/src/org/jetbrains/kotlin/idea/refactoring/pullUp/KotlinPullUpHandler.kt +++ b/idea/src/org/jetbrains/kotlin/idea/refactoring/pullUp/KotlinPullUpHandler.kt @@ -16,11 +16,14 @@ package org.jetbrains.kotlin.idea.refactoring.pullUp +import com.intellij.internal.statistic.service.fus.collectors.FUSApplicationUsageTrigger import com.intellij.openapi.actionSystem.DataContext import com.intellij.openapi.application.ApplicationManager import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import com.intellij.psi.PsiClass +import com.intellij.psi.PsiElement +import com.intellij.psi.PsiFile import com.intellij.psi.PsiNamedElement import com.intellij.refactoring.HelpID import com.intellij.refactoring.RefactoringBundle @@ -37,6 +40,7 @@ import org.jetbrains.kotlin.psi.KtClass import org.jetbrains.kotlin.psi.KtClassOrObject import org.jetbrains.kotlin.psi.KtNamedDeclaration import org.jetbrains.kotlin.psi.psiUtil.getStrictParentOfType +import org.jetbrains.kotlin.statistics.KotlinIdeRefactoringTrigger import org.jetbrains.kotlin.types.typeUtil.supertypes class KotlinPullUpHandler : AbstractPullPushMembersHandler( @@ -111,6 +115,16 @@ class KotlinPullUpHandler : AbstractPullPushMembersHandler( KotlinPullUpDialog(project, classOrObject, superClasses, memberInfoStorage).show() } } + + override fun invoke(project: Project, elements: Array, dataContext: DataContext?) { + super.invoke(project, elements, dataContext) + FUSApplicationUsageTrigger.getInstance().trigger(KotlinIdeRefactoringTrigger::class.java, this::class.java.name) + } + + override fun invoke(project: Project, editor: Editor, file: PsiFile, dataContext: DataContext?) { + super.invoke(project, editor, file, dataContext) + FUSApplicationUsageTrigger.getInstance().trigger(KotlinIdeRefactoringTrigger::class.java, this::class.java.name) + } } val PULL_MEMBERS_UP = "Pull Members Up" \ No newline at end of file diff --git a/idea/src/org/jetbrains/kotlin/idea/refactoring/pushDown/KotlinPushDownHandler.kt b/idea/src/org/jetbrains/kotlin/idea/refactoring/pushDown/KotlinPushDownHandler.kt index 7a4568a593b..2b8a97c8051 100644 --- a/idea/src/org/jetbrains/kotlin/idea/refactoring/pushDown/KotlinPushDownHandler.kt +++ b/idea/src/org/jetbrains/kotlin/idea/refactoring/pushDown/KotlinPushDownHandler.kt @@ -16,10 +16,13 @@ package org.jetbrains.kotlin.idea.refactoring.pushDown +import com.intellij.internal.statistic.service.fus.collectors.FUSApplicationUsageTrigger import com.intellij.openapi.actionSystem.DataContext import com.intellij.openapi.application.ApplicationManager import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project +import com.intellij.psi.PsiElement +import com.intellij.psi.PsiFile import com.intellij.psi.PsiManager import com.intellij.refactoring.HelpID import com.intellij.refactoring.RefactoringBundle @@ -34,6 +37,7 @@ import org.jetbrains.kotlin.psi.KtClass import org.jetbrains.kotlin.psi.KtClassOrObject import org.jetbrains.kotlin.psi.KtNamedDeclaration import org.jetbrains.kotlin.psi.KtParameter +import org.jetbrains.kotlin.statistics.KotlinIdeRefactoringTrigger val PUSH_MEMBERS_DOWN = "Push Members Down" @@ -84,4 +88,14 @@ class KotlinPushDownHandler : AbstractPullPushMembersHandler( KotlinPushDownDialog(project, members, classOrObject).show() } } + + override fun invoke(project: Project, elements: Array, dataContext: DataContext?) { + super.invoke(project, elements, dataContext) + FUSApplicationUsageTrigger.getInstance().trigger(KotlinIdeRefactoringTrigger::class.java, this::class.java.name) + } + + override fun invoke(project: Project, editor: Editor, file: PsiFile, dataContext: DataContext?) { + super.invoke(project, editor, file, dataContext) + FUSApplicationUsageTrigger.getInstance().trigger(KotlinIdeRefactoringTrigger::class.java, this::class.java.name) + } } \ No newline at end of file diff --git a/idea/src/org/jetbrains/kotlin/idea/refactoring/rename/RenameKotlinImplicitLambdaParameter.kt b/idea/src/org/jetbrains/kotlin/idea/refactoring/rename/RenameKotlinImplicitLambdaParameter.kt index 69899681368..f061f05b6ab 100644 --- a/idea/src/org/jetbrains/kotlin/idea/refactoring/rename/RenameKotlinImplicitLambdaParameter.kt +++ b/idea/src/org/jetbrains/kotlin/idea/refactoring/rename/RenameKotlinImplicitLambdaParameter.kt @@ -33,10 +33,10 @@ class RenameKotlinImplicitLambdaParameter : KotlinVariableInplaceRenameHandler() return nameExpression != null && isAutoCreatedItUsage(nameExpression) } - override fun invoke(project: Project, editor: Editor, file: PsiFile, dataContext: DataContext?) { + override fun invoke(project: Project, editor: Editor?, file: PsiFile?, dataContext: DataContext?) { val intention = ReplaceItWithExplicitFunctionLiteralParamIntention() project.executeWriteCommand("Convert 'it' to explicit lambda parameter") { - intention.invoke(project, editor, file) + if (file != null) intention.invoke(project, editor, file) } } diff --git a/libraries/stdlib/src/kotlin/util/KotlinVersion.kt b/libraries/stdlib/src/kotlin/util/KotlinVersion.kt index 20b1b1c3764..8ca485d9a8e 100644 --- a/libraries/stdlib/src/kotlin/util/KotlinVersion.kt +++ b/libraries/stdlib/src/kotlin/util/KotlinVersion.kt @@ -72,6 +72,6 @@ public class KotlinVersion(val major: Int, val minor: Int, val patch: Int) : Com * Returns the current version of the Kotlin standard library. */ @kotlin.jvm.JvmField - public val CURRENT: KotlinVersion = KotlinVersion(1, 3, 0) // value is written here automatically during build + public val CURRENT: KotlinVersion = KotlinVersion(1, 3, 111) // value is written here automatically during build } }