Commit 3228b4d1 authored by Erich Hoover's avatar Erich Hoover Committed by Alexandre Julliard

hhctrl.ocx: Use the correct values for current_tab when some tabs are disabled.

parent 988307e8
......@@ -448,6 +448,7 @@ static LRESULT Child_OnSize(HWND hwnd)
static LRESULT OnTabChange(HWND hwnd)
{
HHInfo *info = (HHInfo*)GetWindowLongPtrW(hwnd, GWLP_USERDATA);
int tab_id, tab_index, i;
TRACE("%p\n", hwnd);
......@@ -457,7 +458,23 @@ static LRESULT OnTabChange(HWND hwnd)
if(info->tabs[info->current_tab].hwnd)
ShowWindow(info->tabs[info->current_tab].hwnd, SW_HIDE);
info->current_tab = SendMessageW(info->hwndTabCtrl, TCM_GETCURSEL, 0, 0);
tab_id = (int) SendMessageW(info->hwndTabCtrl, TCM_GETCURSEL, 0, 0);
/* convert the ID of the tab to an index in our tab list */
tab_index = -1;
for (i=0; i<TAB_NUMTABS; i++)
{
if (info->tabs[i].id == tab_id)
{
tab_index = i;
break;
}
}
if (tab_index == -1)
{
FIXME("Tab ID %d does not correspond to a valid index in the tab list.\n", tab_id);
return 0;
}
info->current_tab = tab_index;
if(info->tabs[info->current_tab].hwnd)
ShowWindow(info->tabs[info->current_tab].hwnd, SW_SHOW);
......
......@@ -111,6 +111,7 @@ typedef struct CHMInfo
#define TAB_INDEX 1
#define TAB_SEARCH 2
#define TAB_FAVORITES 3
#define TAB_NUMTABS TAB_FAVORITES
typedef struct {
HWND hwnd;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment