Re: keybd_event patch and default combobox height patch
Peter Hercek wrote:
server/queue.c Fixes an error in keybd_event function. This function sends events even between different processes on win32. This was not handled in wine.
dlls/user/combo.c The default size for comboxes was 2 pixels bigger in wine at the standard dpi.
The patches are against wine 20041019.
Index: server/queue.c =================================================================== --- server/queue.c (revision 29655) +++ server/queue.c (working copy) @@ -1073,6 +1073,8 @@ *msg_code = msg->msg; if (is_keyboard_msg( msg )) { + if (!input || !(input->focus) || !(input->active)) + input = foreground_input; if (input && !(win = input->focus)) { win = input->active; Index: dlls/user/combo.c =================================================================== --- dlls/user/combo.c (revision 29655) +++ dlls/user/combo.c (working copy) @@ -207,8 +207,10 @@ * The height of the text area is set in two ways. * It can be set explicitly through a combobox message or through a * WM_MEASUREITEM callback. - * If this is not the case, the height is set to 13 dialog units. - * This height was determined through experimentation. + * If this is not the case, the height is set to 12 dialog units. + * This height was determined through experimentation. It was + * set to 13 originally but this led to higher comboboxes than + * in windows. */ static INT CBGetTextAreaHeight( HWND hwnd, @@ -239,7 +241,7 @@
ReleaseDC(hwnd, hDC);
- iTextItemHeight = ((13 * baseUnitY) / 8); + iTextItemHeight = ((12 * baseUnitY) / 8);
/* * This "formula" calculates the height of the complete control.
These should have been sent as two separate patches. since they address two different issues. -- Tony Lambregts
participants (1)
-
tony_lambregts@telusplanet.net