mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-12-06 09:27:50 +01:00
Qt: do not scroll scrollable form if scrollbars aren't visible.
git-svn-id: trunk@44503 -
This commit is contained in:
parent
5deb6a8715
commit
98a3e1a08c
@ -8076,7 +8076,7 @@ begin
|
||||
if (QEvent_type(Event) = QEventKeyRelease) and not
|
||||
(QKeyEvent_isAutoRepeat(QKeyEventH(event))) then
|
||||
begin
|
||||
Case QKeyEvent_key(QKeyEventH(Event)) of
|
||||
case QKeyEvent_key(QKeyEventH(Event)) of
|
||||
QtKey_Left, QtKey_Up, QtKey_Right, QtKey_Down,
|
||||
QtKey_PageUp, QtKey_PageDown, QtKey_Home, QtKey_End:
|
||||
QAbstractSlider_triggerAction(QAbstractSliderH(Widget),
|
||||
|
||||
@ -266,6 +266,7 @@ class procedure TQtWSCustomForm.ScrollBy(
|
||||
{$IFDEF QTSCROLLABLEFORMS}
|
||||
var
|
||||
Widget: TQtMainWindow;
|
||||
X, Y: Integer;
|
||||
{$ENDIF}
|
||||
begin
|
||||
{$IFDEF QTSCROLLABLEFORMS}
|
||||
@ -273,7 +274,15 @@ begin
|
||||
Exit;
|
||||
Widget := TQtMainWindow(AWinControl.Handle);
|
||||
if Assigned(Widget.ScrollArea) then
|
||||
Widget.ScrollArea.scroll(DeltaX, DeltaY);
|
||||
begin
|
||||
X := DeltaX;
|
||||
Y := DeltaY;
|
||||
if (X <> 0) and not Widget.ScrollArea.horizontalScrollBar.getVisible then
|
||||
X := 0;
|
||||
if (Y <> 0) and not Widget.ScrollArea.verticalScrollBar.getVisible then
|
||||
Y := 0;
|
||||
Widget.ScrollArea.scroll(X, Y);
|
||||
end;
|
||||
{$ENDIF}
|
||||
end;
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user