mirror of
git://source.winehq.org/git/wine.git
synced 2024-10-06 07:27:12 +00:00
win32u: Use user message packing for WM_GETMINMAXINFO.
This commit is contained in:
parent
4777bd62ae
commit
f104be399b
|
@ -840,9 +840,7 @@ BOOL unpack_message( HWND hwnd, UINT message, WPARAM *wparam, LPARAM *lparam,
|
|||
case LB_DIR:
|
||||
case LB_ADDFILE:
|
||||
case EM_REPLACESEL:
|
||||
break;
|
||||
case WM_GETMINMAXINFO:
|
||||
minsize = sizeof(MINMAXINFO);
|
||||
break;
|
||||
case WM_DRAWITEM:
|
||||
{
|
||||
|
@ -1187,6 +1185,7 @@ BOOL WINAPI User32CallWindowProc( struct win_proc_params *params, ULONG size )
|
|||
case LB_DIR:
|
||||
case LB_ADDFILE:
|
||||
case EM_REPLACESEL:
|
||||
case WM_GETMINMAXINFO:
|
||||
{
|
||||
LRESULT *result_ptr = (LRESULT *)buffer - 1;
|
||||
*result_ptr = result;
|
||||
|
|
|
@ -430,6 +430,9 @@ static BOOL unpack_message( HWND hwnd, UINT message, WPARAM *wparam, LPARAM *lpa
|
|||
case LB_ADDFILE:
|
||||
case EM_REPLACESEL:
|
||||
break;
|
||||
case WM_GETMINMAXINFO:
|
||||
minsize = sizeof(MINMAXINFO);
|
||||
break;
|
||||
case WM_WINE_SETWINDOWPOS:
|
||||
{
|
||||
WINDOWPOS wp;
|
||||
|
@ -1214,6 +1217,9 @@ size_t user_message_size( UINT message, WPARAM wparam, LPARAM lparam, BOOL other
|
|||
case EM_REPLACESEL:
|
||||
if (other_process && lparam) size = string_size( lparam_ptr, ansi );
|
||||
break;
|
||||
case WM_GETMINMAXINFO:
|
||||
size = sizeof(MINMAXINFO);
|
||||
break;
|
||||
}
|
||||
|
||||
return size;
|
||||
|
@ -1325,6 +1331,9 @@ static void copy_user_result( void *buffer, size_t size, LRESULT result, UINT me
|
|||
case WM_ASKCBFORMATNAME:
|
||||
copy_size = string_size( buffer, ansi );
|
||||
break;
|
||||
case WM_GETMINMAXINFO:
|
||||
copy_size = sizeof(MINMAXINFO);
|
||||
break;
|
||||
default:
|
||||
return;
|
||||
}
|
||||
|
@ -1349,9 +1358,6 @@ static void copy_reply( LRESULT result, HWND hwnd, UINT message, WPARAM wparam,
|
|||
case LB_GETTEXT:
|
||||
copy_size = (result + 1) * sizeof(WCHAR);
|
||||
break;
|
||||
case WM_GETMINMAXINFO:
|
||||
copy_size = sizeof(MINMAXINFO);
|
||||
break;
|
||||
case WM_MEASUREITEM:
|
||||
copy_size = sizeof(MEASUREITEMSTRUCT);
|
||||
break;
|
||||
|
|
|
@ -1608,6 +1608,8 @@ static void test_wndproc_hook(void)
|
|||
static const WCHAR strbuf4W[8] = L"abc\0\xcccc\xcccc\xcccc\xcccc";
|
||||
static const RECT rect_in = { 1, 2, 100, 200 };
|
||||
static const RECT rect_out = { 3, 4, 110, 220 };
|
||||
static const MINMAXINFO minmax_in = { .ptMinTrackSize.x = 1 };
|
||||
static const MINMAXINFO minmax_out = { .ptMinTrackSize.x = 2 };
|
||||
|
||||
static const struct lparam_hook_test lparam_hook_tests[] =
|
||||
{
|
||||
|
@ -1692,6 +1694,11 @@ static void test_wndproc_hook(void)
|
|||
.lparam_size = sizeof(BOOL), .change_lparam = &false_lparam,
|
||||
.todo = TRUE
|
||||
},
|
||||
{
|
||||
"WM_GETMINMAXINFO", WM_GETMINMAXINFO,
|
||||
.lparam_size = sizeof(minmax_in), .lparam = &minmax_in, .change_lparam = &minmax_out,
|
||||
.check_size = sizeof(minmax_in)
|
||||
},
|
||||
/* messages that don't change lparam */
|
||||
{ "WM_USER", WM_USER },
|
||||
{ "WM_NOTIFY", WM_NOTIFY },
|
||||
|
|
|
@ -697,6 +697,7 @@ static size_t packed_result_32to64( UINT message, WPARAM wparam, const void *par
|
|||
|
||||
case WM_GETTEXT:
|
||||
case WM_ASKCBFORMATNAME:
|
||||
case WM_GETMINMAXINFO:
|
||||
break;
|
||||
|
||||
default:
|
||||
|
|
Loading…
Reference in a new issue