comctl32/listview: Test WM_PAINT with a subclassed header that paints without validating update regions.
--
v3: comctl32/listview: Validate header region after painting it.
comctl32/listview: Test WM_PAINT with a subclassed header that paints without validating update regions.
https://gitlab.winehq.org/wine/wine/-/merge_requests/8447
This MR fixes seek in VRChat by copying the sequence of flushes/stop/starts that Windows does.
The order on Windows is:
1. Stop sources;
2. Flush MFTs;
3. Start sources;
4. Request output down the chain of sink inputs;
6. Flush sinks; and
7. Start the clock
This takes place whether we pause before we seek or seek without pause.
Changes in version 2:
1. Add test to see when SAR requests new samples;
2. Add test to examine when step 4 from above takes place;
3. Adjust the seek implementation in `mf/session.c` to match findings from the new tests;
4. Adjust `mfmediaengine` to reflect findings from the new tests;
5. Refactored `if` statement in `session_start` to be a `switch` again
--
v5: mfmediaengine: Request sample if we are seeking.
mfmediaengine: Don't perform implicit flush on state change.
mf: Don't send MFT_MESSAGE_NOTIFY_START_OF_STREAM when seeking.
mf: Restart transforms and sinks on seek.
mf/tests: Test sequence of calls during a Pause and Seek.
https://gitlab.winehq.org/wine/wine/-/merge_requests/7932
Implementation PersistentZoneIdentifer object without any writing and reading zone information. OS Windows uses NTFS alternative data stream Zone.Identifer to write and read zone information. Also due to lack of reading zone information some test cases fails.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/8459
Shutting down the media source, while it is still in an active topology, causes Windows' media session to fully shut down. To avoid this, only clear the old presentation on release, shutdown or when a new topology was successfully set.
(FWIW: This solution is definitely not the greatest)
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/8462
Current implementation of system.fill_battery_state only reads "charge\__" and "current\__" attributes. Some batteries expose different attributes, namely "power\__" and "energy\__". Added the required logic to support both types.
Further, when rewriting the function I also added support for systems with multiple batteries. Windows documentation was not clear but from what I gathered struct SYSTEM_BATTERY_STATE sets Charging and Discharging if ANY battery is charging/discharging. So, to check if the overall system is charging/discharging only Rate can be used.
Also cleaned the code related to "AC". There was a "fixme" there which I didn't fully undertand as SYSTEM_BATTERY_STATE.AcOnLine == True if any AC is present, so the proper logic was already implemented
--
v6: ntdll: improve readibility of linux_battery capacity units
https://gitlab.winehq.org/wine/wine/-/merge_requests/8460