mirror of
https://gitlab.bixilon.de/bixilon/minosoft.git
synced 2025-09-18 11:54:59 -04:00
fix missing Element::onMouseLeave when pushing element above it
This commit is contained in:
parent
834e318ab3
commit
6da5a25e6a
@ -184,11 +184,7 @@ class GUIManager(
|
||||
|
||||
fun open(builder: GUIBuilder<*>) {
|
||||
clear()
|
||||
val element = this[builder]
|
||||
elementOrder += element
|
||||
element.onOpen()
|
||||
|
||||
renderWindow.inputHandler.inputHandler = guiRenderer
|
||||
push(builder)
|
||||
}
|
||||
|
||||
fun popOrPause() {
|
||||
@ -206,9 +202,15 @@ class GUIManager(
|
||||
if (elementOrder.isEmpty()) {
|
||||
renderWindow.inputHandler.inputHandler = guiRenderer
|
||||
}
|
||||
elementOrder.firstOrNull()?.onHide()
|
||||
for ((index, elementEntry) in elementOrder.toList().withIndex()) {
|
||||
if (index != 0 && !elementEntry.activeWhenHidden) {
|
||||
continue
|
||||
}
|
||||
elementEntry.onHide()
|
||||
}
|
||||
elementOrder.add(0, element)
|
||||
element.onOpen()
|
||||
onMouseMove(guiRenderer.currentCursorPosition)
|
||||
}
|
||||
|
||||
@Deprecated("Only use for dynamic gui (e.g. dialogs, ...)")
|
||||
|
@ -168,6 +168,7 @@ class LayoutedGUIElement<T : LayoutedElement>(
|
||||
|
||||
override fun onHide() {
|
||||
elementLayout.onHide()
|
||||
elementLayout.onMouseLeave()
|
||||
}
|
||||
|
||||
companion object {
|
||||
|
@ -27,7 +27,7 @@ abstract class Popper(
|
||||
guiRenderer: GUIRenderer,
|
||||
position: Vec2i,
|
||||
) : Element(guiRenderer), LayoutedElement {
|
||||
private val background = ColorElement(guiRenderer, Vec2i.EMPTY, color = ChatColors.YELLOW)
|
||||
private val background = ColorElement(guiRenderer, Vec2i.EMPTY, color = ChatColors.DARK_BLUE)
|
||||
open var dead = false
|
||||
override var layoutOffset: Vec2i = position
|
||||
protected set
|
||||
|
Loading…
x
Reference in New Issue
Block a user