mirror of
https://gitflic.ru/project/openide/openide.git
synced 2025-12-15 02:59:33 +07:00
diff: use DiffEditorTabFilesManager over VcsEditorTabFilesManager
GitOrigin-RevId: af2bc69b324aacf8f2ca7393275f1cf8d58d74a4
This commit is contained in:
committed by
intellij-monorepo-bot
parent
bbb73865f7
commit
b83a6715ba
@@ -16,11 +16,18 @@ interface DiffEditorTabFilesManager {
|
||||
companion object {
|
||||
private const val SHOW_DIFF_IN_EDITOR_SETTING = "show.diff.as.editor.tab"
|
||||
|
||||
/**
|
||||
* If enabled - the [DiffViewerVirtualFile] will open like a normal editor in current split.
|
||||
* If disabled - it will use [com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl.OpenMode.NEW_WINDOW].
|
||||
*/
|
||||
@JvmStatic
|
||||
var isDiffInEditor: Boolean
|
||||
get() = AdvancedSettings.getBoolean(SHOW_DIFF_IN_EDITOR_SETTING)
|
||||
set(value) = AdvancedSettings.setBoolean(SHOW_DIFF_IN_EDITOR_SETTING, value)
|
||||
|
||||
@JvmStatic
|
||||
val isDiffInWindow: Boolean get() = !isDiffInEditor
|
||||
|
||||
@JvmStatic
|
||||
fun isDiffOpenedInNewWindow(file: VirtualFile): Boolean = DIFF_OPENED_IN_NEW_WINDOW.get(file, false)
|
||||
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
package com.intellij.platform.lvcs.impl.ui
|
||||
|
||||
import com.intellij.diff.editor.DiffEditorTabFilesManager
|
||||
import com.intellij.diff.impl.DiffEditorViewer
|
||||
import com.intellij.diff.impl.DiffRequestProcessor
|
||||
import com.intellij.diff.impl.DiffRequestProcessorListener
|
||||
@@ -23,7 +24,6 @@ import com.intellij.openapi.util.NlsContexts
|
||||
import com.intellij.openapi.util.registry.Registry
|
||||
import com.intellij.openapi.vcs.changes.EditorTabDiffPreview
|
||||
import com.intellij.openapi.vcs.changes.EditorTabDiffPreviewManager
|
||||
import com.intellij.openapi.vcs.changes.VcsEditorTabFilesManager
|
||||
import com.intellij.openapi.vcs.changes.ui.TreeHandlerEditorDiffPreview
|
||||
import com.intellij.openapi.wm.IdeFocusManager
|
||||
import com.intellij.platform.lvcs.impl.*
|
||||
@@ -322,7 +322,7 @@ class ActivityView(private val project: Project, gateway: IdeaGateway, val activ
|
||||
}
|
||||
|
||||
val activityView = ActivityView(project, gateway, activityScope)
|
||||
if (Registry.`is`("lvcs.open.diff.automatically") && !VcsEditorTabFilesManager.getInstance().shouldOpenInNewWindow) {
|
||||
if (Registry.`is`("lvcs.open.diff.automatically") && DiffEditorTabFilesManager.isDiffInEditor) {
|
||||
activityView.openDiffWhenLoaded()
|
||||
}
|
||||
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
package training.git.lesson
|
||||
|
||||
import com.intellij.diff.editor.DiffEditorTabFilesManager
|
||||
import com.intellij.diff.impl.DiffWindowBase
|
||||
import com.intellij.diff.tools.util.DiffSplitter
|
||||
import com.intellij.ide.IdeBundle
|
||||
@@ -17,7 +18,6 @@ import com.intellij.openapi.ui.popup.Balloon
|
||||
import com.intellij.openapi.vcs.actions.ActiveAnnotationGutter
|
||||
import com.intellij.openapi.vcs.actions.AnnotateToggleAction
|
||||
import com.intellij.openapi.vcs.actions.ShowDiffFromAnnotation
|
||||
import com.intellij.openapi.vcs.changes.VcsEditorTabFilesManager
|
||||
import com.intellij.openapi.vcs.changes.ui.ChangeListViewerDialog
|
||||
import com.intellij.openapi.wm.impl.IdeFrameImpl
|
||||
import com.intellij.util.ui.HtmlPanel
|
||||
@@ -247,7 +247,7 @@ class GitAnnotateLesson : GitLesson("Git.Annotate", GitLessonsBundle.message("gi
|
||||
|
||||
task("EditorEscape") {
|
||||
text(GitLessonsBundle.message("git.annotate.close.all.windows",
|
||||
if (VcsEditorTabFilesManager.getInstance().shouldOpenInNewWindow) 0 else 1, action(it)))
|
||||
if (DiffEditorTabFilesManager.isDiffInWindow) 0 else 1, action(it)))
|
||||
stateCheck {
|
||||
firstDiffSplitter?.isShowing != true && secondDiffSplitter?.isShowing != true
|
||||
}
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
// Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
package training.git.lesson
|
||||
|
||||
import com.intellij.diff.editor.DiffEditorTabFilesManager
|
||||
import com.intellij.diff.tools.util.SimpleDiffPanel
|
||||
import com.intellij.icons.AllIcons
|
||||
import com.intellij.openapi.project.Project
|
||||
import com.intellij.openapi.ui.popup.Balloon
|
||||
import com.intellij.openapi.vcs.changes.VcsEditorTabFilesManager
|
||||
import com.intellij.openapi.wm.IdeFocusManager
|
||||
import com.intellij.openapi.wm.ToolWindowId
|
||||
import com.intellij.ui.components.SearchFieldWithExtension
|
||||
@@ -205,7 +205,7 @@ class GitProjectHistoryLesson : GitLesson("Git.ProjectHistory", GitLessonsBundle
|
||||
}
|
||||
}
|
||||
|
||||
if (VcsEditorTabFilesManager.getInstance().shouldOpenInNewWindow) {
|
||||
if (DiffEditorTabFilesManager.isDiffInWindow) {
|
||||
task("EditorEscape") {
|
||||
text(GitLessonsBundle.message("git.project.history.close.diff", action(it)))
|
||||
stateCheck { previous.ui?.isShowing != true }
|
||||
|
||||
@@ -2,12 +2,12 @@
|
||||
package org.jetbrains.plugins.gitlab.mergerequest.file
|
||||
|
||||
import com.intellij.collaboration.util.CodeReviewFilesUtil
|
||||
import com.intellij.diff.editor.DiffEditorTabFilesManager
|
||||
import com.intellij.openapi.application.EDT
|
||||
import com.intellij.openapi.application.writeAction
|
||||
import com.intellij.openapi.components.serviceAsync
|
||||
import com.intellij.openapi.fileEditor.FileEditorManager
|
||||
import com.intellij.openapi.project.Project
|
||||
import com.intellij.openapi.vcs.changes.VcsEditorTabFilesManager
|
||||
import com.intellij.util.concurrency.annotations.RequiresEdt
|
||||
import kotlinx.coroutines.Dispatchers
|
||||
import kotlinx.coroutines.withContext
|
||||
@@ -39,7 +39,7 @@ class GitLabMergeRequestsFilesControllerImpl(
|
||||
val fs = GitLabVirtualFileSystem.getInstance()
|
||||
val path = fs.getPath(connection.id, project, connection.repo.repository, mrIid, true)
|
||||
val file = fs.refreshAndFindFileByPath(path) ?: return
|
||||
VcsEditorTabFilesManager.getInstance().openFile(project, file, focus)
|
||||
DiffEditorTabFilesManager.getInstance(project).showDiffFile(file, focus)
|
||||
}
|
||||
|
||||
override suspend fun closeAllFiles() {
|
||||
|
||||
Reference in New Issue
Block a user