Qt,Qt5,Qt6: proper initialization of scrolled offset. issue #41513

(cherry picked from commit 9b5d42ffa5)

Co-authored-by: zeljan1 <zeljko@holobit.hr>
This commit is contained in:
Željan Rikalo 2025-03-25 19:40:33 +01:00 committed by Željan Rikalo
parent a53bc7e03d
commit 37e4202ec6
3 changed files with 24 additions and 0 deletions

View File

@ -17718,6 +17718,14 @@ begin
@ViewPortEventFilter);
setViewport(FViewPortWidget.Widget);
if (LCLObject is TScrollingWinControl) then
begin
if TScrollingWinControl(LCLObject).VertScrollBar.Visible then
FViewportWidget.FScrollY := -TScrollingWinControl(LCLObject).VertScrollBar.Position;
if TScrollingWinControl(LCLObject).HorzScrollBar.Visible then
FViewportWidget.FScrollX := -TScrollingWinControl(LCLObject).HorzScrollBar.Position;
end;
end;
procedure TQtCustomControl.viewportDelete;

View File

@ -18344,6 +18344,14 @@ begin
@ViewPortEventFilter);
setViewport(FViewPortWidget.Widget);
if (LCLObject is TScrollingWinControl) then
begin
if TScrollingWinControl(LCLObject).VertScrollBar.Visible then
FViewportWidget.FScrollY := -TScrollingWinControl(LCLObject).VertScrollBar.Position;
if TScrollingWinControl(LCLObject).HorzScrollBar.Visible then
FViewportWidget.FScrollX := -TScrollingWinControl(LCLObject).HorzScrollBar.Position;
end;
end;
procedure TQtCustomControl.viewportDelete;

View File

@ -18251,6 +18251,14 @@ begin
@ViewPortEventFilter);
setViewport(FViewPortWidget.Widget);
if (LCLObject is TScrollingWinControl) then
begin
if TScrollingWinControl(LCLObject).VertScrollBar.Visible then
FViewportWidget.FScrollY := -TScrollingWinControl(LCLObject).VertScrollBar.Position;
if TScrollingWinControl(LCLObject).HorzScrollBar.Visible then
FViewportWidget.FScrollX := -TScrollingWinControl(LCLObject).HorzScrollBar.Position;
end;
end;
procedure TQtCustomControl.viewportDelete;