mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
Use preview tab when using "Go to Declaration" (IDEA-261073)
GitOrigin-RevId: 598fc6111101d2668d50c321d1fca8c8873b178a
This commit is contained in:
committed by
intellij-monorepo-bot
parent
187aee3d74
commit
dbb6a4633c
@@ -1,11 +1,13 @@
|
||||
// Copyright 2000-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
|
||||
package com.intellij.ide.util;
|
||||
|
||||
import com.intellij.ide.ui.UISettings;
|
||||
import com.intellij.navigation.NavigationItem;
|
||||
import com.intellij.openapi.fileEditor.FileEditorManager;
|
||||
import com.intellij.openapi.fileEditor.OpenFileDescriptor;
|
||||
import com.intellij.openapi.roots.GeneratedSourcesFilter;
|
||||
import com.intellij.openapi.util.UserDataHolder;
|
||||
import com.intellij.openapi.util.registry.Registry;
|
||||
import com.intellij.openapi.vfs.VFileProperty;
|
||||
import com.intellij.openapi.vfs.VfsUtilCore;
|
||||
import com.intellij.openapi.vfs.VirtualFile;
|
||||
@@ -45,6 +47,9 @@ public final class EditSourceUtil {
|
||||
}
|
||||
OpenFileDescriptor desc = new OpenFileDescriptor(navigationElement.getProject(), virtualFile, offset);
|
||||
desc.setUseCurrentWindow(FileEditorManager.USE_CURRENT_WINDOW.isIn(navigationElement));
|
||||
if (UISettings.getInstance().getOpenInPreviewTabIfPossible() && Registry.is("editor.preview.tab.navigation")) {
|
||||
desc.setUsePreviewTab(true);
|
||||
}
|
||||
return desc;
|
||||
}
|
||||
|
||||
|
||||
@@ -9,6 +9,7 @@ import com.intellij.codeInsight.lookup.LookupManager
|
||||
import com.intellij.codeInsight.navigation.impl.NavigationRequestor
|
||||
import com.intellij.codeInsight.navigation.impl.gtdTargetNavigatable
|
||||
import com.intellij.ide.IdeEventQueue
|
||||
import com.intellij.ide.ui.UISettings
|
||||
import com.intellij.idea.ActionsBundle
|
||||
import com.intellij.lang.LanguageNamesValidation
|
||||
import com.intellij.navigation.NavigationRequest
|
||||
@@ -58,7 +59,11 @@ internal fun navigateRequest(project: Project, request: NavigationRequest) {
|
||||
when (request) {
|
||||
is SourceNavigationRequest -> {
|
||||
// TODO support pure source request without OpenFileDescriptor
|
||||
OpenFileDescriptor(project, request.file, request.offset).navigate(true)
|
||||
val openFileDescriptor = OpenFileDescriptor(project, request.file, request.offset)
|
||||
if (UISettings.getInstance().openInPreviewTabIfPossible && Registry.`is`("editor.preview.tab.navigation")) {
|
||||
openFileDescriptor.isUsePreviewTab = true
|
||||
}
|
||||
openFileDescriptor.navigate(true)
|
||||
}
|
||||
is RawNavigationRequest -> {
|
||||
request.navigatable.navigate(true)
|
||||
|
||||
@@ -2239,5 +2239,8 @@ ide.ui.wrap.colors.description=Wrap UI colors to colors with name
|
||||
ide.gutter.update.free.markers.on.hover=true
|
||||
ide.gutter.update.free.markers.on.hover.description=Make VCS gutter wider when hovering mouse
|
||||
|
||||
editor.preview.tab.navigation=true
|
||||
editor.preview.tab.navigation.description=Use preview tabs also when Goto Declaration is used
|
||||
|
||||
# please leave this note as last line
|
||||
# TODO please use EP com.intellij.registryKey for plugin/product specific keys
|
||||
|
||||
Reference in New Issue
Block a user