From f1c6479f99d199c6269cdd2b9e505756a0bb0f26 Mon Sep 17 00:00:00 2001 From: James Barnsley Date: Sun, 18 Dec 2016 11:32:03 +1300 Subject: [PATCH] GIF to css-loader; If PyPi down, don't break get_version; Playing icon in tracklist --- mopidy_iris/frontend.py | 14 ++++++++------ src/assets/icons/playing.gif | Bin 0 -> 56360 bytes src/js/components/Track.js | 1 + src/scss/components/_lists.scss | 21 +++++++++++++++++++++ webpack.config.js | 2 +- 5 files changed, 31 insertions(+), 7 deletions(-) create mode 100755 src/assets/icons/playing.gif diff --git a/mopidy_iris/frontend.py b/mopidy_iris/frontend.py index 55e15439..defaa01d 100755 --- a/mopidy_iris/frontend.py +++ b/mopidy_iris/frontend.py @@ -170,19 +170,21 @@ class IrisFrontend(pykka.ThreadingActor, CoreListener): ## def get_version( self ): - url = 'https://pypi.python.org/pypi/Mopidy-Spotmop/json' + url = 'https://pypi.python.org/pypi/Mopidy-Iris/json' req = urllib2.Request(url) try: response = urllib2.urlopen(req, timeout=30).read() response = json.loads(response) latest_version = response['info']['version'] + + # compare our versions, and convert result to boolean + upgrade_available = cmp( parse_version( latest_version ), parse_version( self.version ) ) + upgrade_available = ( upgrade_available == 1 ) + except urllib2.HTTPError as e: - latest_version = False - - # compare our versions, and convert result to boolean - upgrade_available = cmp( parse_version( latest_version ), parse_version( self.version ) ) - upgrade_available = ( upgrade_available == 1 ) + latest_version = '0.0.0' + upgrade_available = False # prepare our response data = { diff --git a/src/assets/icons/playing.gif b/src/assets/icons/playing.gif new file mode 100755 index 0000000000000000000000000000000000000000..6c3d0a852feeb63290d8a7c6d684c25c899a67d9 GIT binary patch literal 56360 zcmeI5RZyGx8pgkn6cQ>>T!IIJTa6k8S|E4})P=g>POw1mDpnVQ)s2?A;RJX0PWN=? zoX(k(cDK8wL$?QZ&JAs@cAz`UdA_?`W#&Kg%xll@eeE6WESBz)BBY4lh>4FxB8iBI zkjZ2Ug)(c_EKyNWF)=YJl}e-0#KpyD&z?PJ&YZb(=gylqPeMXMQc`mM{P|K+Qqt1W zGBPr3JMB}ii%1~O3KR0bUIx{MMYIrRZUGzU0q#6Lqk(jQ%g&W!C+`> zYwPIfFquqUU0pprJ$-$B0|Ns?Lqj7YBV%J@6B83tQ&TfDGjntE1q&7|T)1%2qD6}r zFJ7`_iG_v5(xpq6EnBvH`SKMjR;*mP($dm$)v8riR#w*5);2aat5>gHvu2I0t*xD% zoxQz1i^XzqaBy^VbaHZXc6N4gadCBZb#rrDyLRomb?e;S-90=!JUuWzi{Eg#fuj&UAmN$lf&cja&vR@^78WY^9u?J3JVJ_U%q_h%9X2EuU@-$?fUiW zH*VaxdGqG2TeoiCzJ2G;ox6AM78MoUyLa#Y{rknm#Sb1lc=+()qeqV(KYsk=$&;r~ zpFVr`?D_NOFJ8QO`SRtfSFcJ+N=i#h%gV~i%gZY&Dk>{0tE#H1tE>5ZeoakHZEbB` zU0r>BeM3V-V`F1eQ&V$ub4yE0Yiny;TU&d3dq+n{XJ=b&;NalU(9rPk@axyF-@bkO?%g|qK=AS7$I;Qzv9Yl)U%veQr@pV>eHve9yV`ns zthQcjYi?{xCXMSsW0XRp5MzYlgg7Q-LQp-3Q5v09lv|camDb-@Qw9q7YgKM zEZ$IFCH&$tvV>6Q(PBs+=9i=sIcy5eim@t-aL)JC6SPWXi^Q#r%+4IXX|JLouHyLM zT5Bqa^!@*&LW~gO|FamWuHWm7HcX5z6v)b0i10~TJ)-gaAQ3foOx1tL@%H5RYzmRZ zV-XCOeEO%iVz%77IWKBI&B<@(StW{pRFs6o5bqH0CdE7|ONhkyW!w+mBUi-UMBMCSJBd9uJUpYp_f(Yknm<`#dTdlYr4H;$iD_^iA?+$f!iBJ2&tl1xs?FCFi8 zP{#obwZeuz(d;OYAd4WDA(kPQO;Q`x zO^DEV-0`lWwB!+yIBU|+E+exEBImubn0cXnMu6*i2F;x@-d=S75dG_0k1Dlv(chy! zT-K_b=ys@lHdTklpfPA{vc`l3GcRlI0)e7}X*1Ha4FW zg7-QQ6TwViHFA>~pwAi2${c>O#Le!1!E7Fa8Rlr1qfL_8*RMjeMhFc9YYeQXc3=&m z!5IQ)$PaLaKxhyega)C(>jYP>klA-v0Pc z5HP^efTK-6js^k-#3zW)X(c{EzyPNPPCZRHH5CL578YP(!89%`5SAf=fWb}>>;##z zoghNzWFTPRWrUY;ioJ{=V9@SByJLFW9Ux%Px<~8&2ej@XGzbksgV3a~8x^}zXTok& zp?wfAo#=z04>HAl5TuSs9g#XBbwuijwfZw+tv*smpk_eLfSLg{18O!yP&3?s!9gY* zWSaJaOv3z)xB&xyBm9k1=WoOf7#tMDLBZ)cC-S63Xw#X;O}mga+iLDvyoM|2(0bwt;3hIAc4 zz<_`O0RsXClWK1tA0J;|Uq3%Te}DggfPlcjz@VU@;NakpkdV;O(6F$u@bK`6hzK^D z9T^!J6%`d79UT)B6B`@L;c(*O;^O1uxm<2SLPBCgH# zGlGBt0RsXC1PqK;2w#;|RaMp1)qFm`rlzL0wzjUWuD-s$p`oF%v9YPCskynirKP2{ zwY9CSt-ZayqobpCd4x3{maufM;4U|?WyaByg7=tqPvS7MY#XBFj^ zB~qpJx78HoRiuJ|0RaO71_TUD!zji6RUl@L2_=VvYhF=(dVfcmN7rt~UCntx;TJ zFt!xH`|%eH&rqYGMnjE;8VxlXYBbbnsL@cPp+@^%$oEZwHvW@3Ed this.props.handleDoubleClick(e) } onContextMenu={ e => this.handleContextMenu(e) }> { this.props.track.selected ? : null } + { this.props.track.playing ? : null } { track.name ? track.name : {track.uri} } diff --git a/src/scss/components/_lists.scss b/src/scss/components/_lists.scss index 74d4815a..967af891 100755 --- a/src/scss/components/_lists.scss +++ b/src/scss/components/_lists.scss @@ -57,8 +57,29 @@ font-size: 10px; } + .play-state { + display: none; + position: absolute; + top: 13px; + left: 15px; + font-size: 10px; + } + &.playing { font-weight: 600; + .play-state { + display: block; + opacity: 1; + } + } + + &.playing.selected { + .select-state { + left: 23px; + } + .play-state { + left: 10px; + } } :root .dragging &:hover { diff --git a/webpack.config.js b/webpack.config.js index b7410e78..b28eeff7 100755 --- a/webpack.config.js +++ b/webpack.config.js @@ -43,7 +43,7 @@ var config = { }, { // load external resources (ie Google fonts) - test: /.(png|woff(2)?|eot|ttf|svg)(\?[a-z0-9=\.]+)?$/, + test: /.(gif|png|woff(2)?|eot|ttf|svg)(\?[a-z0-9=\.]+)?$/, loader: 'url-loader?limit=100000' } ]