diff --git a/platform/platform-impl/src/com/intellij/ide/lightEdit/statusBar/LightEditModeNotificationWidget.java b/platform/platform-impl/src/com/intellij/ide/lightEdit/statusBar/LightEditModeNotificationWidget.java index 9baf8643e5b0..0cd2d2d05ee5 100644 --- a/platform/platform-impl/src/com/intellij/ide/lightEdit/statusBar/LightEditModeNotificationWidget.java +++ b/platform/platform-impl/src/com/intellij/ide/lightEdit/statusBar/LightEditModeNotificationWidget.java @@ -10,11 +10,13 @@ import com.intellij.ide.lightEdit.actions.LightEditOpenFileInProjectAction; import com.intellij.openapi.actionSystem.*; import com.intellij.openapi.application.ApplicationBundle; import com.intellij.openapi.application.ApplicationManager; +import com.intellij.openapi.application.ex.ApplicationInfoEx; import com.intellij.openapi.editor.colors.EditorColorsManager; import com.intellij.openapi.project.DumbAwareAction; import com.intellij.openapi.ui.JBPopupMenu; import com.intellij.openapi.util.NlsSafe; import com.intellij.openapi.util.text.HtmlChunk; +import com.intellij.openapi.util.text.StringUtil; import com.intellij.openapi.wm.CustomStatusBarWidget; import com.intellij.openapi.wm.StatusBar; import com.intellij.ui.TooltipWithClickableLinks; @@ -37,6 +39,8 @@ import java.util.function.Supplier; public class LightEditModeNotificationWidget implements CustomStatusBarWidget { + private static final String HELP_ID = "lightedit-mode"; + private final PopupState myPopupState = PopupState.forPopupMenu(); public LightEditModeNotificationWidget() { @@ -113,8 +117,7 @@ public class LightEditModeNotificationWidget implements CustomStatusBarWidget { @NotNull private static @Nls String getTooltipHtml() { - HtmlChunk.Element link = HtmlChunk.link("https://www.jetbrains.com/help/idea/lightedit-mode.html", - ApplicationBundle.message("light.edit.status.bar.notification.tooltip.link.text")); + HtmlChunk.Element link = HtmlChunk.link(getHelpPageUrl(), ApplicationBundle.message("light.edit.status.bar.notification.tooltip.link.text")); link = link.child(HtmlChunk.tag("icon").attr("src", "AllIcons.Ide.External_link_arrow")); @NlsSafe String pTag = "

"; String tooltipText = ApplicationBundle.message("light.edit.status.bar.notification.tooltip") + pTag + link.toString(); @@ -122,6 +125,12 @@ public class LightEditModeNotificationWidget implements CustomStatusBarWidget { return tooltipText; } + private static @NotNull String getHelpPageUrl() { + ApplicationInfoEx info = ApplicationInfoEx.getInstanceEx(); + String productVersion = info.getMajorVersion() + "." + info.getMinorVersionMainPart(); + return StringUtil.trimEnd(info.getWebHelpUrl(), "/") + "/" + productVersion + "/" + HELP_ID + ".html"; + } + private void showPopupMenu(@NotNull JComponent actionLink) { if (!myPopupState.isRecentlyHidden()) { DataManager.registerDataProvider(actionLink, dataId -> {