xnext button look fix

GitOrigin-RevId: dec0074a01298fa996cb4e01368f446817ae3c42
This commit is contained in:
Anna.Gromova
2025-03-21 14:10:29 +00:00
committed by intellij-monorepo-bot
parent 345a2e0681
commit 4c4b536e70
3 changed files with 9 additions and 21 deletions
@@ -60,6 +60,8 @@ open class InternalUICustomization {
else
StripesUxCustomizer ()
open fun installBackgroundUpdater(component: JComponent) {}
open fun frameHeaderBackgroundConverter(color: Color?): Color? = color
open fun transformGraphics(component: JComponent, graphics: Graphics): Graphics = graphics
@@ -1,16 +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.toolWindow.xNext.toolbar.actions.toolbar
import com.intellij.ide.ui.LafManagerListener
import com.intellij.openapi.actionSystem.ActionToolbar
import com.intellij.openapi.actionSystem.impl.ActionToolbarImpl
import com.intellij.openapi.application.ApplicationManager
import com.intellij.openapi.application.impl.InternalUICustomization
import com.intellij.toolWindow.xNext.toolbar.actions.XNextToolbarGroup
import com.intellij.util.ui.JBUI
import com.intellij.util.ui.JBUI.CurrentTheme.Toolbar.mainToolbarButtonInsets
import com.intellij.util.ui.launchOnShow
import kotlinx.coroutines.awaitCancellation
internal class XNextActionToolbar : ActionToolbarImpl ("XNextStatusBar", XNextToolbarGroup(), true){
init {
@@ -18,21 +14,6 @@ internal class XNextActionToolbar : ActionToolbarImpl ("XNextStatusBar", XNextTo
setMinimumButtonSize { ActionToolbar.experimentalToolbarMinimumButtonSize() }
setActionButtonBorder(JBUI.Borders.empty(mainToolbarButtonInsets()))
launchOnShow("XNextActionToolbar") {
try {
ApplicationManager.getApplication().messageBus.connect(this).subscribe(LafManagerListener.TOPIC, LafManagerListener {
updateBackground()
})
awaitCancellation()
} finally {
}
}
updateBackground()
}
private fun updateBackground() {
InternalUICustomization.getInstance()?.getCustomMainBackgroundColor()?.let {
background = it
}
InternalUICustomization.getInstance()?.installBackgroundUpdater(this)
}
}
@@ -48,4 +48,9 @@ class XNextToolWindowButtonLook : HeaderToolbarButtonLook() {
}
}
}
override fun <ButtonType> paintBackground(g: Graphics, button: ButtonType?) where ButtonType : JComponent?, ButtonType : ActionButtonComponent? {
val g = IdeBackgroundUtil.getOriginalGraphics(g)
super.paintBackground(g, button)
}
}