diff options
-rw-r--r-- | src/guiFormSpecMenu.cpp | 19 | ||||
-rw-r--r-- | src/guiFormSpecMenu.h | 2 |
2 files changed, 12 insertions, 9 deletions
diff --git a/src/guiFormSpecMenu.cpp b/src/guiFormSpecMenu.cpp index e82ea829c..edbb595c2 100644 --- a/src/guiFormSpecMenu.cpp +++ b/src/guiFormSpecMenu.cpp @@ -83,6 +83,7 @@ GUIFormSpecMenu::GUIFormSpecMenu(irr::IrrlichtDevice* dev, m_selected_amount(0), m_selected_dragging(false), m_tooltip_element(NULL), + m_hovered_time(0), m_old_tooltip_id(-1), m_allowclose(true), m_lock(false), @@ -2346,18 +2347,20 @@ void GUIFormSpecMenu::drawMenu() if (hovered != NULL) { s32 id = hovered->getID(); - u32 delta; + + u32 delta = 0; if (id == -1) { m_old_tooltip_id = id; m_old_tooltip = ""; - delta = 0; - } else if (id != m_old_tooltip_id) { - m_hoovered_time = getTimeMs(); - m_old_tooltip_id = id; - delta = 0; - } else if (id == m_old_tooltip_id) { - delta = porting::getDeltaMs(m_hoovered_time, getTimeMs()); + } else { + if (id == m_old_tooltip_id) { + delta = porting::getDeltaMs(m_hovered_time, getTimeMs()); + } else { + m_hovered_time = getTimeMs(); + m_old_tooltip_id = id; + } } + if (id != -1 && delta >= m_tooltip_show_delay) { for(std::vector<FieldSpec>::iterator iter = m_fields.begin(); iter != m_fields.end(); iter++) { diff --git a/src/guiFormSpecMenu.h b/src/guiFormSpecMenu.h index d38e9ec46..d5bd112cc 100644 --- a/src/guiFormSpecMenu.h +++ b/src/guiFormSpecMenu.h @@ -324,7 +324,7 @@ protected: gui::IGUIStaticText *m_tooltip_element; u32 m_tooltip_show_delay; - s32 m_hoovered_time; + s32 m_hovered_time; s32 m_old_tooltip_id; std::string m_old_tooltip; |