mirror of
https://github.com/reactos/reactos.git
synced 2025-02-22 16:36:33 +00:00
[WIN32SS] Fix multiple scrollbar redraw issues
This fixes:
- CORE-15911 "Scrollbars do not dissapear when Maximizing and not needed"
- CORE-10617 "ListView corrupt scrollbar upon resizing the column-header"
and will appease regression:
- CORE-15429 "Uninitialized scrollbars in 'My Computer'"
By applying clientFix.patch from CORE-15911 contributed by JIRA-user 'I_Kill_Bugs'.
https://reactos.org/testman/compare.php?ids=66723,66729
Earlier I already committed this fix into 0.4.12-RC-9-g
5ac548544f
This commit is contained in:
parent
89c936fdd6
commit
1158c24194
1 changed files with 7 additions and 3 deletions
|
@ -1832,7 +1832,7 @@ co_WinPosSetWindowPos(
|
|||
}
|
||||
|
||||
/* Calculate the non client area for resizes, as this is used in the copy region */
|
||||
if (!(WinPos.flags & SWP_NOSIZE))
|
||||
if ((WinPos.flags & (SWP_NOSIZE | SWP_FRAMECHANGED)) != SWP_NOSIZE)
|
||||
{
|
||||
VisBeforeJustClient = VIS_ComputeVisibleRegion(Window, TRUE, FALSE,
|
||||
(Window->style & WS_CLIPSIBLINGS) ? TRUE : FALSE);
|
||||
|
@ -1973,12 +1973,16 @@ co_WinPosSetWindowPos(
|
|||
*/
|
||||
|
||||
CopyRgn = IntSysCreateRectpRgn(0, 0, 0, 0);
|
||||
if (WinPos.flags & SWP_NOSIZE)
|
||||
if ((WinPos.flags & SWP_NOSIZE) && (WinPos.flags & SWP_NOCLIENTSIZE))
|
||||
RgnType = IntGdiCombineRgn(CopyRgn, VisAfter, VisBefore, RGN_AND);
|
||||
else if (VisBeforeJustClient != NULL)
|
||||
{
|
||||
RgnType = IntGdiCombineRgn(CopyRgn, VisAfter, VisBeforeJustClient, RGN_AND);
|
||||
REGION_Delete(VisBeforeJustClient);
|
||||
}
|
||||
|
||||
if (VisBeforeJustClient != NULL)
|
||||
{
|
||||
REGION_Delete(VisBeforeJustClient);
|
||||
}
|
||||
|
||||
/* Now use in copying bits which are in the update region. */
|
||||
|
|
Loading…
Reference in a new issue