mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
IJPL-198980 Don't show two loading icons in SE (dumb mode and searching)
GitOrigin-RevId: 521ef6fe1f63bb1ebe0a56b13c55a4849d800173
This commit is contained in:
committed by
intellij-monorepo-bot
parent
39bfe2f13f
commit
b4645626f1
@@ -27,6 +27,8 @@ class HintHelper(private val myTextField: ExtendableTextField) {
|
||||
private var myExtensionWithLoadingText: ExtendableTextComponent.Extension? = null
|
||||
private val myRightExtensions: MutableList<ExtendableTextComponent.Extension> = ArrayList()
|
||||
|
||||
private var myIsSearchInProgress = false
|
||||
|
||||
init {
|
||||
myText.setFont(myTextField.getFont())
|
||||
myText.setFontTransform(FontInfo.getFontRenderContext(myTextField).transform)
|
||||
@@ -40,15 +42,18 @@ class HintHelper(private val myTextField: ExtendableTextField) {
|
||||
fun setHint(hintText: String?) {
|
||||
myTextField.removeExtension(myExtensionWithHintText)
|
||||
myExtensionWithLoadingText?.let { myTextField.removeExtension(it) }
|
||||
myExtensionWithLoadingText = null
|
||||
if (StringUtil.isNotEmpty(hintText)) {
|
||||
myText.setText(hintText)
|
||||
addExtensionAsLast(myExtensionWithHintText)
|
||||
}
|
||||
if (myIsSearchInProgress) myTextField.addExtension(mySearchProcessExtension)
|
||||
}
|
||||
|
||||
fun setLoadingText(text: String?, tooltip: @NlsContexts.Tooltip String? = null) {
|
||||
myTextField.removeExtension(myExtensionWithHintText)
|
||||
myExtensionWithLoadingText?.let { myTextField.removeExtension(it) }
|
||||
myExtensionWithLoadingText = null
|
||||
if (StringUtil.isNotEmpty(text)) {
|
||||
myText.setText(text)
|
||||
myLoadingIcon.setIcon(myText, 1)
|
||||
@@ -57,12 +62,18 @@ class HintHelper(private val myTextField: ExtendableTextField) {
|
||||
override fun getTooltip(): @NlsContexts.Tooltip String? = tooltip
|
||||
}
|
||||
addExtensionAsLast(myExtensionWithLoadingText)
|
||||
myTextField.removeExtension(mySearchProcessExtension) // don't duplicate loading icons
|
||||
}
|
||||
else if (myIsSearchInProgress) myTextField.addExtension(mySearchProcessExtension)
|
||||
}
|
||||
|
||||
fun setSearchInProgress(inProgress: Boolean) {
|
||||
myIsSearchInProgress = inProgress
|
||||
|
||||
myTextField.removeExtension(mySearchProcessExtension)
|
||||
if (inProgress) myTextField.addExtension(mySearchProcessExtension)
|
||||
if (inProgress && myExtensionWithLoadingText == null) {
|
||||
myTextField.addExtension(mySearchProcessExtension)
|
||||
}
|
||||
}
|
||||
|
||||
//set extension which should be shown last
|
||||
|
||||
Reference in New Issue
Block a user