hhctrl.ocx: Fix a double-click bug in the Contents tab introduced by the Index tab code.

This commit is contained in:
Erich Hoover 2010-01-28 16:16:02 -07:00 committed by Alexandre Julliard
parent a0774cabab
commit 3a824542a5

View File

@ -397,9 +397,8 @@ static LRESULT OnTabChange(HWND hwnd)
return 0; return 0;
} }
static LRESULT OnTopicChange(HWND hwnd, void *user_data) static LRESULT OnTopicChange(HHInfo *info, void *user_data)
{ {
HHInfo *info = (HHInfo*)GetWindowLongPtrW(hwnd, GWLP_USERDATA);
LPCWSTR chmfile = NULL, name = NULL, local = NULL; LPCWSTR chmfile = NULL, name = NULL, local = NULL;
ContentItem *citer; ContentItem *citer;
IndexItem *iiter; IndexItem *iiter;
@ -474,14 +473,17 @@ static LRESULT CALLBACK Child_WndProc(HWND hWnd, UINT message, WPARAM wParam, LP
case WM_SIZE: case WM_SIZE:
return Child_OnSize(hWnd); return Child_OnSize(hWnd);
case WM_NOTIFY: { case WM_NOTIFY: {
HHInfo *info = (HHInfo*)GetWindowLongPtrW(hWnd, GWLP_USERDATA);
NMHDR *nmhdr = (NMHDR*)lParam; NMHDR *nmhdr = (NMHDR*)lParam;
switch(nmhdr->code) { switch(nmhdr->code) {
case TCN_SELCHANGE: case TCN_SELCHANGE:
return OnTabChange(hWnd); return OnTabChange(hWnd);
case TVN_SELCHANGEDW: case TVN_SELCHANGEDW:
return OnTopicChange(hWnd, (void*)((NMTREEVIEWW *)lParam)->itemNew.lParam); return OnTopicChange(info, (void*)((NMTREEVIEWW *)lParam)->itemNew.lParam);
case NM_DBLCLK: case NM_DBLCLK:
return OnTopicChange(hWnd, (void*)((NMITEMACTIVATE *)lParam)->lParam); if(info->current_tab == TAB_INDEX)
return OnTopicChange(info, (void*)((NMITEMACTIVATE *)lParam)->lParam);
} }
break; break;
} }