From 3affc0b56ada3fa72c98bf7640016ecfa25a6510 Mon Sep 17 00:00:00 2001 From: RickyRister Date: Mon, 2 Dec 2024 21:19:55 -0800 Subject: [PATCH] get thing to work --- cockatrice/src/game/zones/view_zone_widget.cpp | 14 +++++++++++++- cockatrice/src/game/zones/view_zone_widget.h | 1 + 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/cockatrice/src/game/zones/view_zone_widget.cpp b/cockatrice/src/game/zones/view_zone_widget.cpp index 04b1a26ba..a244c8040 100644 --- a/cockatrice/src/game/zones/view_zone_widget.cpp +++ b/cockatrice/src/game/zones/view_zone_widget.cpp @@ -245,6 +245,19 @@ void ZoneViewWidget::moveEvent(QGraphicsSceneMoveEvent * /* event */) setPos(scenePos); } +void ZoneViewWidget::resizeEvent(QGraphicsSceneResizeEvent *event) +{ + if (!zone) + return; + + // We need to manually resize the scroll bar whenever the window gets resized + qreal totalZoneHeight = zone->getOptimumRect().height(); + qreal newWindowHeight = event->newSize().height(); + qreal newZoneHeight = newWindowHeight - extraHeight - 10; + + scrollBar->setMaximum(totalZoneHeight - newZoneHeight); +} + void ZoneViewWidget::resizeToZoneContents() { QRectF zoneRect = zone->getOptimumRect(); @@ -261,7 +274,6 @@ void ZoneViewWidget::resizeToZoneContents() resize(initialSize); zone->setGeometry(QRectF(0, -scrollBar->value(), zoneContainer->size().width(), totalZoneHeight)); - scrollBar->setMaximum(totalZoneHeight - initialZoneHeight); if (layout()) layout()->invalidate(); diff --git a/cockatrice/src/game/zones/view_zone_widget.h b/cockatrice/src/game/zones/view_zone_widget.h index bb5ec7128..677e0127e 100644 --- a/cockatrice/src/game/zones/view_zone_widget.h +++ b/cockatrice/src/game/zones/view_zone_widget.h @@ -65,6 +65,7 @@ private slots: void handleScrollBarChange(int value); void zoneDeleted(); void moveEvent(QGraphicsSceneMoveEvent * /* event */); + void resizeEvent(QGraphicsSceneResizeEvent * /* event */); public: ZoneViewWidget(Player *_player,