From 01ae866d58bea5823732e739125b5544fd7c87fc Mon Sep 17 00:00:00 2001 From: Daniel Harte Date: Wed, 1 Jun 2016 19:06:36 +0000 Subject: [PATCH] gui: Use favicon as indication for status (fixes #1018) GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/3217 --- assets/statusicons/default.svg | Bin 0 -> 1395 bytes assets/statusicons/notify.svg | Bin 0 -> 1994 bytes assets/statusicons/pause.svg | Bin 0 -> 1993 bytes assets/statusicons/sync.svg | Bin 0 -> 2123 bytes gui/default/assets/img/favicon-default.png | Bin 0 -> 5123 bytes gui/default/assets/img/favicon-notify.png | Bin 0 -> 4768 bytes gui/default/assets/img/favicon-pause.png | Bin 0 -> 4835 bytes gui/default/assets/img/favicon-sync.png | Bin 0 -> 6693 bytes gui/default/assets/img/favicon.png | Bin 6524 -> 0 bytes gui/default/index.html | 2 +- .../syncthing/core/syncthingController.js | 64 ++++++++++++++++++ 11 files changed, 65 insertions(+), 1 deletion(-) create mode 100644 assets/statusicons/default.svg create mode 100644 assets/statusicons/notify.svg create mode 100644 assets/statusicons/pause.svg create mode 100644 assets/statusicons/sync.svg create mode 100644 gui/default/assets/img/favicon-default.png create mode 100644 gui/default/assets/img/favicon-notify.png create mode 100644 gui/default/assets/img/favicon-pause.png create mode 100644 gui/default/assets/img/favicon-sync.png delete mode 100644 gui/default/assets/img/favicon.png diff --git a/assets/statusicons/default.svg b/assets/statusicons/default.svg new file mode 100644 index 0000000000000000000000000000000000000000..b281649b8cda9158edbdab5aa995f61ae5bda940 GIT binary patch literal 1395 zcmb_c(Qexy6n*bkAo8+37z2(C_Uu&3rtNVLTRtGQiDS)$2uPg#{QyU`(@j;?7F%HO z<#6sfSCseX#~z%7Hl30cBnU$wWUZP`wiVp`{vL67zq%{UsRb@ln!o zV=uj^pkIz^)hk^rXtvJ2tzkS7`*$aS;6FPt=kzO|?=0inoUVDtQ{rVC@-!D&+r6_P z>Q$?*`h;`qPS?E%LF#CQhM;y*x^(MH7n zEir|_0j4NVQ-;};W&oB-iZ8}$^+yzoU1-;7G<1#K7Z`EE7-1y8IoWFv64>g;s2}~x z5y|s}@O<=*BgQgL)6qVPXhxIN9e;5y=4eS+;+~o4@8e*dioR%GBta6CV3H=u$Rb5a zmS=4FaV#EQ#eyKlIZLyV1)(S<1iy>KtPrGXL{yI@H4`J0){`TyAPAzaGUi2g_5a4_ y=fKWtU#pXw9(U&En}NN59(iVwhn`vVW@v9pfSz>s(39@3K`!Ig-J<@2T>S+YoqcQo literal 0 HcmV?d00001 diff --git a/assets/statusicons/notify.svg b/assets/statusicons/notify.svg new file mode 100644 index 0000000000000000000000000000000000000000..84998a045671f49bb5c74068b9471ab0d93fa339 GIT binary patch literal 1994 zcmb_d!E&206ujpvG|HtpAP^V?E+jK)r#<%2<^urBSQ9K|kR028-zQ-k#YvM)QrQEN zK&yTGR*&*#x9-s+AGA=i!jwc9aoMVckX?oE{`?4Xd~c#sZtzP(ku3P&hHG=o3BzCh5*1z+m1>xR9MydHiI^+IrI zkXTf>g8@eNYNzg`FuKAU&4=F)b<2OrJI#Rut#FRf9&QlOE*?j4JMCoQZ7a1=4@fPS znj81BHv67e*iHwn>eVp6jI-P9`z;P9V$WAnj9yq7<$3%q_g9wT)0igAa$W0t7h)p} zw*!pq_2m$!b&gB-bnNB^-j0%4l%TPxaS`s_bt@KT04mi%2o_*&mCO{uQ!bu>egV?!Y-7O6ne1J*c&RG+L?nyBRV(++Btd|da;zD1s`K8 z!^s?F=XTb6*_sttHRx5RM!CQYL;vOSsNvPYS?8qH#_(Yz3r4X_;RZC}>XUR>)@)Zk zPd|Dgrn+)QjmrC-l+6?NRA9X$q1DBb3L~_a)Wwdy*vvrS) zy&l#k$bE^f7NlIz-DH7f>kZQq$cC?fyhO^cwBj7Mf zVsM6UvKP*o?=S}pskR4e%BIEjviV_Pn?HACrxaOeFGU}Qwn;fugQM;ideZ$p$ftVX zOVVtbriVKJk6JT(qt+bC2j8`QE!KX8IMvLL$4Qt#m%a aZIm%;?L$+5d5(QnHqNZ##3}7}_xdl(mmgXH literal 0 HcmV?d00001 diff --git a/assets/statusicons/pause.svg b/assets/statusicons/pause.svg new file mode 100644 index 0000000000000000000000000000000000000000..f2589e2f88fae5491b411eea36bdf9be70375ec4 GIT binary patch literal 1993 zcmb_d!E&205WV*+G|HtpAP^V?E+jK)r#<%2<^urBm((9{Fxp`;^ys69*dIjBByIuPJ ze!pk?i1oVh!ypKJct(fUUVr7GmHV6iv7iA72v6WouRalI`AV+M&~?MERkGASbh&D! zvZP%Vw1EL7c*Ut()ml@~oss(2wyfn(b!#MW-~~-7Ilv79dJKmV+{T>{9$Ri~za{;8 zZKQQC8++(vL2=rv`>xl^i!ixKzTHrNBKCYGr{sl|L7IkN)A`EWe;U(-nctV@&V^XD zR^osXyuKXbw9av9o{rs|mh~VRqIeai#zlB=*L}OP8z%_a$hO%)^dQbDh;`d_%Zs&Z zbNUF3Ew5W$chb>y@Mc$8UDlS88g}8F#n6MDhMq2Hj59}x26S)?v~%>_pT&~<2tLG? z`;$5H#_enlsYlZKZ^XPuMocUJ0wEEolu!VPG`bxzV@q1i6y zJm=B3N}T}-mWfa-g3tlREQ@0ih{+%>detlW#aP|n$&=2cLVoF`Tu=jDW*9 z3&9z4lf7`x<_>efkZL?wQ#KKImd$qqWB%Ncol=C*vlP7>8k2IY1}EJSdeZ$Z$YVX2 zOH%Ess)IWJms+#^2X5WVMDXp~Db6U&y3u}$q{Ch4@t9@<=bGe#IsjKxSIg#P;O%76u>X(p)v zeIY%)-F;f+cQ4D9JPV~8*%g$tfD+MFa@KTpK_7p7@ltwsdy(tsn!w6VPoP)Og)ys% z?{796wuzWjwI2pS;KP5kU-tTv=SFPqW5)eLyFTK4WQ1Y3W>%MD;ZPSTTeO2YG z5uG8;te`avD8U-19=pcqg08ht-&bWNzIBgU00&;sl#(qpV9-n0kDxi6gz#8$ZRCo` z`CJQQ7i+U^ML}`et7I$Hshe5XGBfXsm@>TW^|~Sy+dVg=p#pSP#zG8!>O%c5*ql z#iftHSn{e-RVyrA3$NExqsq!qQo$*lvlx1CQr}Yrjd5n@q8=R-1LYJw_Z?euAHjRu za(@ss-ba&3g_$%0UjDKtP6YL}$NLa|-D zJYDOXt~&urSeAszC9xJmGsd$l;%U|^K4nQVPD5}v3O{7wIE-RAehZ_Fjd&8l=V0bXIT-LFUbk0C z@Q6hLkE5t(5wmEVjg!&;V=;Xb3(k@>O=6Ha`htfn<~;Zi3FjJgawfd0mz3iSE3HFB zKw+GPpbS@JXYQG+FbfQ!#)~yX6LFnrz8e_hXRquKB7}BA^loSj$}Su1{f^Ls-`|3K z$Oo=Vrt9gng*^Y4Tr>JduGyuJQYpF7ltAL@^jxZCL6tP65m)dkK?bwcQ36?&X0f|{ zu+?kD91a<8e|E54PU~M~xSfmhk-~jO?1wPF1ikvOmxy^nRTe2yvdE y{Dh0b9PX0I01v73Ooke1c*p~%;CQGl8JKw>d~}oTD*PiOKVN5Jqm$#qfBPFI&NR&c literal 0 HcmV?d00001 diff --git a/gui/default/assets/img/favicon-default.png b/gui/default/assets/img/favicon-default.png new file mode 100644 index 0000000000000000000000000000000000000000..129dc505140f6616fe3042e63d2b0609cf871ee3 GIT binary patch literal 5123 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 literal 0 HcmV?d00001 diff --git a/gui/default/assets/img/favicon-notify.png b/gui/default/assets/img/favicon-notify.png new file mode 100644 index 0000000000000000000000000000000000000000..3613e723e34318d92638e45666224348c88f7906 GIT binary patch literal 4768 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 JPDHLkV1l*LQ-uHk literal 0 HcmV?d00001 diff --git a/gui/default/assets/img/favicon-sync.png b/gui/default/assets/img/favicon-sync.png new file mode 100644 index 0000000000000000000000000000000000000000..42999be65658e9140aad62a0fc7821524806801d GIT binary patch literal 6693 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 literal 0 HcmV?d00001 diff --git a/gui/default/assets/img/favicon.png b/gui/default/assets/img/favicon.png deleted file mode 100644 index 437c0c65af66a370a0426d67d52904ba7d55fe8f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6524 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 toae9EJ5Vk diff --git a/gui/default/index.html b/gui/default/index.html index 51008eb1c..7cbc90e7c 100644 --- a/gui/default/index.html +++ b/gui/default/index.html @@ -14,7 +14,7 @@ - + diff --git a/gui/default/syncthing/core/syncthingController.js b/gui/default/syncthing/core/syncthingController.js index 5722f5f4a..0d058c5da 100755 --- a/gui/default/syncthing/core/syncthingController.js +++ b/gui/default/syncthing/core/syncthingController.js @@ -780,6 +780,70 @@ angular.module('syncthing.core') return 'info'; }; + $scope.syncthingStatus = function () { + var syncCount = 0; + var notifyCount = 0; + var pauseCount = 0; + + // loop through all folders + var folderListCache = $scope.folderList(); + for (var i = 0; i < folderListCache.length; i++) { + var status = $scope.folderStatus(folderListCache[i]); + switch (status) { + case 'syncing': + syncCount++; + break; + case 'stopped': + case 'unknown': + case 'outofsync': + case 'error': + notifyCount++; + break; + } + } + + // loop through all devices + var deviceCount = $scope.devices.length; + for (var i = 0; i < $scope.devices.length; i++) { + var status = $scope.deviceStatus({ + deviceID:$scope.devices[i].deviceID + }); + switch (status) { + case 'unknown': + notifyCount++; + break; + case 'paused': + pauseCount++; + break; + case 'unused': + deviceCount--; + break; + } + } + + // enumerate notifications + if ($scope.openNoAuth || !$scope.configInSync || Object.keys($scope.deviceRejections).length > 0 || Object.keys($scope.folderRejections).length > 0 || $scope.errorList().length > 0 || !online) { + notifyCount++; + } + + // at least one folder is syncing + if (syncCount > 0) { + return 'sync'; + } + + // a device is unknown or a folder is stopped/unknown/outofsync/error or some other notification is open or gui offline + if (notifyCount > 0) { + return 'notify'; + } + + // all used devices are paused except (this) one + if (pauseCount === deviceCount-1) { + return 'pause'; + } + + return 'default'; + }; + $scope.deviceAddr = function (deviceCfg) { var conn = $scope.connections[deviceCfg.deviceID]; if (conn && conn.connected) {