about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/game/client/components/menus_demo.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/game/client/components/menus_demo.cpp b/src/game/client/components/menus_demo.cpp
index e03b70aa..2b0cb946 100644
--- a/src/game/client/components/menus_demo.cpp
+++ b/src/game/client/components/menus_demo.cpp
@@ -376,7 +376,7 @@ CMenus::CListboxItem CMenus::UiDoListboxNextItem(void *pId, bool Selected)
 					if(NewIndex > -1 && NewIndex < gs_ListBoxNumItems)
 					{
 						// scroll
-						float Offset = (NewIndex-gs_ListBoxNewSelected)*gs_ListBoxRowHeight;
+						float Offset = (NewIndex/gs_ListBoxItemsPerRow-gs_ListBoxNewSelected/gs_ListBoxItemsPerRow)*gs_ListBoxRowHeight;
 						int Scroll = gs_ListBoxOriginalView.y > Item.m_Rect.y+Offset ? -1 :
 										gs_ListBoxOriginalView.y+gs_ListBoxOriginalView.h < Item.m_Rect.y+Item.m_Rect.h+Offset ? 1 : 0;
 						if(Scroll)
@@ -385,13 +385,13 @@ CMenus::CListboxItem CMenus::UiDoListboxNextItem(void *pId, bool Selected)
 							int ScrollNum = (gs_ListBoxNumItems+gs_ListBoxItemsPerRow-1)/gs_ListBoxItemsPerRow-NumViewable+1;
 							if(Scroll < 0)
 							{
-								int Num = (gs_ListBoxOriginalView.y-Item.m_Rect.y-Offset+gs_ListBoxRowHeight-1.0f)/(gs_ListBoxItemsPerRow*gs_ListBoxRowHeight);
+								int Num = (gs_ListBoxOriginalView.y-Item.m_Rect.y-Offset+gs_ListBoxRowHeight-1.0f)/gs_ListBoxRowHeight;
 								gs_ListBoxScrollValue -= (1.0f/ScrollNum)*Num;
 							}
 							else
 							{
 								int Num = (Item.m_Rect.y+Item.m_Rect.h+Offset-(gs_ListBoxOriginalView.y+gs_ListBoxOriginalView.h)+gs_ListBoxRowHeight-1.0f)/
-									(gs_ListBoxItemsPerRow*gs_ListBoxRowHeight);
+									gs_ListBoxRowHeight;
 								gs_ListBoxScrollValue += (1.0f/ScrollNum)*Num;
 							}
 							if(gs_ListBoxScrollValue < 0.0f) gs_ListBoxScrollValue = 0.0f;