diff --git a/package-lock.json b/package-lock.json
index 9e9c476..db7c050 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1082,6 +1082,21 @@
"@babel/plugin-syntax-import-meta": "7.0.0-beta.49"
}
},
+ "@babel/runtime": {
+ "version": "7.0.0-rc.1",
+ "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.0.0-rc.1.tgz",
+ "integrity": "sha512-Nifv2kwP/nwR39cAOasNxzjYfpeuf/ZbZNtQz5eYxWTC9yHARU9wItFnAwz1GTZ62MU+AtSjzZPMbLK5Q9hmbg==",
+ "requires": {
+ "regenerator-runtime": "^0.12.0"
+ },
+ "dependencies": {
+ "regenerator-runtime": {
+ "version": "0.12.1",
+ "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.12.1.tgz",
+ "integrity": "sha512-odxIc1/vDlo4iZcfXqRYFj0vpXFNoGdKMAUieAlFYO6m/nl5e9KR/beGf41z4a1FI+aQgtjhuaSlDxQ0hmkrHg=="
+ }
+ }
+ },
"@babel/template": {
"version": "7.0.0-beta.49",
"resolved": "https://registry.npmjs.org/@babel/template/-/template-7.0.0-beta.49.tgz",
@@ -4245,9 +4260,9 @@
}
},
"bowser": {
- "version": "1.9.1",
- "resolved": "https://registry.npmjs.org/bowser/-/bowser-1.9.1.tgz",
- "integrity": "sha512-UXti1JB6oK8hO983AImunnV6j/fqAEeDlPXh99zhsP5g32oLbxJJ6qcOaUesR+tqqhnUVQHlRJyD0dfiV0Hxaw=="
+ "version": "1.9.4",
+ "resolved": "https://registry.npmjs.org/bowser/-/bowser-1.9.4.tgz",
+ "integrity": "sha512-9IdMmj2KjigRq6oWhmwv1W36pDuA4STQZ8q6YO9um+x07xgYNCD3Oou+WP/3L1HNz7iqythGet3/p4wvc8AAwQ=="
},
"boxen": {
"version": "1.3.0",
@@ -4871,9 +4886,9 @@
}
},
"chain-function": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/chain-function/-/chain-function-1.0.0.tgz",
- "integrity": "sha1-DUqzfn4Y6tC9xHuSB2QRjOWHM9w="
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/chain-function/-/chain-function-1.0.1.tgz",
+ "integrity": "sha512-SxltgMwL9uCko5/ZCLiyG2B7R9fY4pDZUw7hJ4MhirdjBLosoDqkWABi3XMucddHdLiFJMb7PD2MZifZriuMTg=="
},
"chalk": {
"version": "2.3.0",
@@ -6129,11 +6144,19 @@
"dev": true
},
"css-in-js-utils": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/css-in-js-utils/-/css-in-js-utils-2.0.0.tgz",
- "integrity": "sha512-yuWmPMD9FLi50Xf3k8W8oO3WM1eVnxEGCldCLyfusQ+CgivFk0s23yst4ooW6tfxMuSa03S6uUEga9UhX6GRrA==",
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/css-in-js-utils/-/css-in-js-utils-2.0.1.tgz",
+ "integrity": "sha512-PJF0SpJT+WdbVVt0AOYp9C8GnuruRlL/UFW7932nLWmFLQTaWEzTBQEx7/hn4BuV+WON75iAViSUJLiU3PKbpA==",
"requires": {
- "hyphenate-style-name": "^1.0.2"
+ "hyphenate-style-name": "^1.0.2",
+ "isobject": "^3.0.1"
+ },
+ "dependencies": {
+ "isobject": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
+ "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8="
+ }
}
},
"css-loader": {
@@ -9970,9 +9993,9 @@
"integrity": "sha512-v0XCLxICi9nPfYrS9RL8HbYnXi9obYAeLbSP00BmnZwCK9+Ih9WOjoZ8YoHCoav2csqn4FOz4Orldsy2dmDwmQ=="
},
"hoist-non-react-statics": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-2.3.1.tgz",
- "integrity": "sha1-ND24TGAYxlB3iJgkATWhQg7iLOA="
+ "version": "2.5.5",
+ "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-2.5.5.tgz",
+ "integrity": "sha512-rqcy4pJo55FTTLWt+bU8ukscqHeE/e9KWvsOW2b/a3afxQZhwkQdT1rPPCJ0rYXdj4vNcasY8zHTH+jF/qStxw=="
},
"home-or-tmp": {
"version": "2.0.0",
@@ -11079,9 +11102,9 @@
}
},
"keycode": {
- "version": "2.1.9",
- "resolved": "https://registry.npmjs.org/keycode/-/keycode-2.1.9.tgz",
- "integrity": "sha1-lkojxU5IiUBbSGGlyfBIDUUUHfo="
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/keycode/-/keycode-2.2.0.tgz",
+ "integrity": "sha1-PQr1bce4uOXLqNCpfxByBO7CKwQ="
},
"keyv": {
"version": "3.0.0",
@@ -11509,9 +11532,9 @@
"dev": true
},
"lodash.merge": {
- "version": "4.6.0",
- "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.0.tgz",
- "integrity": "sha1-aYhLoUSsM/5plzemCG3v+t0PicU="
+ "version": "4.6.1",
+ "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.1.tgz",
+ "integrity": "sha512-AOYza4+Hf5z1/0Hztxpm2/xiPZgi/cjMqdnKTUWTBSKchJlxXXuUSxCCl8rJlf4g6yww/j6mA8nC8Hw/EZWxKQ=="
},
"lodash.template": {
"version": "4.4.0",
@@ -11709,9 +11732,9 @@
"integrity": "sha1-GZTfLTr0gR3lmmcUk0wrIpJzRRg="
},
"material-ui": {
- "version": "0.20.0",
- "resolved": "https://registry.npmjs.org/material-ui/-/material-ui-0.20.0.tgz",
- "integrity": "sha512-wkHkeU1SaGfCrtwIzBOl5vynNNNzVGW27ql0Ue5HZLB4WyRQ3YohJBdKa5lBrH5JD/Cgae7IzrP7cVWDyKpeLQ==",
+ "version": "0.20.2",
+ "resolved": "https://registry.npmjs.org/material-ui/-/material-ui-0.20.2.tgz",
+ "integrity": "sha512-VeqgQkdvtK193w+FFvXDEwlVxI4rWk83eWbpYLeOIHDPWr3rbB9B075JRnJt/8IsI2X8q5Aia5W3+7m4KkleDg==",
"requires": {
"babel-runtime": "^6.23.0",
"inline-style-prefixer": "^3.0.8",
@@ -11719,7 +11742,7 @@
"lodash.merge": "^4.6.0",
"lodash.throttle": "^4.1.1",
"prop-types": "^15.5.7",
- "react-event-listener": "^0.5.1",
+ "react-event-listener": "^0.6.2",
"react-transition-group": "^1.2.1",
"recompose": "^0.26.0",
"simple-assign": "^0.1.0",
@@ -14701,14 +14724,23 @@
}
},
"react-event-listener": {
- "version": "0.5.3",
- "resolved": "https://registry.npmjs.org/react-event-listener/-/react-event-listener-0.5.3.tgz",
- "integrity": "sha512-fTGYvhe7eTsqq0m664Km0rxKQcqLIGZWZINmy1LU0fu312tay8Mt3Twq2P5Xj1dfDVvvzT1Ql3/FDkiMPJ1MOg==",
+ "version": "0.6.3",
+ "resolved": "https://registry.npmjs.org/react-event-listener/-/react-event-listener-0.6.3.tgz",
+ "integrity": "sha512-21ubz0vpzPL/8YPGkcDs/LFIemxMFPhpXnFKvrm15IA7x/kYzh1Bru3ww/lsZJJ0hCqyhJGjv7Txl/U00Je5SA==",
"requires": {
- "babel-runtime": "^6.26.0",
- "fbjs": "^0.8.16",
+ "@babel/runtime": "7.0.0-rc.1",
"prop-types": "^15.6.0",
- "warning": "^3.0.0"
+ "warning": "^4.0.1"
+ },
+ "dependencies": {
+ "warning": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/warning/-/warning-4.0.2.tgz",
+ "integrity": "sha512-wbTp09q/9C+jJn4KKJfJfoS6VleK/Dti0yqWSm6KMvJ4MRCXFQNapHuJXutJIrWV0Cf4AhTdeIe4qdKHR1+Hug==",
+ "requires": {
+ "loose-envify": "^1.0.0"
+ }
+ }
}
},
"react-input-range": {
diff --git a/package.json b/package.json
index 60264f8..2027edc 100644
--- a/package.json
+++ b/package.json
@@ -128,7 +128,7 @@
"is-running": "^2.1.0",
"json-socket": "^0.3.0",
"lodash": "^4.17.5",
- "material-ui": "^0.20.0",
+ "material-ui": "^0.20.2",
"mime": "^2.3.1",
"moment": "^2.20.1",
"mysql": "^2.15.0",
diff --git a/src/app/LinearProgress.js b/src/app/LinearProgress.js
new file mode 100644
index 0000000..59311bb
--- /dev/null
+++ b/src/app/LinearProgress.js
@@ -0,0 +1,10 @@
+import LinearProgressOriginal from 'material-ui/LinearProgress';
+
+export default class LinearProgress extends LinearProgressOriginal
+{
+ barUpdate(id, ...args)
+ {
+ super.barUpdate(id, ...args)
+ return this.timers[id]
+ }
+}
diff --git a/src/app/search-results.js b/src/app/search-results.js
index 3490fe8..268804b 100644
--- a/src/app/search-results.js
+++ b/src/app/search-results.js
@@ -4,7 +4,7 @@ import TorrentLine from './torrent'
import {List, ListItem} from 'material-ui/List';
import Subheader from 'material-ui/Subheader';
import Divider from 'material-ui/Divider';
-import LinearProgress from 'material-ui/LinearProgress';
+import LinearProgress from './LinearProgress';
export default class SearchResults extends Component {
render() {
diff --git a/src/app/top-page.js b/src/app/top-page.js
index c702b01..6c4373f 100644
--- a/src/app/top-page.js
+++ b/src/app/top-page.js
@@ -6,7 +6,7 @@ import {List, ListItem} from 'material-ui/List';
import Divider from 'material-ui/Divider';
import Subheader from 'material-ui/Subheader';
import RaisedButton from 'material-ui/RaisedButton';
-import LinearProgress from 'material-ui/LinearProgress';
+import LinearProgress from './LinearProgress';
import {Tabs, Tab} from 'material-ui/Tabs';
import _ from 'lodash'
@@ -150,6 +150,12 @@ export default class TopPage extends Page {
Object.keys(this.times).map((time, index) => {
const {torrents} = this.topTorrents[type][time] || {torrents: undefined};
+ // dont draw top on other page rather than focused
+ if(this.state.type !== type || this.state.time !== time)
+ {
+ return
+ }
+
if(!torrents)
return (
diff --git a/src/app/torrent-page.js b/src/app/torrent-page.js
index 472511a..cb101ce 100644
--- a/src/app/torrent-page.js
+++ b/src/app/torrent-page.js
@@ -14,7 +14,7 @@ import NoImage from './images/no-image-icon.png'
var moment = require('moment');
import RefreshIndicator from 'material-ui/RefreshIndicator';
let rating = require('./rating');
-import LinearProgress from 'material-ui/LinearProgress';
+import LinearProgress from './LinearProgress';
import FlatButton from 'material-ui/FlatButton';
import {fileTypeDetect} from './content'
import {contentIcon} from './torrent'
diff --git a/src/app/torrent.js b/src/app/torrent.js
index 7b8c72e..418c099 100644
--- a/src/app/torrent.js
+++ b/src/app/torrent.js
@@ -7,7 +7,7 @@ import ToolTip from './tooltip';
import PagesPie from './pages-pie.js';
import TorrentPage from './torrent-page'
-import LinearProgress from 'material-ui/LinearProgress';
+import LinearProgress from './LinearProgress';
let rating = require('./rating');
import scrollBack from './remember-scroll'
import TrackersImages from './trackers-images'