IJPL-850 extract intellij.platform.navbar module

GitOrigin-RevId: f5d06394edfd599de5c9604b6ebf23e8e1c47f2a
This commit is contained in:
Daniil Ovchinnikov
2024-03-21 22:35:17 +00:00
committed by intellij-monorepo-bot
parent b2c7615636
commit f5bb3faaae
21 changed files with 52 additions and 27 deletions
+1
View File
@@ -1010,6 +1010,7 @@
<module fileurl="file://$PROJECT_DIR$/platform/ml-embeddings/intellij.platform.ml.embeddings.iml" filepath="$PROJECT_DIR$/platform/ml-embeddings/intellij.platform.ml.embeddings.iml" />
<module fileurl="file://$PROJECT_DIR$/platform/ml-embeddings/tests/intellij.platform.ml.embeddings.tests.iml" filepath="$PROJECT_DIR$/platform/ml-embeddings/tests/intellij.platform.ml.embeddings.tests.iml" />
<module fileurl="file://$PROJECT_DIR$/platform/ml-impl/intellij.platform.ml.impl.iml" filepath="$PROJECT_DIR$/platform/ml-impl/intellij.platform.ml.impl.iml" />
<module fileurl="file://$PROJECT_DIR$/platform/navbar/shared/intellij.platform.navbar.iml" filepath="$PROJECT_DIR$/platform/navbar/shared/intellij.platform.navbar.iml" />
<module fileurl="file://$PROJECT_DIR$/platform/object-serializer/intellij.platform.objectSerializer.iml" filepath="$PROJECT_DIR$/platform/object-serializer/intellij.platform.objectSerializer.iml" />
<module fileurl="file://$PROJECT_DIR$/platform/object-serializer/intellij.platform.objectSerializer.annotations.iml" filepath="$PROJECT_DIR$/platform/object-serializer/intellij.platform.objectSerializer.annotations.iml" />
<module fileurl="file://$PROJECT_DIR$/platform/object-serializer/intellij.platform.objectSerializer.tests.iml" filepath="$PROJECT_DIR$/platform/object-serializer/intellij.platform.objectSerializer.tests.iml" />
@@ -100,5 +100,6 @@
<orderEntry type="module" module-name="intellij.platform.util.xmlDom" />
<orderEntry type="module" module-name="intellij.platform.backend.observation" />
<orderEntry type="library" name="kotlinx-collections-immutable" level="project" />
<orderEntry type="module" module-name="intellij.platform.navbar" />
</component>
</module>
@@ -4,13 +4,13 @@ package com.intellij.execution.services
import com.intellij.execution.services.ServiceModel.ServiceViewItem
import com.intellij.execution.services.ServiceViewNavBarService.ServiceViewNavBarSelector
import com.intellij.icons.AllIcons
import com.intellij.ide.navbar.NavBarItemPresentation
import com.intellij.ide.navbar.ide.NavBarVmImpl
import com.intellij.ide.navbar.ide.NavBarVmItem
import com.intellij.ide.navbar.ui.StaticNavBarPanel
import com.intellij.ide.navbar.vm.NavBarVm
import com.intellij.openapi.application.EDT
import com.intellij.openapi.project.Project
import com.intellij.platform.navbar.NavBarItemPresentation
import com.intellij.platform.navbar.NavBarVmItem
import com.intellij.ui.SimpleTextAttributes.REGULAR_ATTRIBUTES
import com.intellij.ui.components.JBPanel
import com.intellij.util.ui.update.Activatable
@@ -1,9 +1,10 @@
// Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
// 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.ide.navbar
import com.intellij.model.Pointer
import com.intellij.openapi.actionSystem.DataKey
import com.intellij.platform.backend.navigation.NavigationRequest
import com.intellij.platform.navbar.NavBarItemPresentation
import com.intellij.util.concurrency.annotations.RequiresBackgroundThread
import com.intellij.util.concurrency.annotations.RequiresReadLock
@@ -4,7 +4,6 @@ package com.intellij.ide.navbar.actions
import com.intellij.ide.impl.dataRules.GetDataRule
import com.intellij.ide.navbar.NavBarItem
import com.intellij.ide.navbar.ide.IdeNavBarVmItem
import com.intellij.ide.navbar.ide.NavBarVmItem
import com.intellij.ide.navbar.impl.DefaultNavBarItem
import com.intellij.ide.navbar.impl.ModuleNavBarItem
import com.intellij.ide.navbar.impl.PsiNavBarItem
@@ -18,6 +17,7 @@ import com.intellij.openapi.module.ModuleUtilCore
import com.intellij.openapi.project.Project
import com.intellij.openapi.roots.ui.configuration.actions.ModuleDeleteProvider
import com.intellij.openapi.vfs.VirtualFile
import com.intellij.platform.navbar.NavBarVmItem
import com.intellij.pom.Navigatable
import com.intellij.psi.PsiDirectory
import com.intellij.psi.PsiElement
@@ -1,8 +1,9 @@
// Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
// 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.ide.navbar.ide
import com.intellij.ide.navbar.NavBarItemPresentation
import com.intellij.ide.navbar.vm.NavBarPopupItem
import com.intellij.platform.navbar.NavBarItemPresentation
import com.intellij.platform.navbar.NavBarVmItem
internal class DefaultNavBarPopupItem(val item: NavBarVmItem) : NavBarPopupItem {
@@ -2,12 +2,13 @@
package com.intellij.ide.navbar.ide
import com.intellij.ide.navbar.NavBarItem
import com.intellij.ide.navbar.NavBarItemPresentation
import com.intellij.ide.navbar.ide.NavBarVmItem.ItemExpandResult
import com.intellij.ide.navbar.impl.children
import com.intellij.ide.navbar.impl.isModuleContentRoot
import com.intellij.model.Pointer
import com.intellij.openapi.application.readAction
import com.intellij.platform.navbar.NavBarItemPresentation
import com.intellij.platform.navbar.NavBarVmItem
import com.intellij.platform.navbar.NavBarVmItem.ItemExpandResult
import com.intellij.util.concurrency.ThreadingAssertions
import com.intellij.util.concurrency.annotations.RequiresReadLock
@@ -22,6 +22,7 @@ import com.intellij.openapi.components.Service.Level.PROJECT
import com.intellij.openapi.components.service
import com.intellij.openapi.progress.ProcessCanceledException
import com.intellij.openapi.project.Project
import com.intellij.platform.navbar.NavBarVmItem
import com.intellij.platform.util.coroutines.childScope
import com.intellij.platform.util.coroutines.flow.throttle
import com.intellij.util.ui.EDT
@@ -1,11 +1,12 @@
// 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.ide.navbar.ide
import com.intellij.ide.navbar.NavBarItemPresentation
import com.intellij.ide.navbar.vm.NavBarItemVm
import com.intellij.ide.navbar.vm.NavBarPopupVm
import com.intellij.ide.navbar.vm.NavBarVm
import com.intellij.ide.navbar.vm.NavBarVm.SelectionShift
import com.intellij.platform.navbar.NavBarItemPresentation
import com.intellij.platform.navbar.NavBarVmItem
import com.intellij.platform.util.coroutines.flow.zipWithNext
import kotlinx.coroutines.CancellationException
import kotlinx.coroutines.CoroutineScope
@@ -1,9 +1,8 @@
// Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
// 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.ide.navbar.impl
import com.intellij.icons.AllIcons
import com.intellij.ide.navbar.NavBarItem
import com.intellij.ide.navbar.NavBarItemPresentation
import com.intellij.ide.navigationToolbar.NavBarModelExtension
import com.intellij.ide.projectView.ProjectView
import com.intellij.ide.projectView.impl.ProjectRootsUtil
@@ -29,6 +28,7 @@ import com.intellij.openapi.vfs.VfsUtilCore
import com.intellij.openapi.vfs.VirtualFile
import com.intellij.platform.backend.navigation.NavigationRequest
import com.intellij.platform.backend.navigation.NavigationRequests
import com.intellij.platform.navbar.NavBarItemPresentation
import com.intellij.pom.Navigatable
import com.intellij.problems.WolfTheProblemSolver
import com.intellij.psi.*
@@ -2,7 +2,6 @@
package com.intellij.ide.navbar.tests
import com.intellij.ide.navbar.NavBarItem
import com.intellij.ide.navbar.NavBarItemPresentation
import com.intellij.ide.navbar.NavBarItemProvider
import com.intellij.ide.navbar.actions.getBgData
import com.intellij.ide.navbar.impl.DefaultNavBarItem
@@ -12,6 +11,7 @@ import com.intellij.ide.navbar.impl.pathToItem
import com.intellij.openapi.actionSystem.DataContext
import com.intellij.openapi.actionSystem.DataKey
import com.intellij.openapi.project.Project
import com.intellij.platform.navbar.NavBarItemPresentation
import com.intellij.util.concurrency.annotations.RequiresReadLock
import org.jetbrains.annotations.ApiStatus.Obsolete
import org.jetbrains.annotations.TestOnly
@@ -1,9 +1,8 @@
// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
// 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.ide.navbar.ui
import com.intellij.icons.AllIcons
import com.intellij.icons.ExpUiIcons
import com.intellij.ide.navbar.NavBarItemPresentation
import com.intellij.ide.navbar.vm.NavBarItemVm
import com.intellij.ide.navigationToolbar.ui.AbstractNavBarUI
import com.intellij.ide.navigationToolbar.ui.AbstractNavBarUI.getDecorationOffset
@@ -16,6 +15,7 @@ import com.intellij.openapi.application.EDT
import com.intellij.openapi.util.SystemInfo
import com.intellij.openapi.util.registry.Registry
import com.intellij.openapi.wm.IdeFocusManager
import com.intellij.platform.navbar.NavBarItemPresentation
import com.intellij.ui.*
import com.intellij.ui.scale.JBUIScale
import com.intellij.ui.scale.ScaleContext
@@ -1,7 +1,7 @@
// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
// 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.ide.navbar.ui
import com.intellij.ide.navbar.NavBarItemPresentation
import com.intellij.platform.navbar.NavBarItemPresentation
import com.intellij.ui.ExperimentalUI
import com.intellij.ui.RelativeFont
import com.intellij.ui.SimpleColoredComponent
@@ -6,7 +6,6 @@ import com.intellij.ide.IdeBundle
import com.intellij.ide.navbar.actions.NavBarActionHandler.NAV_BAR_ACTION_HANDLER
import com.intellij.ide.navbar.actions.NavBarActionHandlerImpl
import com.intellij.ide.navbar.ide.LOG
import com.intellij.ide.navbar.ide.NavBarVmItem.Companion.SELECTED_ITEMS
import com.intellij.ide.navbar.ui.NavBarItemComponent.Companion.isItemComponentFocusable
import com.intellij.ide.navbar.vm.NavBarItemVm
import com.intellij.ide.navbar.vm.NavBarPopupVm
@@ -20,6 +19,7 @@ import com.intellij.openapi.actionSystem.ex.ActionUtil
import com.intellij.openapi.application.EDT
import com.intellij.openapi.application.impl.RawSwingDispatcher
import com.intellij.openapi.project.Project
import com.intellij.platform.navbar.NavBarVmItem.Companion.SELECTED_ITEMS
import com.intellij.ui.*
import com.intellij.ui.awt.RelativePoint
import com.intellij.ui.popup.PopupOwner
@@ -1,10 +1,14 @@
// 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.ide.navbar.ui
import com.intellij.ide.navbar.ide.*
import com.intellij.ide.navbar.ide.NavBarVmImpl
import com.intellij.ide.navbar.ide.contextModel
import com.intellij.ide.navbar.ide.dataContext
import com.intellij.ide.navbar.ide.defaultModel
import com.intellij.ide.navbar.vm.NavBarVm
import com.intellij.openapi.application.EDT
import com.intellij.openapi.project.Project
import com.intellij.platform.navbar.NavBarVmItem
import com.intellij.platform.util.coroutines.attachAsChildTo
import com.intellij.ui.components.JBPanel
import kotlinx.coroutines.*
@@ -1,7 +1,7 @@
// Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
// 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.ide.navbar.vm
import com.intellij.ide.navbar.NavBarItemPresentation
import com.intellij.platform.navbar.NavBarItemPresentation
import kotlinx.coroutines.flow.StateFlow
import org.jetbrains.annotations.ApiStatus
@@ -1,7 +1,7 @@
// Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
// 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.ide.navbar.vm
import com.intellij.ide.navbar.NavBarItemPresentation
import com.intellij.platform.navbar.NavBarItemPresentation
import org.jetbrains.annotations.ApiStatus
@ApiStatus.Internal
@@ -1,7 +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.ide.navbar.vm
import com.intellij.ide.navbar.ide.NavBarVmItem
import com.intellij.platform.navbar.NavBarVmItem
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.StateFlow
import org.jetbrains.annotations.ApiStatus
@@ -0,0 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="JAVA_MODULE" version="4">
<component name="NewModuleRootManager" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" packagePrefix="com.intellij.platform.navbar" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="library" exported="" name="kotlin-stdlib" level="project" />
<orderEntry type="library" name="jetbrains-annotations" level="project" />
<orderEntry type="module" module-name="intellij.platform.core.ui" />
<orderEntry type="module" module-name="intellij.platform.util" />
</component>
</module>
@@ -1,5 +1,5 @@
// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.ide.navbar
// 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.navbar
import com.intellij.ui.SimpleTextAttributes
import org.jetbrains.annotations.Nls
@@ -1,7 +1,6 @@
// 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.ide.navbar.ide
package com.intellij.platform.navbar
import com.intellij.ide.navbar.NavBarItemPresentation
import com.intellij.openapi.actionSystem.DataKey
interface NavBarVmItem {