diff --git a/src/img/icons/orderbook-to-spread-active.svg b/src/img/icons/orderbook-to-spread-active.svg
new file mode 100644
index 0000000000..72e63883ba
--- /dev/null
+++ b/src/img/icons/orderbook-to-spread-active.svg
@@ -0,0 +1,3 @@
+
diff --git a/src/modules/app/less/app-icons.less b/src/modules/app/less/app-icons.less
index ed7b9237a3..780d8f62f2 100644
--- a/src/modules/app/less/app-icons.less
+++ b/src/modules/app/less/app-icons.less
@@ -394,6 +394,13 @@
background-position: center center;
}
+.icon-dex-tospread-active {
+ display: inline-block;
+ background-repeat: no-repeat;
+ background-position: center center;
+ background-image: @orderbook-to-spread-icon-active;
+}
+
.apple-store-btn,
.google-play-btn {
width: 135px;
diff --git a/src/modules/dex/directives/dexBlock/DexBlock.js b/src/modules/dex/directives/dexBlock/DexBlock.js
index 0e36211c44..77c561e3e5 100644
--- a/src/modules/dex/directives/dexBlock/DexBlock.js
+++ b/src/modules/dex/directives/dexBlock/DexBlock.js
@@ -99,7 +99,8 @@
block: '@',
hasSearch: '@',
canCollapse: '@',
- analyticsText: '<'
+ analyticsText: '<',
+ isActiveScroll: '<'
},
templateUrl: 'modules/dex/directives/dexBlock/dexBlock.html',
transclude: true,
diff --git a/src/modules/dex/directives/dexBlock/dexBlock.html b/src/modules/dex/directives/dexBlock/dexBlock.html
index d7a254a8bc..8f5d3e95e1 100644
--- a/src/modules/dex/directives/dexBlock/dexBlock.html
+++ b/src/modules/dex/directives/dexBlock/dexBlock.html
@@ -14,7 +14,11 @@
-
+
+
+
diff --git a/src/modules/dex/directives/dexBlock/dexBlock.less b/src/modules/dex/directives/dexBlock/dexBlock.less
index b48b2d93f7..ca81a2169d 100644
--- a/src/modules/dex/directives/dexBlock/dexBlock.less
+++ b/src/modules/dex/directives/dexBlock/dexBlock.less
@@ -59,6 +59,14 @@ w-dex-block {
i.tospread:hover {
background-color: @color-basic-100;
}
+
+ &.active {
+ cursor: default;
+ i.tospread {
+ background: @color-submit-400;
+ .icon-dex-tospread-active();
+ }
+ }
}
.dex-block-content {
diff --git a/src/modules/dex/directives/orderBook/OrderBook.js b/src/modules/dex/directives/orderBook/OrderBook.js
index 6619fc1366..2182934157 100644
--- a/src/modules/dex/directives/orderBook/OrderBook.js
+++ b/src/modules/dex/directives/orderBook/OrderBook.js
@@ -107,6 +107,11 @@
* @private
*/
this._dom = null;
+ /**
+ * @type {boolean}
+ * @public
+ */
+ this.isScrolled = false;
this.receive(dexDataService.showSpread, () => {
this._dom.$box.stop().animate({ scrollTop: this._getSpreadScrollPosition() }, 300);
@@ -176,6 +181,11 @@
$lastPrice: { get: () => this._dom.$info.find(SECTIONS.LAST_PRICE) },
$spread: { get: () => this._dom.$info.find(SECTIONS.SPREAD) }
});
+ this._dom.$box.on('scroll', () => {
+ const scrollPos = this._dom.$box[0].scrollTop;
+ const spreadPos = this._getSpreadScrollPosition();
+ this.isScrolled = Math.abs(scrollPos - spreadPos) >= 2;
+ });
}
nothingFound() {
@@ -470,6 +480,9 @@
angular.module('app.dex').component('wDexOrderBook', {
templateUrl: 'modules/dex/directives/orderBook/orderBook.html',
+ bindings: {
+ isScrolled: '='
+ },
controller
});
})();
diff --git a/src/modules/dex/templates/dex.html b/src/modules/dex/templates/dex.html
index d9b0986fd3..8adb51e598 100644
--- a/src/modules/dex/templates/dex.html
+++ b/src/modules/dex/templates/dex.html
@@ -10,8 +10,9 @@
-
+