1
0
mirror of https://github.com/chylex/IntelliJ-Inspection-Lens.git synced 2025-05-05 20:34:08 +02:00

Add option to use UI font for lenses

This commit is contained in:
chylex 2024-08-12 14:06:59 +02:00
parent 66abf6b349
commit ec9c5c4c9b
Signed by: chylex
GPG Key ID: 4DE42C8F19A80548
4 changed files with 15 additions and 3 deletions
src/main/kotlin/com/chylex/intellij/inspectionlens

View File

@ -1,6 +1,8 @@
package com.chylex.intellij.inspectionlens.editor
import com.chylex.intellij.inspectionlens.settings.LensSettingsState
import com.intellij.codeInsight.daemon.impl.HighlightInfo
import com.intellij.openapi.components.service
import com.intellij.openapi.editor.Editor
import com.intellij.openapi.editor.Inlay
import com.intellij.openapi.editor.InlayProperties
@ -29,7 +31,7 @@ internal value class EditorLensInlay(private val inlay: Inlay<LensRenderer>) {
val offset = getInlayHintOffset(info)
val priority = getInlayHintPriority(editor, info)
val renderer = LensRenderer(info)
val renderer = LensRenderer(info, !service<LensSettingsState>().useUiFont)
val properties = InlayProperties().relatesToPrecedingText(true).disableSoftWrapping(true).priority(priority)
return editor.inlayModel.addAfterLineEndElement(offset, properties, renderer)

View File

@ -24,7 +24,7 @@ import javax.swing.SwingUtilities
/**
* Renders the text of an inspection lens.
*/
class LensRenderer(private var info: HighlightInfo) : HintRenderer(null), InputHandler {
class LensRenderer(private var info: HighlightInfo, private val useEditorFont: Boolean) : HintRenderer(null), InputHandler {
private lateinit var severity: LensSeverity
private lateinit var inlay: Inlay<*>
private var hovered = false
@ -63,7 +63,7 @@ class LensRenderer(private var info: HighlightInfo) : HintRenderer(null), InputH
}
override fun useEditorFont(): Boolean {
return true
return useEditorFont
}
override fun mouseMoved(event: MouseEvent, translated: Point) {

View File

@ -89,6 +89,12 @@ class LensApplicationConfigurable : BoundConfigurable("Inspection Lens"), Config
checkBox("Other").bindSelected(settings::showUnknownSeverities)
}
}
group("Appearance") {
row {
checkBox("Use UI Font").bindSelected(settings::useUiFont)
}
}
}
}

View File

@ -20,6 +20,7 @@ class LensSettingsState : SimplePersistentStateComponent<LensSettingsState.State
val hiddenSeverities by map<String, StoredSeverity>()
var showUnknownSeverities by property(true)
var useUiFont by property(false)
}
@get:Synchronized
@ -27,6 +28,9 @@ class LensSettingsState : SimplePersistentStateComponent<LensSettingsState.State
var severityFilter = createSeverityFilter()
private set
val useUiFont
get() = state.useUiFont
override fun loadState(state: State) {
super.loadState(state)
update()