From 507406c079f26c2c8278d3ea03054b0eb61dde98 Mon Sep 17 00:00:00 2001 From: abhin4v Date: Fri, 5 Dec 2008 21:44:05 +0000 Subject: [PATCH] more changes in UI. added notification-on-error feature git-svn-id: file:///tmp/snv/trunk@14 12951d8a-c33d-4b7c-b961-822215c816e1 --- chrome/content/diggsidebar.js | 132 ++++++++++++++++++++++----------- chrome/content/diggsidebar.xul | 19 ++--- chrome/content/diggstory.xml | 12 +-- chrome/content/image/Pause.png | Bin 1557 -> 0 bytes chrome/content/image/Play.png | Bin 1602 -> 0 bytes chrome/content/image/digg.gif | Bin 0 -> 929 bytes chrome/content/image/digg.png | Bin 4230 -> 0 bytes chrome/skin/diggsidebar.css | 4 +- 8 files changed, 103 insertions(+), 64 deletions(-) delete mode 100644 chrome/content/image/Pause.png delete mode 100644 chrome/content/image/Play.png create mode 100644 chrome/content/image/digg.gif delete mode 100644 chrome/content/image/digg.png diff --git a/chrome/content/diggsidebar.js b/chrome/content/diggsidebar.js index b82a277..744be75 100644 --- a/chrome/content/diggsidebar.js +++ b/chrome/content/diggsidebar.js @@ -25,17 +25,19 @@ var DiggSidebar = { topic: null, category: "all" }, - updateInterval: 10, + updateInterval: 1000, updateIntervalDecay: 0, + lastUpdateAt: new Date().getTime(), shownStoriesCount: 30, categories: ['All', 'Popular', 'Upcoming', 'Hot', 'Top'], timerId: null, storyIds: [], - playing: true, + refreshing: false, stories: [], + expandedStory: null, fetchData: function(url, handler) { - DiggSidebar.UI.indicator.style.display = ''; + DiggSidebar.indicateActivity(); var request = new XMLHttpRequest(); request.onerror = DiggSidebar.errorHandler; @@ -45,7 +47,17 @@ var DiggSidebar = { }, errorHandler: function(e) { - window.alert("Error in accessing data from Digg"); + /*if (DiggSidebar.UI.notificationBox.allNotifications.length > 0) + DiggSidebar.UI.notificationBox.removeAllNotifications(true);*/ + DiggSidebar.UI.notificationBox.appendNotification( + "Unable to access Digg", + "dsAccessFailNotification", + null, + "PRIORITY_CRITICAL_HIGH", + [{callback:DiggSidebar.getStories, label: "Retry", accessKey: "R"}] + ); + DiggSidebar.refreshing = false; + DiggSidebar.indicateInactivity(); }, populateMenu: function(e) { @@ -117,11 +129,10 @@ var DiggSidebar = { menu.appendChild(menupopup); DiggSidebar.UI.containerPopup.appendChild(menu); } - DiggSidebar.UI.indicator.style.display = 'none'; + //DiggSidebar.indicateInactivity(); }, populateStoryList: function() { - DiggSidebar.Utils.removeAllChildren(DiggSidebar.UI.storyListBox); var newStoryIds = new Array(); var jp = new JPath(DiggSidebar.stories); @@ -138,6 +149,9 @@ var DiggSidebar = { return story.$("container/short_name").json == DiggSidebar.endpoint.container; }).json; + if (filteredStories.length > 0) + DiggSidebar.Utils.removeAllChildren(DiggSidebar.UI.storyListBox); + filteredStories.forEach(function (story, index) { if (index < DiggSidebar.shownStoriesCount) { var now = new Date(); @@ -173,27 +187,23 @@ var DiggSidebar = { link: story.link, href: story.href } - for (attr in attributes) + for (var attr in attributes) li.setAttribute(attr, attributes[attr]); li.read = story.read; + if (story.id == DiggSidebar.expandedStory) + li.showDescription(); } if (DiggSidebar.storyIds.indexOf(story.id) == -1) newStoryIds.push(story.id); }); DiggSidebar.storyIds = DiggSidebar.storyIds.concat(newStoryIds); - DiggSidebar.setUpdateInterval(DiggSidebar.stories.slice(0,5)); - - window.clearTimeout(DiggSidebar.timerId); - var timeout = Math.round(DiggSidebar.updateInterval*(Math.pow(1.5, DiggSidebar.updateIntervalDecay))); - DiggSidebar.timerId = window.setTimeout(DiggSidebar.getStories, timeout); - - DiggSidebar.UI.indicator.style.display = 'none'; }, showDescription: function(storyId) { var jp = new JPath(DiggSidebar.stories); var story = jp.query('//[id == ' + storyId + ']')[0]; story.read = true; + DiggSidebar.expandedStory = parseInt(storyId); var listitems = DiggSidebar.UI.storyListBox.children; for (var i=0; i 3600) ? + Math.round(autoRefreshTime/3600) + " hours": + (autoRefreshTime > 60) ? + Math.round(autoRefreshTime/60) + " minutes": + autoRefreshTime + " seconds"; + setAttribute('tooltiptext', "Click to refresh now.\n" + + "Autorefreshing in " + autoRefreshTime); + } + } + DiggSidebar.lastUpdateAt = new Date().getTime(); + }, + initialize: function(){ DiggSidebar.endpoint = DiggSidebar.getEndpointParts(DiggSidebar.prefs.get("endpoint").value); var $ = function(id) {return document.getElementById(id)}; DiggSidebar.UI = {}; + DiggSidebar.UI.notificationBox = $('dsNotificationBox'); DiggSidebar.UI.indicator = $('dsBusyIndicator'); DiggSidebar.UI.topicPopup = $('dsTopicPopup'); DiggSidebar.UI.containerPopup = $('dsContainerPopup'); DiggSidebar.UI.storyListBox = $('dsStoryListBox'); DiggSidebar.UI.endPointDesc = $('dsEndPointDesc'); - DiggSidebar.UI.playPauseButton = $('dsPlayPauseButton'); DiggSidebar.storyListObserver = new DiggSidebar.StoryListObserver(); DiggSidebar.createMenu(); diff --git a/chrome/content/diggsidebar.xul b/chrome/content/diggsidebar.xul index e905fb4..51adea6 100644 --- a/chrome/content/diggsidebar.xul +++ b/chrome/content/diggsidebar.xul @@ -41,22 +41,19 @@ - - + + + - digg - + digg + + diff --git a/chrome/content/diggstory.xml b/chrome/content/diggstory.xml index 0ce1cb2..947db4c 100644 --- a/chrome/content/diggstory.xml +++ b/chrome/content/diggstory.xml @@ -11,7 +11,7 @@ - + - + @@ -53,15 +53,11 @@ - @@ -84,7 +80,7 @@ diff --git a/chrome/content/image/Pause.png b/chrome/content/image/Pause.png deleted file mode 100644 index 271e3788757e07131b68b40484ae286250e9dac9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1557 zcmV+w2I~2VP)400006VoOIv|NsC0 z|NjYC_uK#g010qNS#tmY07w7;07w8v$!k6U000Sga6xAP000jF000jFV;mC`000G` zNklgczI=0vjLj@FRB!W63Xfv1wR9exbY1C0k6RXq4 zYII7h$#i7$Xfcl(k~V})Cdp`NQUi%Gh@d#iL((9RjIw}4^Nk066tB_BQYqyCO;+rTUx2U zqCT&dgLYUgRVzR{roS`gKA7^*l;`wwpeN`_dJ^bA*E99Cpzqf<=`V?s-qNY1-u;q) zbYgVcsMmR!N+|LFOS>kV81PW;s+d<3}vxEo4py&{nL5lJPeN2p{jn5w6?;go|Dr?W; z?|VMZ>B^b6{P*q~3bUBb7wU`G2d{^}>1U^zY2GvOQ)huvq!g*~?2e{H7eyOT?5p-w z`zjbA%0m8$Sk6QIn!_-$WFl*#SFY54r2SYoJqOLTW}&qQee~4m$n`O@;GhoLIIYDU#>Vc>@Yvj-lDxl5MLZ$9A6BBErS;ZkApZY4xuBgvdC`hb&z&TTL7P;Woy6C zHh}AOBW@Z5W(1OYmqVa3P#MUC8=G!yy0L*Lw&YwSUhjiSW1$9BZdg^|{g_ecH=-EG}hx<9|E{v4#)(rn2Gd%6Q<`X^X;SkH zks&fB{gt9pR8G=sXlQr1NX~xuWw!~eyUoRBHRnBQqMD+nft;qyk<p7Q6Vbsv~i9*bxso)Tg@lTX8elwJM9r|C&&R$mplN#cLAv76D~me zXYK9n^^kii_f+mF=wIKzzJEP%f)kv8vb?gqvOK8itm&-jgqEo-Q(LA2aeRjbz#v0> z3U;aer2Qcn*NjExrx+e(opP_TO`KPH)iX-qRzX`ot)JGru#ELakx`6Qms6KhmxI;U z)OWtG9ZQ+7q$+t>0}l>7Ft8P?)~dB?Ev&I6V_9PbSlUi)yY>>+|ArEYZi4s+7_G*? z%y&hOqHb2Vs}D$j6>G$Nk;2P2huLB$+KKjE>~&|lv)mYzTT_;cS4A1v*w_G%vx|>z zPwF0XtKAB4TAdc>649G}e~7#geLC`r2P@Y)VAV^zl;LlNm0_=4xNO6+)!B^@{Z%v+ zEsz_0_xh&$e&%^r)QCq#CtfbmN*jpR+-F1=I5qBn+zxQ>cBVV?z;1L-J5#`^b51yy zz}4M|Th7F|e|+)y+x#>2;gm<`SCH`adtXocYP0>YQh&1EY)CqmyyD7=Eed|)! z4HbUondLM(A=Zj(Qk|sohLq{*ZUS>5`b@OV9fHVxkv)+bF!RhM)?dH~8-Fst4Q8|1 zVO{|vX!IN35@+oKJH-h|@|PK3R$Ys6m$g07wzBm%)!+Ls$PJ^Qitkbx00000NkvXX Hu0mjfQUUbP diff --git a/chrome/content/image/Play.png b/chrome/content/image/Play.png deleted file mode 100644 index 6094a9cd97c2a1deb19da606aeb4820fa3a68ee4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1602 zcmV-I2EF--P)400006VoOIv|NsC0 z|NjYC_uK#g010qNS#tmY07w7;07w8v$!k6U000Sga6xAP000jF000jFV;mC`000He zNklK zc|Wh`Iqye0^x~ldM^+@(jD9b!D0a)@_09)wms_r!lgg!SQlkhc`;}Lf_oXMbz1r*A zKG64Q+qDCr*BOUnz6~);V|E&6z(_Hs8PmX6WISdp0i#l1X1pm*c(&iW-BT&W4Gj;C z9`ZP=TjE=0o?P~>M~&0s+G8&l6kf}}zPz()-?ROT`%m_*bbqTwG+VzVe^*=<`NE=) zY-W)ST<2MqftV$BauFzGmRJj7f|w{|5CPF9u7YIoIoBD!>kU2-taNL#Ud<}Y9w&b| z_tUwL{YTV)~%e6GFG8|WRm{Tb`cZ*dH~)JS2Z(E1@n zMnxWov_f!musWzfuqAl;ZV?2R1g8uaK(ITg-t|GKCUo0ej_sHI^E%&hUgUMQ@}|tf zmlysaFJCiM#ZrWlDsov$F?(S6x#6PWu<}Q3td?M;$yN4r+iTev=3mWbGXnD zG-#<>s+I;ZgE2$*B=ov+(xa6J@ zO`=WJYxHvMs5IA}VprKm=<84DPwLM`@vQQ!y!Sbb;N;*#!Cs7+-kIK+55m-srv7DW z4eWY+*SB^(4E}0=wZ9sSWFy%~hR~wWqR=9+Dy(vAEA*81Z0spPw~j}4S_z=!ste@+ zgR=gJo@*3p(^2{$TkRNSb5KuTazAO)!99YBPC71+|dLVRq*1%-NZ6HRrrenOrX^*e{08mAsYCFW-H z9C50?QD3dE2gNUcs@wqJegNSJM>x^JKu4e>;Da68c5K_R4YrhSDcw>E)&^^XwE>hw zB~eKP(JY!pGjM{B==jQOer{LVO%S>nnrXHYlGP&hX?3OeM7^e+QvFe%be}X@dWf(( zK^?C?O1P=Gsko_>a9KrJMOg)5_lR5L9w%%h8HvVp!u*6E@fKmpFI|O<7F% zzk!LbyOYH4Aap)dYrZ4qGSoG6*}Su+v^29+T{}UD|M()U$|2>T(%_VS8PrSvZ&$`E zNlLb}=1bnS;zPw#mPLd(bL-6Ei^o@eU+ur$ul9TF!kp)Go|$tRtnXQaR)KOdc7AL^ z>{IeD#4)j2T*AX`I`M&unRhWf)ulZ2SUBj4eO{AmXJ1 zk`;&p3eZYmDu*Ga6@5*aR3d z495(i&~+10%RyrT-@b`m6)`Gsf*3Tx7e`QmpDm8C>`g{}43z=nnY7jg82eZB&r04tvyW3Y4QM z{(h(@)p#n2PQeQFq|D!VyeML~18*iVpu@-+1oCM@?Hu}^4qv=2tzt(lvcfqFWCds% zu*^ZL1C0t$J4SbriXp5(34)ox;$R9GgNGr-5awP2aG6e)5k0DFzYgK3KEtJ9WPjVJ zKA&}lI)DiAKxsdhEeF;E-kdEe z7L{x{;rB}YLg->f!Bigog6llqgD`-fp|eYukKLZ*U+IBfRsybQWXdwQbLP>6pAqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uhf59&ghTmgWD0l;*T zI709Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-rV&neh&#Q1i z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_IfqH8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4 zfg=2N-7=cNnjjOr{yriy6mMFgG#l znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U zt5vFIcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya? z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0 z?2xS?_ve_-kiKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$ z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4 z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i& z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01 z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3| zawq-H%e&ckC+@AhPrP6BKT#_XdT7&;F71j}Joy zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot2z=00004XF*Lt006O$eEU(80000WV@Og>004R=004l4008;_004mL004C` z008P>0026e000+nl3&F}000G{NkldN#*Ja1 z2>M7`B(YJrSrzTBD9}GzAYBAS7u^I!>i|mahL&xmv1L812T74L-#uN-kfv>smITBf zxEah0&wZYI?oblm?s>AgxzcRL;q~U$v#-|v>OTDzuveOYsDNARt=7Z4cWzx%|7o80 zNV(^M00_|x5G4W*2oT^j00sddK+wm*NED+*Px7pO{qrw20Ym^tyEIq{ zk(4vQhDneEAY}k6U=kG&Ap#I>yoWTeLG2KFK#xEL{P%zS<>JsngBs( z22Nx#sk4kE;2fX=kOYcg0LkOh^K!&EYTppJYZKp-yOM}kDo806sc<2<1Wrt@Bncp- zQQ*l2m&F{8t5<_Oo0<`frwMg@5z0vhm%j2?i-MU7C(oGUF!{wd5GxIkcoyJHs!jZB zPQ2p~Ct3H}9ZM;dF&DE*xZ~YXg+93#H7x0JELjNQq@44HJ33pA&x~6hKhaZX0De<( zot?SP4lI?EMJJ6KPZerTC@!JMC7(nCgHz76Qvgp0k6B1XpQmJylLJ%7Jxm6dTu%EQ zfJsUqgGHkahXLI!Pjm@NZ=(9KT>W~*R4I`|qJ^v|Ql1y?IiM_SkbxHHeRvUL0Fac- z2(qLIR;q{t_bSU={yH$Lxe1XF4GzFyb!$v-wOUV~e7CT)NKcop&RUFMDGF+UOUi0d z{a%p@DUk#N0LaKt$tei~f8uxoW=c5~&Eod%-sakW9<|opF+01MWwrKUcm3gduiIH& zU0zsO{&wT>*7nZq?1hV~ON~ZGnwganao{UY6l#{uL9-AK4?1`M{m-LLo)ofLJnZ%k zHuwGU#@_yZzkl>}>-oa}p0(SDsYq*Ief{A_zx>I~>qW0q$^up5&`(-i0zg^_7Q)u{ z_TKL9ho9X3*{^P8jj5x4dhl>#^V#mtKl=3co!>PY=kI^>sJVRgv)}*m^5u8)o-;IP zH6Oam;|VB^tz*Jdf^n+RsAbuA8yoGOce~y5=g!q@wV9cBHXc8g*y|TdOUv!@!Qd(YaUcGj0y>+jUEiTN>&0mQ1EXKIKwX?Ic zL*o4#?;q?R++SPU+1di$g?o|rgS|v;6=hXh$b=l1rb#K!V-~L8xG}%fWU$$}c?gC3 zH}~#$+xwpKOP5ybS=ekJ^!lBJ#dprnoJ(Fnscgp=!U>S%?g5f(qQ@ooLwVkhv2p40 z3YdzNlv3To-0W0)ztLQ}aQ(ga1nfPZt~YFDwYk`wEAkHM0Krm|7!ZsmmZn%4{x~kq zfM`Y-67!=zbAesb$pDX6u3Y@V<%^!&tOntO4{jEzAEUW)PX*&Js1<>@!-COXL_3a@ zw^Ugw&?SoWRD>95MsvYICxcWJsfZQ@_4A&YL1bj%Jwh-fxv}h~063Tv1@eN~6p)2b z9|d;ORS`W0ivt+|reFf(2tX7FQxIIqjArF3Cz58--6@4qV;jpxrWb~eQm||(73b&Y zYNNo1NGa&tpy5~zB(YjbAwzAz;=^=Ql}eDJTt;beb2U)n{7|Hh+5alTqNd zqZd?rwbM05s0u?_$$=UeU7ucBrKny)eQE(V|LEKQ{`f~W3cQrfJg-K==+-i6(D4-+ za-856AXu%AE5Op{fBW(`AOGo