mirror of
https://github.com/chylex/IntelliJ-Inspection-Lens.git
synced 2025-05-06 05:34:06 +02:00
Replace light/dark theme detection with a standard API
This commit is contained in:
parent
33bb46d0be
commit
797efb48a2
src/main/kotlin/com/chylex/intellij/inspectionlens
@ -31,7 +31,7 @@ class LensRenderer(info: HighlightInfo) : HintRenderer(null) {
|
||||
}
|
||||
|
||||
override fun getTextAttributes(editor: Editor): TextAttributes {
|
||||
return ATTRIBUTES_SINGLETON.also { it.foregroundColor = severity.getColor(editor) }
|
||||
return ATTRIBUTES_SINGLETON.also { it.foregroundColor = severity.color }
|
||||
}
|
||||
|
||||
override fun useEditorFont(): Boolean {
|
||||
|
@ -1,50 +1,27 @@
|
||||
package com.chylex.intellij.inspectionlens
|
||||
|
||||
import com.intellij.lang.annotation.HighlightSeverity
|
||||
import com.intellij.openapi.editor.Editor
|
||||
import com.intellij.ui.ColorUtil
|
||||
import com.intellij.ui.JBColor
|
||||
import java.awt.Color
|
||||
|
||||
/**
|
||||
* Determines properties of inspection lenses based on severity.
|
||||
*/
|
||||
enum class LensSeverity(color: Color, darkThemeBrightening: Int, lightThemeDarkening: Int) {
|
||||
ERROR(
|
||||
Color(158, 41, 39),
|
||||
darkThemeBrightening = 4,
|
||||
lightThemeDarkening = 1,
|
||||
),
|
||||
@Suppress("UseJBColor", "InspectionUsingGrayColors")
|
||||
enum class LensSeverity(baseColor: Color, lightThemeDarkening: Int, darkThemeBrightening: Int) {
|
||||
ERROR (Color(158, 41, 39), lightThemeDarkening = 1, darkThemeBrightening = 4),
|
||||
WARNING (Color(190, 145, 23), lightThemeDarkening = 4, darkThemeBrightening = 1),
|
||||
WEAK_WARNING (Color(117, 109, 86), lightThemeDarkening = 3, darkThemeBrightening = 3),
|
||||
SERVER_PROBLEM (Color(176, 97, 0), lightThemeDarkening = 4, darkThemeBrightening = 2),
|
||||
OTHER (Color(128, 128, 128), lightThemeDarkening = 1, darkThemeBrightening = 2);
|
||||
|
||||
WARNING(
|
||||
Color(190, 145, 23),
|
||||
darkThemeBrightening = 1,
|
||||
lightThemeDarkening = 4,
|
||||
),
|
||||
val color: JBColor
|
||||
|
||||
WEAK_WARNING(
|
||||
Color(117, 109, 86),
|
||||
darkThemeBrightening = 3,
|
||||
lightThemeDarkening = 3,
|
||||
),
|
||||
|
||||
SERVER_PROBLEM(
|
||||
Color(176, 97, 0),
|
||||
darkThemeBrightening = 2,
|
||||
lightThemeDarkening = 4,
|
||||
),
|
||||
|
||||
OTHER(
|
||||
Color(128, 128, 128),
|
||||
darkThemeBrightening = 2,
|
||||
lightThemeDarkening = 1,
|
||||
);
|
||||
|
||||
private val darkThemeColor = ColorUtil.desaturate(ColorUtil.brighter(color, darkThemeBrightening), 2)
|
||||
private val lightThemeColor = ColorUtil.saturate(ColorUtil.darker(color, lightThemeDarkening), 1)
|
||||
|
||||
fun getColor(editor: Editor): Color {
|
||||
val isDarkTheme = ColorUtil.isDark(editor.colorsScheme.defaultBackground)
|
||||
return if (isDarkTheme) darkThemeColor else lightThemeColor
|
||||
init {
|
||||
val lightThemeColor = ColorUtil.saturate(ColorUtil.darker(baseColor, lightThemeDarkening), 1)
|
||||
val darkThemeColor = ColorUtil.desaturate(ColorUtil.brighter(baseColor, darkThemeBrightening), 2)
|
||||
color = JBColor(lightThemeColor, darkThemeColor)
|
||||
}
|
||||
|
||||
companion object {
|
||||
|
Loading…
Reference in New Issue
Block a user