The following patches fix sending of the LVN_ODSTATECHANGED notification for
LVS_OWNERDATA list views, adding more refined tests in the process and
fixing various bugs.
This is v5, with the added comment in 3/6 as requested on the mailing list.
These are the patches sent as a response to v4 by Zhiyi Zhang on the mailing list, unmodified apart from 3/6 or f24f4b7fd.
---
Warning: I have had access to the Windows Research Kernel (WRK) 1.2
~10 years ago. These changes are regarding comctrl32 & tests which are NOT
part of the WRK. As outlined in https://wiki.winehq.org/Developer_FAQ this
should therefore satisfy the requirement of ONLY submitting patches to
components I have NOT had access to.
--
v6: comctl32/tests: Add more ownerdata listview tests.
https://gitlab.winehq.org/wine/wine/-/merge_requests/550
Most games use c_dfDIJoystick2 which can support up to 8 absolute axes,
6 directional ones and 2 sliders.
With this change we now have 8 usable axes instead of six and we FIXME
if device exposes more than that.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/573
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=52128
Signed-off-by: Robert Wilhelm <robert.wilhelm(a)gmx.net>
--
v9: scrrun: Return path not found error if no folders were moved in MoveFolder().
scrrun: return path not found error if source ends with path separator in MoveFolder().
scrrun: Move directories only in MoveFolder().
scrrun: Support wildcards in MoveFolder().
scrrun: Move source dir into destination dir if destination ends with separator in MoveFolder().
scrrun: Check that source is directory in MoveFolder().
https://gitlab.winehq.org/wine/wine/-/merge_requests/391
Before https://gitlab.winehq.org/wine/wine/-/merge_requests/140, and to avoid a situation in the future where we might decide to implement this, and where the callback would be called asynchronously as they are supposed to, without the ASF reader filter supporting it.
--
v3: winegstreamer: Make IWMReader state transitions asynchronous.
winegstreamer: Leave the stream CS while waiting for a sample.
winegstreamer: Move IWMReaderCallbackAdvanced *callback_advanced to a local variable.
wmvcore/tests: Add more IWMReader_(Open|Start|Stop|Close) async checks.
https://gitlab.winehq.org/wine/wine/-/merge_requests/393
On Tue Aug 2 05:14:16 2022 +0000, **** wrote:
> Zebediah Figura (she/her) replied on the mailing list:
> ```
> On 7/31/22 06:53, Akihiro Sagawa wrote:
> > @@ -1573,6 +1575,37 @@ static void test_video_window(void)
> > todo_wine_if(i != 3)
> > ok(style == expected, "hwnd %p: got %#lx, expected %#lx\n",
> video_window, style, expected);
> >
> > + /* get source video size */
> > + err = mciSendCommandW(wDeviceID, MCI_WHERE,
> MCI_DGV_WHERE_SOURCE, (DWORD_PTR)&parm);
> > + ok(!err,"mciCommand where source returned %s\n", dbg_mcierr(err));
> > + src_rc = parm.where.rc;
> This should just be equal to the whole video rect (0,0)-(64,32) [unless,
> I suspect, it is set by MCI_DGV_PUT_SOURCE]; would you mind adding an
> explicit test for that?
> > +
> > + /* test default video destination size */
> > + err = mciSendCommandW(wDeviceID, MCI_WHERE,
> MCI_DGV_WHERE_DESTINATION, (DWORD_PTR)&parm);
> > + ok(!err,"mciCommand where destination returned %s\n", dbg_mcierr(err));
> > + if (style & (WS_POPUP|WS_CHILD))
> > + rc = src_rc;
> > + else
> > + GetClientRect(video_window, &rc);
> > + todo_wine_if(style & (WS_POPUP|WS_CHILD))
> > + ok(EqualRect(&parm.where.rc, &rc), "got %s, expected %s\n",
> wine_dbgstr_rect(&parm.where.rc), wine_dbgstr_rect(&rc));
> And this should too. The test here is a bit awkward as such because the
> destination and source rect are *always* equal, and separately, the
> client rect will also be equal to the video size if the window is a
> popup or child.
> > +
> > + /* test default video window size */
> > + rc = src_rc;
> > + AdjustWindowRect(&rc, WS_OVERLAPPEDWINDOW, FALSE); /* sigh */
> > + OffsetRect(&rc, -rc.left, -rc.top);
> > + rc.right = max(rc.right, GetSystemMetrics(SM_CXMIN));
> I gather "sigh" here means "Windows is broken", in the way spelled out
> in 8/11, right? It wouldn't hurt to spell that out explicitly ;-)
> _______________________________________________
> wine-gitlab mailing list -- wine-gitlab(a)winehq.org
> To unsubscribe send an email to wine-gitlab-leave(a)winehq.org
> ```
```
> @@ -1573,6 +1575,37 @@ static void test_video_window(void)
> todo_wine_if(i != 3)
> ok(style == expected, "hwnd %p: got %#lx, expected %#lx\n", video_window, style, expected);
>
> + /* get source video size */
> + err = mciSendCommandW(wDeviceID, MCI_WHERE, MCI_DGV_WHERE_SOURCE, (DWORD_PTR)&parm);
> + ok(!err,"mciCommand where source returned %s\n", dbg_mcierr(err));
> + src_rc = parm.where.rc;
```
> This should just be equal to the whole video rect (0,0)-(64,32) [unless,
> I suspect, it is set by MCI_DGV_PUT_SOURCE]; would you mind adding an
> explicit test for that?
Not at all. Actually, video rect is (0,0)-(32,24).
```
> +
> + /* test default video destination size */
> + err = mciSendCommandW(wDeviceID, MCI_WHERE, MCI_DGV_WHERE_DESTINATION, (DWORD_PTR)&parm);
> + ok(!err,"mciCommand where destination returned %s\n", dbg_mcierr(err));
> + if (style & (WS_POPUP|WS_CHILD))
> + rc = src_rc;
> + else
> + GetClientRect(video_window, &rc);
> + todo_wine_if(style & (WS_POPUP|WS_CHILD))
> + ok(EqualRect(&parm.where.rc, &rc), "got %s, expected %s\n", wine_dbgstr_rect(&parm.where.rc), wine_dbgstr_rect(&rc));
```
> And this should too. The test here is a bit awkward as such because the
> destination and source rect are *always* equal, and separately, the
> client rect will also be equal to the video size if the window is a
> popup or child.
Minimum width of video window is SM_CXMIN. So, if the video width less than SM_CXMIN approximately, destination rect isn't identical to the source one.
```
> +
> + /* test default video window size */
> + rc = src_rc;
> + AdjustWindowRect(&rc, WS_OVERLAPPEDWINDOW, FALSE); /* sigh */
> + OffsetRect(&rc, -rc.left, -rc.top);
> + rc.right = max(rc.right, GetSystemMetrics(SM_CXMIN));
```
> I gather "sigh" here means "Windows is broken", in the way spelled out
> in 8/11, right? It wouldn't hurt to spell that out explicitly ;-)
Right.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/557#note_5586
Some installers, like the visual studio installer, also make use of this function, instead of just NCryptVerifySignature.
--
v4: ncrypt: Initial implementation for NCryptEncrypt.
bcrypt: Initial RSA encryption implementation.
bcrypt/tests: Test for BCryptEncrypt with RSA keys.
https://gitlab.winehq.org/wine/wine/-/merge_requests/565