[IFT] Remove several onboarding feedback fields

From the collected feedback we saw the low rate for these fields and so decide to reduce the feedback form length

IJ-CR-23461

GitOrigin-RevId: 0e4dbbc88ba19746cbd8ad2e20b7a6986a66d7c5
This commit is contained in:
Alexey Merkulov
2022-04-14 18:28:32 +03:00
committed by intellij-monorepo-bot
parent 853865db2f
commit e1bb9936dc
7 changed files with 2 additions and 36 deletions

View File

@@ -59,7 +59,6 @@ java.onboarding.finish.modules=Show More Lessons
java.onboarding.feedback.system.found.jdks=Found JDKs:
java.onboarding.feedback.system.current.jdk=Current JDK:
java.onboarding.feedback.system.lang.level=Language level:
java.onboarding.option.jdk.issues=JDK issues
java.basic.completion.choose.first=You can choose the first item from the Lookup menu by pressing {0}.
java.basic.completion.activate=To activate Basic Completion, press {0} and you will see the lookup menu again.

View File

@@ -288,10 +288,6 @@ class JavaOnboardingTourLesson : KLesson("java.onboarding", JavaLessonsBundle.me
}
}
override val possibleTechnicalIssues: Map<String, @Nls String> = mapOf(
"jdk_issues" to JavaLessonsBundle.message("java.onboarding.option.jdk.issues")
)
override fun feedbackHasBeenProposed() {
PropertiesComponent.getInstance().setValue(configPropertyName, true, false)
}

View File

@@ -119,13 +119,9 @@ onboarding.feedback.option.form.header=Share your feedback
onboarding.feedback.question.how.did.you.like=How did you like the onboarding tour?
onboarding.feedback.question.any.problems=Did you encounter any problems?
onboarding.feedback.option.technical.issues=Technical issues
onboarding.feedback.option.cannot.pass.task=Cannot pass the tour
onboarding.feedback.empty.text.other.issues=Some other issues?
onboarding.feedback.option.dislike.interactive=Don't like interactive learning
onboarding.feedback.option.too.restrictive=The tasks are too restrictive
onboarding.feedback.empty.text.other.issues=Please, describe issues here
onboarding.feedback.option.tour.is.useless=Tour wasn't useful for me
onboarding.feedback.option.experienced.user=I'm familiar with JetBrains IDEs (PyCharm, IDEA, WebStorm, etc.)
onboarding.feedback.option.too.obvious=Shown information is too obvious
onboarding.feedback.option.too.many.steps=Too many steps
onboarding.feedback.label.overall.experience=Share your overall experience or suggestions
onboarding.feedback.empty.text.overall.experience=Optional

View File

@@ -118,24 +118,13 @@ fun showOnboardingLessonFeedbackForm(project: Project?,
FEEDBACK_CONTENT_WIDTH - SUB_OFFSET, 65)
val technicalIssuesPanel = FormBuilder.createFormBuilder().let { builder ->
builder.addComponent(feedbackOption("cannot_pass", LearnBundle.message("onboarding.feedback.option.cannot.pass.task")))
for ((id, label) in onboardingFeedbackData.possibleTechnicalIssues) {
builder.addComponent(feedbackOption(id, label))
}
builder.addComponent(technicalIssuesArea)
builder.panel
}
technicalIssuesPanel.isVisible = false
technicalIssuesPanel.border = JBUI.Borders.emptyLeft(SUB_OFFSET)
val experiencedUserOption = feedbackOption("experienced_user", LearnBundle.message("onboarding.feedback.option.experienced.user"))
val usefulPanel = FormBuilder.createFormBuilder()
.addComponent(experiencedUserOption)
.addComponent(feedbackOption("too_obvious", LearnBundle.message("onboarding.feedback.option.too.obvious")))
.panel
usefulPanel.isVisible = false
usefulPanel.border = JBUI.Borders.emptyLeft(SUB_OFFSET)
val (votePanel, likenessResult) = createLikenessPanel()
saver.add {
@@ -152,7 +141,6 @@ fun showOnboardingLessonFeedbackForm(project: Project?,
}
val technicalIssuesOption = feedbackOption("technical_issues", LearnBundle.message("onboarding.feedback.option.technical.issues"))
val unusefulOption = feedbackOption("useless", LearnBundle.message("onboarding.feedback.option.tour.is.useless"))
val header = JLabel(LearnBundle.message("onboarding.feedback.option.form.header")).also {
it.font = UISettings.getInstance().getFont(5).deriveFont(Font.BOLD)
it.border = JBUI.Borders.empty(24 - UIUtil.DEFAULT_VGAP, 0, 20 - UIUtil.DEFAULT_VGAP, 0)
@@ -166,10 +154,7 @@ fun showOnboardingLessonFeedbackForm(project: Project?,
})
.addComponent(technicalIssuesOption)
.addComponent(technicalIssuesPanel)
.addComponent(feedbackOption("dislike_interactive", LearnBundle.message("onboarding.feedback.option.dislike.interactive")))
.addComponent(feedbackOption("too_restrictive", LearnBundle.message("onboarding.feedback.option.too.restrictive")))
.addComponent(unusefulOption)
.addComponent(usefulPanel)
.addComponent(feedbackOption("useless", LearnBundle.message("onboarding.feedback.option.tour.is.useless")))
.addComponent(feedbackOption("very_long", LearnBundle.message("onboarding.feedback.option.too.many.steps")))
.addComponent(JLabel(LearnBundle.message("onboarding.feedback.label.overall.experience")).also {
it.border = JBUI.Borders.empty(20 - UIUtil.DEFAULT_VGAP, 0, 12 - UIUtil.DEFAULT_VGAP, 0)
@@ -192,7 +177,6 @@ fun showOnboardingLessonFeedbackForm(project: Project?,
dialog.isResizable = false
installSubPanelLogic(technicalIssuesOption, technicalIssuesPanel, wholePanel, dialog)
installSubPanelLogic(unusefulOption, usefulPanel, wholePanel, dialog)
val maySendFeedback = dialog.showAndGet()
if (maySendFeedback) {

View File

@@ -3,7 +3,6 @@ package training.util
import com.intellij.ui.dsl.builder.Panel
import kotlinx.serialization.json.JsonObjectBuilder
import org.jetbrains.annotations.Nls
abstract class OnboardingFeedbackData(val reportTitle: String, // It is ZenDesk title, so should not be translated
val lessonEndInfo: LessonEndInfo,
@@ -17,7 +16,5 @@ abstract class OnboardingFeedbackData(val reportTitle: String, // It is ZenDesk
abstract val addRowsForUserAgreement: Panel.() -> Unit
abstract val possibleTechnicalIssues: Map<String, @Nls String>
abstract fun feedbackHasBeenProposed()
}

View File

@@ -69,7 +69,6 @@ python.onboarding.feedback.system.found.interpreters=Found interpreters:
python.onboarding.feedback.system.no.interpreters=none
python.onboarding.feedback.system.used.interpreter=Used interpreter:
python.onboarding.feedback.system.start.interpreter=Start interpreter:
python.onboarding.option.interpreter.issues=Interpreter issues
python.3.required.warning.message=To complete this lesson, <callback id="{0}">configure an interpreter</callback> based on Python 3.

View File

@@ -18,7 +18,6 @@ import kotlinx.serialization.json.JsonObjectBuilder
import kotlinx.serialization.json.JsonPrimitive
import kotlinx.serialization.json.buildJsonArray
import kotlinx.serialization.json.put
import org.jetbrains.annotations.Nls
import training.dsl.LessonContext
import training.lang.LangSupport
import training.ui.LearningUiManager
@@ -105,10 +104,6 @@ object PythonLessonsUtil {
}
}
override val possibleTechnicalIssues: Map<String, @Nls String> = mapOf(
"interpreter_issues" to PythonLessonsBundle.message("python.onboarding.option.interpreter.issues")
)
override fun feedbackHasBeenProposed() {
PropertiesComponent.getInstance().setValue(configPropertyName, true, false)
}