From 8f4f13a735339829f31a4a478e594a35608ba85b Mon Sep 17 00:00:00 2001 From: smk762 Date: Thu, 13 Jun 2024 20:18:14 +0800 Subject: [PATCH] more triggers to scroll asks to bottom in pro orderbook --- .../Dex/Exchange/Trade/OrderBook/List.qml | 36 ++++++++++++++++--- .../Dex/Exchange/Trade/OrderBook/Vertical.qml | 1 - 2 files changed, 32 insertions(+), 5 deletions(-) diff --git a/atomic_defi_design/Dex/Exchange/Trade/OrderBook/List.qml b/atomic_defi_design/Dex/Exchange/Trade/OrderBook/List.qml index 16b15f0d9d..e67d03e6e0 100644 --- a/atomic_defi_design/Dex/Exchange/Trade/OrderBook/List.qml +++ b/atomic_defi_design/Dex/Exchange/Trade/OrderBook/List.qml @@ -12,7 +12,6 @@ Item id: _control property bool isAsk - property bool isVertical: false width: parent.width height: parent.height @@ -29,7 +28,11 @@ Item onContentHeightChanged: { - if (isVertical) _tm.start(); + if (isAsk){ + // Duplication is intended. Sometimes data takes too long to load so slowscroll is a backup. + slowscroll_timer.start(); + quickscroll_timer.start() + } } delegate: Item @@ -47,12 +50,37 @@ Item Timer { - id: _tm - interval: 2000 + id: slowscroll_timer + interval: 1500 onTriggered: { orderbook_list.positionViewAtEnd() } } + Timer + { + id: quickscroll_timer + interval: 500 + onTriggered: + { + orderbook_list.positionViewAtEnd() + } + } + onModelChanged: { + if (isAsk) quickscroll_timer.start() + } + } + + Connections { + target: API.app.trading_pg + onMarketModeChanged: { + if (isAsk) quickscroll_timer.start() + } + onOrderbookChanged: { + if (isAsk) quickscroll_timer.start() + } + onMarketPairsChanged: { + if (isAsk) quickscroll_timer.start() + } } } \ No newline at end of file diff --git a/atomic_defi_design/Dex/Exchange/Trade/OrderBook/Vertical.qml b/atomic_defi_design/Dex/Exchange/Trade/OrderBook/Vertical.qml index 74d07bcafc..a32347e739 100644 --- a/atomic_defi_design/Dex/Exchange/Trade/OrderBook/Vertical.qml +++ b/atomic_defi_design/Dex/Exchange/Trade/OrderBook/Vertical.qml @@ -29,7 +29,6 @@ Widget List { isAsk: true - isVertical: true Layout.fillHeight: true Layout.fillWidth: true }