From 1ee98bdf07c702123efd5ded704bc32ac71a0859 Mon Sep 17 00:00:00 2001 From: Lyubomir Marinov Date: Mon, 1 Oct 2012 06:10:21 +0000 Subject: [PATCH] Commits work in progress on improving, stabalising audio and video telephony conferencing. --- lib/installer-exclude/libjitsi.jar | Bin 987524 -> 986465 bytes .../impl/gui/main/SingleWindowContainer.java | 44 ++++---- .../main/call/AbstractCallToggleButton.java | 4 - .../impl/gui/main/call/CallDialog.java | 25 ++--- .../main/call/InputVolumeControlButton.java | 6 -- .../impl/gui/main/call/PreCallDialog.java | 47 +++++---- .../gui/main/call/ReceivedCallDialog.java | 64 +++++++----- .../impl/gui/main/call/RecordButton.java | 15 +-- .../call/conference/ConferenceCallPanel.java | 2 +- .../conference/VideoConferenceCallPanel.java | 27 ++--- .../gui/main/chat/ChatConversationPanel.java | 8 +- .../ProtocolContactSourceServiceImpl.java | 51 ++++----- .../impl/libjitsi/LibJitsiActivator.java | 36 ++++++- .../packetlogging/PacketLoggingActivator.java | 50 +++++---- .../PacketLoggingServiceImpl.java | 97 +++++++++++------- .../generalconfig/ConfigurationManager.java | 8 +- .../loggingutils/LoggingConfigForm.java | 30 +++--- .../communicator/util/swing/SIPCommFrame.java | 12 +-- 18 files changed, 292 insertions(+), 234 deletions(-) diff --git a/lib/installer-exclude/libjitsi.jar b/lib/installer-exclude/libjitsi.jar index 28946d7bcce3d5d99342c69b11bb23be3734bdea..aff8795ba6e512dd5656ac1820784a62d30c221f 100644 GIT binary patch delta 84274 zcmZ^~b97}()Gr#_HafPgj%_? z)l}8^t-02$F)O4{a4$m;Sw$Wa3IPlZ4h-y6Ml=DL7VbnwRFnstmMK9<20S_;j1=52 zp@aP6N1TM$`ItNGiEAb32`!8*j zfUtu5J5Yn54Ec{rBBI8>q){8u4C=2yH!42FUuF&65*p=%_9%Gg7~|6KUOv3?I6IwUZ7G% zl_0P|Xx1o=Uqh4slUfZ&`;R$~FogKmN2;^wKMt8fF+pC@DE}=vI_f_Wytw@T!tIJL zLi*QhYM{+Ovi{iwe?!R3=7IX_&^$Qem;)XRtPLZTyb}UD^?DPTx{!2_er4N# zR&c7#q5rPRuYm*QAJ3xN?fE|!p}@eD;ZtWM;jls1t>}%14X03lCw~*63z+`1idQJm z?$N(zmqJdO?1eF@|Yst2FtnnPlgsL!*e!*MeW5mKZUPJ)0b z5VLW$LTlM>O_)!cGV9L9x`;3`vI`Phbn6|~6XSU@h4qS%V&QIJ7!@M}8NQd`B5PO> zr#2o2lc=fH$}g=(BX4Fcn{dFRU>R!W1<)lFSYA}gyVTFRbN*-g0-|Gd&r@vNE!2TK z)AT|CW6qC`m+y9=n?N77f;ugCIi|==~BrvL@UmQxX6V~6E=$C2D!iaH+q2x8gTuG zVOild>sG+P4ZGVulDrlDJ#>QdSB^VYskp)^wJNZfLiP+&sjVLmEBVAF^QF=87fJ)N zBN#E{1dZi0KZ<(4toIFn<;WZmCZq38hk=2hwTwfPEk4I%v=reUG$>{Xu9M`#|3RLA-1fhRvvlGQ_+K<9AYfI& zB7uP^5v2y2fRlh`C$NCbX7&I#w_;sbU(6HiPhi6Z=x7j+1DP7nv`;@8te+YRm9L(H zunq}6J|(BP(O08GU5Q3&qiM=|o?B5m1I0SC=`2sthEOJ+oU<^h>CCa?Y1`-ecXua< ziBOk&@#AIWsrwdq?X&Z`Eg#$v><=i&d|Ss6&@x&PqXz7of?8#C>c zj+Nx#=YhXqAPw;S8BTZtLs%=4@YY2{IPl(IFjV=^EuG-yXz4Bf@^4-E-21(IfBQb% z=l7_pBY9!LgVEGmY>}Rco47qYq=R$8M`V$n2q(5YCyujkl)kAaJ);ymCqGdqZp7by zaDD0wD8HTdEC0OVc*|nxjlcQH{(Dc`_l4{JQ)<8o|Kl1+`L-P{l4S2=nt5r)eHbVF z7I6(sxxs}8Cg1RY!;J}b)MRA4P$jFWLr}R;;HWDGhLR6PL!(%0$sraoF_FNnVLCu0 zt1_?&TGM;mt|~x1q?J@c=(~t|~6r3#{6Z_2F z?H?56tfD#9UG!qUDH${dP%X<#pTIqC{Rk;HNHG&b(b5xm@{u;mV!c?ummt77l0+DO zR|b%V#2z>P`E5_^)d6Op6pjn0dsV~i&C#<&Jtbi`G?sTyF|+pNixwzUGsAX(w@k_1 zT5>{7fuZV`s$$%2Qs1L*8mI(-kB$Idg3tMTfP6y2uY$`|!eOcr-q$rKHY~_LeNqYV zwFL?l^Ek=!)ZSZ~{KLRhf54(if}EmY=o=8-p~s`*M|n!)!+`C?+?*bn_ZG38{KQ%d zGmE4n_BbLPU8S<7S`$U#0l!V}^272I93%0vLUId+1FdG z`nN6{y%l5~S)b5Hb{`i?$0BPEoTXcR{JnL6ZCJUk^aUG41HfDSe*JUN!QM{CHVXP6W8VTQp?<@?&Dw`Rl-r#T(=&R-2r5HIAjVtj&1Jj|7<_52gZ@3VQ$) zlP(k!WdF3u%+>Bktl`#Hf8cw*$tPFvirjN*H1I$KpG6rftjKnOci9X6y^$WZ#j<6~{d@tif2xF9PK~@k;m7Xs6 zu>?FI-vfyEqU2G!h`r~n;`h~~E*C7knNYzT&t)B+k3Z8N#9 zt>|J*taGy{>Rl^=?4-UFhj^e1$LNy$jauMHQ+cax1=nVVh5}WBZSj4*7o}}Qc(qmy zSO)gC-jvI>e&Q-^l;XaetbK|k1Ed3{zPU^CDt$zyMZIFv&$dt@cLpP-y4(53UPgY2 zQpOJF*658}c3CKkxflTpmzXxKJPRpUJSP*M!Nzu>#M9(qj{*Z6@;RXN*>%D6SKZ%H zmkq0;xLp|ERAJI5s$6`sAdA8+E$Y>gRM2p1T4)KI!q;n2e zOV#*gNvo~EW0cBju`$_*KuUqbf}*5f(Q=EJ;S0x_VdCX`z9)OcYAQL6irG3PC` zBq&q4okW(fwmb;CMNa6 zf*`?@eRCN%*=&Y{x{7ji3KENCpGJ_Mdo=ZYMAmq-`ikev{<@aBaQ)hs(Z-j^lG2g@ zsT6Eg8;i`XVw7StGfSQm3YNn_+D3sRNtHM}Ri9=nmrZ&DK2((`6M@F4JHLL3x~N^u zZN4Ent7()YnN6TdL9le`^RK8^Txs#_r>qYi{VtI1SKuT$U-G2}93eH*-l(X8_bUYw(^Iz0Qsz9uHPW`mCYzA~ zXv!mg%i3tw{O9H$l_>Q3&E<-`&#dN|#MY@Yscbnurg!LSHzmTP2X$1cn6GQ zan4;v$3Z+;(LLif!1WIS9t{Q-4H&uo@eDb4ka9bXO7c*qeMn^z|JUTKK_Jbs%2!V~)Jw@weg#D zT8-#NTMaj5JRU&{2-jzMRZ?V_Du29Zol@^L7f~mbfAZp#c3?5Y{H=w^@(vM2K#-Xs zO-?Y~-)My;S-R(dR;ubd|Iu?EiZXcAmb>li-g}ND_vb`({m?-;F7|k0zVXIqR!>dS zl_XgcNQIxY1q;+1#~;h=8m;frL1oCErcY(TT5A*d#CVJg0Hv0( z>o{Y{kB&3oVjMv@!9@KK46dLqFuV}Oq!Wpvl5E?f6xIJB)nt-_%pH;GI*Hlh6_@vi zZj$;w<;n(c*rHT*N*s0V7(Pv=orqyvm83%(IM>vA%b4QjjC6D*9|OCR>#kcy>Y;nw z$ykhx&*(I1BAIeXhSE-%%q%M_ZWgOvp6PMIr8kDrAyS&}f|Z&p=3u;VpdZEUed3cU z9I##Tvh7hl++w9gG8{=XQ}ty=1KX;uqhb2i66PUBb69Y(FLi{&dLr+|vzGV6o*MBS z2yHgP>_%g8El;F{_~fDTMgUK2DLE275n&K;;GbnwQ3TqZ*5>-nDx=r8 zr@PlqnQXZ<)s@beaUoYZJ!pB&Z2YOHw3e*pjg34=^FSed)NmvkE}>~ycN&Q@yo998 zW%C3*ju2g*)7Th~z|qbUSwy|0^e3wW$4g;0lXt{0bVee>s1yrV4c6qSTP*6Rf-7Uy z`poM*;A0H3`&$^Vnbd21eNqm!Hjfi;Jk8RCBRgVg=F($$f7KdBN_|6Qb~AXwiWH)G zZa?2PyWz4z6P)W}48Fo-J|J#eurQG8z<(iXXl|=L6MR!_3S0ReFL~?QWjYxFG!p3P z@XDVF>UjBZJ6#)`Ti*EPARKiL6%x8GjQNqe zdJd%Is)|(ope{J+N!%~{vR;I5okd4A;(}BylGvAT;{(~52h-S%3`EK=HyLb9#POH) zF>dwuNH8Q)Ubkj&*L3{SsT2KP?5mo4_ugHFZNgonc5z!@%>?Uc-dJrL%W~~L2jzC9 zP<9b^KEeKXIr3krA+?tHUoE|{PV`@m{%3Rhe~oNs{l|Fk#{75qfp9nm{2wn|J2ES=YnL{!yl)Snj=T92yG7xqc?BGip>3s0C(PoN}0h4E5a zFA2-smWBfatj0N_GK)C+3n&4)#!)Ptu)?)3o{_dA=G--Xa@^#N3kX#u*9YvG8hOz| zowi$|iEHv}qUs;pkA!Cs|t9@BuF)HOteq()r$S)TGg`Vx^&>Q@4sr=9GtIS|@} zLodP}*zKe$pQIBPRM0i#^B*#Sj)g~~?5`2Y?;5~Bl3-Jj#)e#m8=*(U(D%f5IY6&v zFF7NSp>gNvE6Zy)veYUm?Mvb0M^QlLd%D!Sq$N-@FOImeq1VDmpb_~rci?0CBfk#V z06eM#Hh$`?0UKN2A95`heqIzLi=$X&{WMS`8(>N@2LN-J+;oq%pe7yIwXxdZ!S9LQ zT!G1n2B9+t_cr!9llRzdF)@1W#Jz$u6NsmseG`ah`V!+}a?Gl2VUTM(FJIDGMqa$? zlbKrXsQBL0dNhuy5V}AyrUR*}4F<=lbk3y4^lX06irRl z2ybb|q36;s2OH)_rF~`>Iw-X#$m~u{chtXj81FB&dV(96*mvmeE8TYKwkvM9x0&xz zpr>z@=ncfnJjc8A1Fc?|L$8m8G#bMb?dV+Q+q#o33J zXp17PTilB5+IPH4XlK3`{)taN7}aHb49WdH&L7SiS+;K?c&Lof zoTTBdE?L?+P-06;SYjMt`hcEsLR;;d7Rf{ZM*X3OW$w>G)v9vGAG$MP>~z$s`$Aat z7Nh0gnY<&)yG?iBiS-BA>CZ! z=(V*anw<8gb#3*G$T*7kk;b;YC6J^#$+X@nQ+++Nv9Xs6G(C!AEwgnu?J3T0ZJb_PS6x}{{JFNa zxUsghxVgBrxIMe*@Ee;8$h5Lgr09^{nbjSmD8#fnMmF6cmt4^0(MRXB>zmUoOXD$*~K+RBl_C|5#k0!jY`t&q}7d%LSk+x6}F?n*=}Zd{2m zc3OVk)s^BWio;pwLY@o$-35I}W>m-)+z2eB5DF%Lr=jyZFQ-KT;G5%+HCs(ZVSTZm zkCV8xkK0dA16^q=doO4h6qzw$r%#nJ>|2;Oq#BvNbpgEJilXf}CqeEs$^$aN+_F0sUQcncG~rV{;&LxqPa2foOm-&1tk^ht%b z=#@gz|65;hP*TGqGBBMtjKck!;(7vQoL}H<9>e^Ft29JD0H!(pE508xQYPjoIa#O3 z?)CC}PRH{v{KZMtqja@o}HVed7fwVexG7viGpTttfk;@-KjSQwZ0 zm@?bP2wxVb4>O`Mggp{6F}PjdormI|gZfk`d9lvmpTl5eeSu%{1L8!zsK;deY^seu zHQ-*zw}|1qeyeB{4X}$$_YvR@I=HRX8d5i5v%ymxHuCtm{B*D&OHO%Ut>es#-d((k zzluCHJu0hnUm=6EIwR86Nht?HSntb8troD{dNPwa&A`o{h7~=YQ?_J&e3O4&{KSZh z&J#~C(HJ-mxCX9RjYod=Y9*T?G(FK?X1>=}(3UP4dA)lVsb0GwzkE^M@;I;jsyk=* zO~=VO)EHh%5~7lmyRoI|B3W0F3I=_t`h3ZF4-0s-{rNytJ9MTSsbM{4okm=Y-=4h2 z31a1<(LX^>-?M0#35BZ`iit1+;hXCP$^|5wmnuRw@Bn-C=e}5m<<5RnNBa7$kR*pG zAf%_H>{}7XWO90bQHG@+K%U^d3gEW|NL`UOvga|ad^LORGs=*1CM?yMmYT;PM^t5q zWJnp}hOx66?xFmSbc}Bv`v(Te+emW>FEolH8EregyZMb00sli!+jgsRuih}I4bElw z4Atj>0vQdX%MUAXkf7QopYq5qqvH%xAnK#U`i?X$u(4Zk#8@sFJTo6xfnlxu`O1@wj^-# z%nkV*X3`*zCmN9Mr~v>o;5VF6qqKq0wQjCK3kABi(V<&?7CUwltwF9TTB_ zAEcgyGO;^hti`iErf3+EA`^r(GWGSd$zm z%@NIKK%%TI_x&q@uOm1ZTMcayDh$fGdLUC@bJ6lXHIv+WJQKPQC1t#*+j^KbS|Vd6 z8yavFtjqlm+~%r8QwxN8=jE?W>;ZpaF>5Kv_{GemP@XQg3^T;&bd`(>xl)g8B$~xE z(U6;vWUeadu%Iai0aZEzIBsMZiope5l*pek6Kq}kcRyLIX1T-5EyeR_Z@8cY^>i|I zbflrrEnAgCBIpGMVk_)_5NqkCNosh~bjkxQHr7x!f4F@k)zlh9^M0{UZ8AlkdeBO) z2G}LEy8tQ?Lk$Kg#p(4&wJPm7sF2fcq+j4+^h+|yf>$iCthE-4{e{#N8#Tkb`)$9O zI6IGBV@I}T>}pEyX(E1Kve_d)ek+<-Zq!>$ZZxc$sL-LJYCF!Zib+I~TgNvbXypT5 ziVNq?B3g^Yc0A;f^Q^&aX@1~|P~Ed7$KAtgsN4dWteyWD_H?L-ba0)vN`+UvaRLpF zKyUDy^a}ubqR|kvpM9PJK=wgAfQ$MFYnv%dJDX)e8w#uWLF)Ddzw{a z7hfA(c0p_AaxB(Tu&}|5cq4~j;TwRcT~5aMeZ^Wyg22^h}6-9}he!~6VpHbpX-Y>QcXtfYgM68Vgs?5(`JzPXnr7m$ftkG9rYgfCcHRleh7T{z@!k{+5PiLL#pv1 z{XyeiXH}`dL2^0qHbei3_{lIbQm)NF|4A6}XXiyk<3ss_w}g#wP9hyK@j3Nbc=vgiYT>V%{MEE#h$;dlJ;G)$ zpx4ssn{+3-WgcKzQGXEFcl-#w8Qw9QsX`T%G)z|M#EOAbsn$YSnW))No*48;YC@D- zmi~{6EZD)%B-diE(=<3EiE4s1wso_mOJet@`Gxr=>6GJ2H4=cOawLbIA*_2Y{gJ$< zCVl*c%zF|8M`7-4ebbJCk^8I4Y7sOw<=!#3_Z(#?aw8q~gjxcSo+*i0l}b^MQa(zv zTt}}!E>%w6qFf?5C0`AcBA+@n4APMg&@P*ovq`3}rViCXv%07WRM~~|^1^$kS^CAS zO!3FA4VJ}WWXxE48AbuOM#4Y=EtT#=tynE0eVLnl0`n?B36QEBhv%5am|U*bt^rWO zj;ay^ckP8B*Q@|0Rj}h}4u+zGR@_O?JUe|Uqbk1Di4esIXq0F4+F$MSvhzlZuG#lp zSwDIOH)s^frOMmkRmp`kZjh27z(D5zxH|id{LuQ0>ACoaH-=S@F2dC6CdY*P;UOOj zkzn4P>IyswMpKWWn&Un5l<_i9CfYlvL`CNNt;^}Da%wz~k(^KUy;FRf%oddR)mRn+ zyOxY3l@j7|eptv1gU56}3vZ`l-n(2YrADI|`QoY_ZjIkn8?|y?YCK;q6E1Kqt~&_I zy^+yDwYYj-(>k=+p+ZAC(MVYqk}4*N6Ww46DOz4oYEl;?R(k9{F<3fzYtm7**zzNU z(LuYIxJnI}qNia~>h3YIkNh4kdSq{2R8z`#NU#{g7UIniyf0y0Vm8~{y?sH^EPJ_F zA1peBq@-EEh1nweE2$=-m|63eR3Y`{m%D0ykNp_%$a@8j@y-;XRQT_yXF>s2VcW#Sr;uDN z?hh@VoQs#XXVyHW*$s;*zYEA@((+5lHTe~M z4TJ_e{-9xHxF4F-oMN&QYMj9l*q)WqBQIzHyAoRVlWWOVIYa(XpEc9_5cZeJ)Ta*& z%E9k%$S!sjU1(d~z+yg37%a~G`DcMPxjkJ$x3Y0Y=4Z#0l|1)r=(eJq91Gp6I>~!| zv}b};V|SYLEImn_258J z_`|*X)Otk|c*KIHwGvt( zYn(g%v3&I2_8ap!FCCz=kCf8U#G&eeN6v1OT1gC+c^%+gK6p z98Yo9vR9$~c`Ms+I?dxfG>BFyh^^zdaejVoKfrqHaG76ho7ka`m8Bo>Vp43ZBjz!c zZ>vHVAUA};Li}Zck)$<0WZ5!9%U#*k<@^4chVHu80+Crlm{1X@W?bHoJow7}mE|b8 zZ?n~`zHI{uHcZU1d+O-h!?`;&2B<5>#zM#(1#U$_z+HWQ?wJUN;LuLDF<)q+rJ#;v z4IR$QsYsmNID2N}niLC2gN1`-Y<>%2f8Adl$n0TyP6fZRdi(m`&H1IWNiv#I?voX4 zoU{a4dNhfA%dG4qwD_#4v5jBC*DS%qB@#CIH*de7epGWr^Ff~A!C}=Lwu=X1g~_A} zzfjsCeo+2b%3YLa+xvVV}nuCUgjvJ@+D*IgWIx9B{tAGO?_&xEa$*-f8PF6LMsiJS3Wj+S8eHeecDGw=L z4&!Gm51UTXFYnRyNh_yLG3F=oMs9`3UVGztu={jHMN<*)YnxRR(c2`qUU!NibWsVS zNbXs3O8Ac+tf4xfgSz{HBA-LnT?x&|6`f%z=3zOpYLD0mIaSB!mk&6zkhD4gD65qB zAfYPa%benwqf6Bul~o&Bw#2?{ArFx|K+uNBo?@!&V=z$Mn<3KWtvoLOduQ0&N1F@V z+YWy&%j2Xq&P+rJNG-@Z7Xk7t8lqz`DnV&Xh?OXHCK(>cL2&X#ogY5!$c8O5%t%f~ z8aOF`-2^ok%zR5dh7k)j`=lnwPaNAW$sh$D$m(A`py&O&aIP|`?da;1yLI=7w#$L}@`qE5QK z9}HOV*S8p#u3IDBs;j>3nye2;%SH!XCGw<0{`;QH3`7zyR(1T@+6_*&hQF5=y11iH z2h4RtqiC}z;rEnpsmxGfxFXGd7mqYuJI}foJ-5pMUxl4yl>P3ST=)y7v5?8AYO~lJ z<(@k9)4UcvkIUI2>v=ZINb!C-VNCRaBntn01sgOIkzL#_`aV)tx--@e8O*gu-aBqx zuUQ~nB{NeejO;U?8%DMLnsI{62Om=O6dzHHoDObv7j+*U%;(b0Fb!uZ!Lhf>`bT9- zFg~XQh%4(|s)9s`b9YDaLjbHrIX+yQyoqarV@qhSx_(D zig@HA>Ke>y4-lu55RWa=8B`&OKykTKCS8C^QAe=>;A7Rx2e2U{0MNIJAOl8H8ZfH# z!@Q2J58PKkzYe^5BqkdG}iTx zmSsb4o-L3II92VijAVN}2Er)1N1*siBG?x!9X2~R(`;7+SJqlnk1M(~+?nY(tNRHc z=^%KV=rrD;S@o6;3tl*MXQu`UFSZ7rw^< zQM{ouSaRB)0P9P0?aVQ3GFzfvSH4O-$jk3l;+1RpXblpu`d-jx_Cz?tolWV6IBAGY zDcTwhY&t~Ob2(r`UjphPCo1sJlx8-8lgzCqsf=%7^vr$x6^QWy@WV>4i7suw6_#vt zCh|P6n5+3wqv)ge@sfxNm3~T;9$6{%S+oUUFXa|}7JeNAfA7Jyn3=523Q3-xpr2w# zsf<+~u;noJ&XSzFG+#+;Ys!=;r^!3EhcOTEfUm>Nd|3ji99Quoj!hzj7|MD94JKsRbU#Z@xq@?3 zQm7|e#xOX$5ZXjX;=@`{PGJ}Vx0zcu42*5PtWI4ZY{eH9RcOu`wS6Dk$1*l0*r@yTh?O}J2n`{dQG-WVee62}i6kS!Zf z8|LLyXUpWnQsh&XUr1W0%O1>`i+YOhAuHbwoR5#uBO6T!HfB0Ol9fOtZ**(PnkJEa z7tfl;0p%0TnZqroDf|TT$7UN&4*qd*7rCFqbqho2!b!g}_gNT|0BBG@)~}>ZrS8S% z9fz)V-3O@zXcsQq2|){#Q&-T}n5~rJ&srkUj)Gs7=Ec|+Kzf@&YUMA^1xT)Lx`(p;SbhHs`jR%Ed&nEz7pS1b&nBAu_ot7wV`Vt+588qApC4{8W^PQtG=x zWCdb)XFUoXIA6-H#&FGj_?`U`D13j4{PVgsq8}o($E0}u|1Jl`1|L7L#_&fTDsOMPLLU?7}{x=cFl5_oHrg^PJChT(hV&M`s zZ&@s*L4PyU?C@mZaK;;68wr#LyakFN6m)@U6s-fc_woLLi{_qL@bTnN1txtR7nBJp z>vl)AEQ^EP2nHn)#I%Y7S#wixe`%!v|G+H)ct4rnAE3MqSe$@w5Gd%-7ppo6rOE-< zoJewYqgTdY;P!Tvoa^-WoAoX5ZTa251UCSv`Rq%KWq1R?#CA))E*)y7oa%xs9p52x z`DU%K4V`61Ggk985twkAU72bRtcxac;uh69eEca-l9b#4LYh5liQmnSnWMWniX-Mo zMx|>byUTM?q*Y&zb zn;gvO9NAR_Qm9xRZeOI;PLT$;^4>KGf*dO8XquL{VtpNYQk3&9)&-f28wn-wx}UpB zaE`ajr!oUtF#_&Y0^H}1arMkX2tqAlvlf$SkL6sgsaSdg%wj1-cHpkVo(5EJ{m{bp zq%UA_0$Yd8S$;5f2Zk!ZKXaLbxB_r#c1glRkrI}GAD&ID8N(m33(hR_RCXBKXNwIZ zdxk@(Hb~n{^G^x`eoB)ugFeKrw~#7rhu~u?hq8DsIE6gU_DI{|1G_b>?(GWzAylCZ z52UNyfF}X_;TPxgU=#hs)=zR3)?O;7Ppv7fE^`QyRq?Es0L#n()Gx}cpJWYR(?i0u zj>hhQSuW4BHqWfEYVD-tN4+7x-}vw(1xj>h2539TdDcaw)cp)VaR-)HVJ_c^gb@xI z!xFGY27pmDN+^7gM<=_O6gO~J-O4$k;Tvf4b(Z7_z7^d170HN4 z0~g`D1Wc7GM(1Q~Ss~K#6uF+Xj|bMUq{P8MOp16XFAODqD#bHuKo_Na67?S2#rKL0 z8}x?^&Bp97Hl<_4hc1e!*__#i_*Bgc&May>jOv`CUvU(c%CkYKG_OdX$(_FrLL*#e? zvGV<4@LNqWay+y&3SRhji~@$Uf?NIfIKJnnGch69@2a|)HFXOvf-H_RK~>gL&uRGvC~ z!`9(%hf;P8Fx^r z?7fJ3He&vK1>qiyTM`TKR$uGqT=j5N7s<1c^Zte|{CBIq(lJ3Q3 zhmcAWUW!C4ZvZ3Pspb^&hfn!YL>3lZp4-iGoQ03!L2C+kc$zaj^(z@o#!*=`JvCyV zLh{~eEk=YBhskB8`Cwkph_9)myQvgpg_)KKB;2Drla6eo0+Y8(=HVeQj+LCvIxZHA zk4@V77JsluJE|%U3UQ4i(<4@Z_4eT3^f%O%N;YZ>@ zPTC+54XpkykyY4CmX(E*)itZnYCY_W(i$(14hh%BbqszQ!~#c>YO7KJ*5%D~8iCSP zUm@`}_Cm2ssZfb+^~Dw&KQq^hstTASX4NU><`4g4**4oCrs$ed9qUm07Pw&qz+fW` z8n2ZuS)Q8P-lEbUW|7mUbr_;K13mTjX;%~3C^M?k%)IXj7AJ8E3YV5xq z*QqKZ;E1U+2guN=!f@cQz-$dwbqrOk59Ykg^9(F}os5jMI-RH=EV?}bsFS;=NqmZ^ zQx}Zd2C$y#TTu%$73uRO;Uqq%(p=eyA&4^7Y=dj4(@)uMSKT{XxxGDpuyqlabk;g* zY{3@zS{jV|^%9jB#Z-Er(+IgPE_^Ku9o4#;uU2VTr7gMB9OjiZKy99B`@M~@EqgAc z@J>aeMnyB@k(Gf1%SN#XVvO!OV*LyDuBi|$=pVvQ(+*L_E}cz@=e(O3HLV~a%OA;` z1XeP-Nf=qK18#)arAs)5+=D+SpVLFF_&*}fxnc@MP8DBR$x1cLd`KC$FjNgH?K%Bs#s~A|gUp7Je#t2>f{1;AR@%9Ww_Rj5%KCw&AejDZ2ZZ5x; zvFxqCM_Lg$nrVp}6hK|su*R>%Cs|`cBhyXVt%@ZuV%$|NK*O+FV`mI9a4GDZ2oK%^ zov@KfH>*Fy@Gz{7+ig~BRQXPG2?o8#0f2ze1V4<{RQeJLN-@bEfMDjMgsdg#$3e*J|pgXq|TLDINu6j0lO&e z!j4^N3c`lE!!#pp@hwm5ZWNljb`BKh^M}e?&M)Y<92Z$97h_ba>|-7c==_VBnOJY% zA}w1)_zK#Rs_DMo{_mS1^mW1r+*>$Zv5GD=VibSK{|kho1z@1K|9|Mk9wPq>J;Q%* zp$IMDXr)M2VC!Q+70Gl;wyJzbKPtYNErJR{W)n`cZxPp>zvAvx-=CS6=zrcVME#&W z$ZkowOl9Ui+gjNE2YDQBmcWlckHme{o+Wtz*0h z=j_?4W`&g=s8al$D1L!{F&Guc31P#-7n(1uU8&MfJ3)VW?MHPUJ`ti1+iH_A9i+4@xlrp~J77 zQ8SWxSqbgc#G1f`hPLa{*8eZ`(hcpr1|2s^c665=0P4lu=tlSW$tn3__$csuXIUB(PWeGg(J*EA~UhV2Fazo6F|iv%7B@%Kg@ zASctUiU|y?(-jPiDOGhCobYe@1Iju$+y8fGq*)N&H);66&7p@SlZ6N#KEw@uF+Lc~ z)jEhwI^G(?bN~PrN2P0G(MagYL!@VS?$=~gT;1QIRb7JP5I6x-1J;W{G5CUe88FZ4i+1FrmX8`KFKjq8` zw?G8>2BZG7_0L~}QQ2QibnuN#?!0%=6hk4NPdh5HXJs9D0xZxDE1 zu$H0XwZ0rjz|>AqJl)DV3ge@J^d86>Q}$_vvruRl?Z4 zO2ZwxG7I(!N*vEbMXoiO|FojH{Ll+#VLd~1yhHQZ-Yq?tMRZB@NXrTwPfuGkn>V?U ziZ||o10pJ}zB0bqjuZ_;%gL)$$4?HEY5Br`(T_C#iS}rZ2D@#0bEKoQM_qfD3?nkC zXmr3(e{2w(Yjt<8c*XTX4{8M%3XDNK;rlj^ue6Q(T)Y@`{RAwB+Ix|Pp~l*oZv-G? zySsC=eSMuz2avJT9if6h1su#kFMJV1Y$n>ir9zL{9h28vr*GnTZ}`iTqCa9o{>Gs` zu-=z}S_CX`S7azwWI(ue58-Wfw>9$(C8Qg3?4STwpDS_eH?gaHGI#&Np|-j!0=P3SeD~chg57-6Z5ceANq^&^ z29msXncU&B0mlznGT*Q-UMj|cQ7_l7N_KinH=8t1ZySfT>2DsO-axGGh>C9D%ApfE zu~X-Zz?-2=A1x#h=;WIA+lTtojN}vZvvGW9^xwzD`Yul41DDay{_dZmckvK7{Kf$S z#=hYG*ma`*>>U4082udow73JBeUO5J$1|pSIib_4)`BvE0Mm-(d4_EY3Bm0E1k8Jb zi{JHhn>u40p`l(qbTB5uvp}q1R#N*&h)G2BXLWU?elc{M9#%;B~c4H)b(dAqr^11AM z0dir>;RALR%s0{$9~CuaA}X3JgtoN!D~nxax1hzAFHNb3b{nn<(u6B7G z#xe)t+Mbr%-^2f0QY!21>+ILZzJXcMXqFiK*d;j45MjZJmgw$3RddSwX%*?BvUIhv z>vZ4z`~@9ID>E(|>+(*V9axdavbbmW)Gg9j|1K!R#>-FOEW>uac~U*%EnBg#YUL($3Eo1E%y_VArv-n4SD zINIJhqJ(r^M)7?6q77RSNJUE6mCY*?1yr0RyhM1VwUKkoKHJ^goKiJbH0G>A2^Hv4 zm7IWhG2}p;MFlJH{XiDp?V8yD$3k+A4s?S~8>iE>-Bi>>Z~^kJ>n>eLe7V(ALAJvS zp$iYl$82O?&eBY?UK7xZ|_ow~{)p`F(;BF`J& zW2$koUYx^8`T?2pYn(G{9sMb5h!daW9gd@wE8Qc-{NOa;R>(xqZ0}+0%~{{@lcEzn z`gCWTGy}-mMjS_zi$kix$mZs-pFkYLN;uJ z?cPN3oGh22Bfor84XQ-zu_d95x};wsbUu&C|AL&$n) zmAtUYnUAvxD|E;vOBpu|TqGxkryD(%AtpPO?Jk4il9yQAAmd~EMh zYEjZba0PO*ETUlcG+Z~w4^g>)ekSB3wx~Ea1CdwfU$)D>scJVhGE{_>n(NtUk?<>m z8bL#RjPO>5vw^O*pDO%+WTJC;M?xesHk!S;c#ZYjG8@d48ZBf;IurqAasxEd#M{)> z8j*T|Gxx!U70lVQsQFWituXD(Y%_75RZ4+*=0L4pv{vzz3Z!@N7gi^q*EfY}EQpZ# z_R&+c1XM`y`~?M7wKbj`%FGhhuOV2m{F8q=gt5t}_<3<=o5tWrzpXgh-g`(TH#5UX z^U{FuNs+RYW4L~)pMUTi2y-5+o<`9BF_&SNJ_(|Ll(;8~EdZ+hbC~Mf3@wKKbx1w| z5DYXgr`l@_6p*t7{R*QDjio1m;<=isiCTl4tDS|WBhHlwYLK+{OhSzVak9f#LF)ue z3vCP5aQb}L@9f9bh>Tw$vAvbNoVB}~ljNm)6hmsi$v^%&{#!UjVP-8BDtnn2B99j% zTuhT1AmH64L>o)lnfQ#wd}TR|JHL(hYh!{*=vbfVvoLK!yWY*}w#|YF7sj z1e~wZoUkKRv}xxO$p!6as0iCBExQH0CaD0 zM$ctO;aO7roa2u)$PEKX1?+Hg{gD=Xk5dSWl5Rulw*zWZ3-MVZsM_oFE#sIaWL=(G8+q^S|Mk znQmUwYi7xj4B&v$2~oP-_Jy`DozxHSm2!}Q9JRZ<Tf5|PU92}v9l}^BOqtVInKssC=05paDp|C%? zS-Oil5aUkZWpqIxv@vnsq3BCGR!eaVM>&I&jsXTsJ^ny*+F#|99dyJet5uX$+7AQ> zS##82D}(ig-J7?q4OVshq)C%f_DNX}cI26k-1+Igld*4o|NHi5J7D9Ug1FB;e+JxN z$p@M<+XC{0%3`Opg%&Ge!!0(96lll0k=5bqHoc+E&49~y+!{( z-?Qi+5wlhqsI1WTMKN)0i=5@n*?q94+a zELO)rxhjt3h|i**(a$aV5Itmw3QJV7)4;H&+ON4?{y;lMi>8iQJeHU!sths75|hOg zL!4xZsbU&93C~7 z`7!sl#C%ap$xG>Arv zjbk1|EV4useaaGNiDpZ*e~87FSR!Uqa-74j1_Hh{-oTvjnywD83h`4WBxxxo%PeuW zXf?!gORNwp4RMYo&Sk*l^Thc{(f~R)z83rgxB!>TE#XCw6Z?54WQkP>J|KBBZHYF~ zZn2eMB-jv0gb%+8@M|?t!NP35CDw?wmhg)UEU``iS2_eB3!yP7e@q}-yfz%#h`I_p z>ZDqqw|ze7$y!RrEb#gRpfAyor`->m&xp?xTJ1?}Of1nU)?4%i`l2DA5JAKB5`EdC zkJ85s5w+O4>^zIru$dMc%Z{@|m)HRIEMo-H)D>B)PHPjfh$S|PO_Yqw+94Tqb9UT; zKqlN5X2%@}B!gaLf3bPU*sqC;DH&_qkwg%aVmV;NJs_eUup11vNP|5P=X)Z`R0rFA zn*d;x#~*aCGR^dSot0ax43i7kx_()a3o#5@ZU+cXJ-h@lsHOLZs_GWSWg4Q5#1g9= ztOqakG_7(D5cqjL5y=T@IKKfQwqrgp4K<-kCo8pnE(u1ue>(Bd!q={})G_jK&njP= zw@b;?YDIfD1(OJCQIBbz60u$ z;30%_o~Ycwf57+yS`sB790>vti;ZHVE&3!_AvT5~BrQ&=@vhcugszQ^ZS;?n+}e{fjzxAb=yzQFYEMcZ{B+OD6Y z?fQiPL}QP7xnqg#=%IIrofiEs{n8S@6!%+V7wXS!oKy_hP2WVz-;0c2fkv}V?CzIh zIaO-O{6sisF~X=N_J{|L8O`E(PBbIf$RxMWXPgIXGtqe_GZEwpbrg2vZT7iVo+Hw< z#9r|$f3(!6XrWe1)(AGPDdfkyT*r##w#BIu4~l)3*pIrOk0=x~z7Y8g2C zoOb&l=h#or4RO$7Cd&nlU=U9}#K3+W5)bzg@Mv61{q4R``sueN9$`x?aTq<;5%H)c z9up5+Y!Pd+*kWj4#cZg>T3MqZ9tSht=Nl1Ae>@?c1R%M~fKb#Ee@cS}K^st*y=Qee z)KRSr1ca7P0q4QPH(KIpl-OsOWr<&lXF;dqh_t12VlfmJ>3jeU7@D&f1Ub(!3r1*= zdsK*lmjpZXXR+NiZa3SM>-i1F5gXYii*+$@*!do;Z>w4z_N}jm5bAkKXq6>iz>t}H ze->V7i5F3}27A=24o_WE6`Fh?K)i%H`7#F4r;ArC@hT!-j-kqL(X=~)5r+sKm$0T` z9|Z8QvG?fLJDT7KM&f|;cVdGfUceJo6y!_DALF0>2-iJ|7$ekXLor43Of6x*Qb#~(7rjVYzKA^?UQA3?+Glj4VtiiZA zI;TfZ#Wm95|M7Y-37C=*DMKZ<7N>8u&?IA&@D?U-TjCw@E=mx_3-}}_ia`;y{2n-z z`2?rYw=w-J$q;|A#Czh8lpJqAUhxEd8$C&oYHktOM#&-mWU&CoJ;!ApXR*J-e;4YC zO7yrLm~Dwaqpp@_B`f8~$`J2c;sfy^SnljcT=w%CJdh1f8q*{bOT=Xq{nlCeA9#dD`3qcQIA4`@P9}6Q5Bvj zFwYb52O%Wv41?_qbwxBO0Q3(8VtB^NJm)~LsGes5Npm)UFv-&aHVt74^)s-fCh<=e zG{nCw@o(`TOZ-=SiEmH5fdDF4G$LmT%eE$jf(?eqO^GFEgQ5vG$8ZtLe?`%0xxwG+ zO3THtrc4_sMJe#F1LDUFQ}>_^O$YXF$_lLJ2y6}n{PN)ej>&OMJ;#(LflYbM5Cz03 zbYazC87*}9qdFkQh8!@TF2iM}^8xrD>QHRWy!*!LVOTw^HXMcp*%jZC0R0XGr&4k%Y*Qv8 z!if=o=R^?gj;^3zx{Qg~ccR^QVwM-yCw+z6Z-|vj>+0|*HtV@#qyA`7IG05Ifr#_e zT~({dys!J{ROp&MfA&Y|nDtAY<;QS)y*%mmx+vrGbua?{2<%GQe6>L|zwHnzdOJHo z7~*$5$?q)Es`Tk{7ivlBvk^t0Jn^4&tnVT539j>ge@B!`0jfI28vqENz3uH; z=vofpVE-N_sHYlfFAn>9_mlnD6)#c!7eaR<8j^?Ecn`E91AQ6l@CC|OIqH@7$Q$tY z4~tf#n9Ox9rhGmGLXmW;3Y-HjQgU(z&SjuA6RE{os%+a8e*}~ZYhvH&4=c?CBNux@ zAB&UxQUFA?f39)Pyv1O!K({a&*x-v_U>==N?nPBR`xw#nj=t^FSFT{+tfX^H3e*yu@_ebi2t3z?4H$p8;7H^s1 z7CR%PdMT|?Wpbz)F1XXdB$6T4_2k0!5OlUVTLRxM#}xT2VRU)K{W7+hiTj^x6To3FvR^M5L1 z)a%EG;En_B26?%~JMhWB4FBqqr1t19mDDVff1YUK8_LwjoG4oH!m!k*qKQYM$m^z1 zSUo?^2ve7(T0Xe~k7bjULBW%+E!2}|fUSkSW4k;C9F)3x_?Rtw@R0fDRlgr`{uJ(* zo};4B_a9nCiAtJr_XhUc$z5z%6ZUqfM*Xr^FOJ<|XclPoHrIX_6d`x3v)!ro-1LTcv4nzz$3S1P_pSjhsYr;GL;ssWs4pl+L{q6*xQo^MSTakDif8fT~G=6VD2C-u^xVzNntyY}P(!QB3wT<%^ zHP*N4PuOZMP5D(oKi|#bQ${-&pPs#c-*IulYKYX5tsf<)WMD?W0%1TnYkbQ_f3ywX z1C0lg#!HgMYkeDUQ#C&OcA2dJV`+rKU^~2ll)$v#FQoeQytl7w(ezkADOO9`e@{(E zs_-J)FQ8B8<2NEnLD5k8R#?VGO#$y_UwBb)p89c3zU_Z?Fk-cZIyWN>9^m%5_I>{d zrUcX@8`%Srl@fG0RVU-Roc;I9ILOrg$wS(f2K7RzNs)AN8@$0bU%T@m^Kfrk<(#mu z7B?Gl%}nemQnwh()p{xi)8qy7f9!)j0Ui%{1A)-S2pSpbs`@%!OMNk>en??^K3KlC zbMVMl-Bu)LSBKaM1!f&YX+QB;%i*dZg35>@+>DE{aTb#%+?Pl)@-|=9!W@PJ zw$lTlRo=j2by1>z`KOe-JOh8T0M}%=w9ASYLj;^C8XY}R@b)cnfzU6;19*rs!0|L( zR^&oPSq3Z=XR*8`Vkolr6){s^l-aEd&&f0Ssb+8uLKMMF*p z*9d=q*WeFk`mMig@@~r1WY1P%!_nq?+p(f)U7V9xp^5_~B7G|}ce79Rh}SeXDZHD}5Ex<%mp`}@G%wX|-2?IMNNJ~vM~ z6H&+6&JBtwdx5?vzh9y+%lsAks?2{&e<$IB<9ObIzjx{H<@X=xdour{gfGDN+;O-+!{7V#e*;EEF=gb2bRH_K>wMK2LM45b}IkFL9Oa zB{{9|VeEn)dr59##9`JAu3|TQ&xF|Si8yC7&)$oh{|1LTsbzC z$H;g+PEr~p6S~Pn_}ELz0C#x-bgwLnk%=)<1z!b|RB>{QOo@?`Vq~hC zt)Ty;|I)K9A`JdVNNza*PK%N0Hpsu}f3kqgutEMyf4|fq`S6EarK*YHD>dEp4bAZA zUUG7)(MwLLFT0;q9|4~2B{evgnY&1JIo8F$^00pJwO)plGC>9*xS zXAb1Ee<}`;g^hqcueDk{g!zcwq^@EQIfE0V=*+`F5oDDyQa>U_8cM{W9+Fq>g1p4F ze+Td?pG+as0Mj&5Epr?vhZ&A>@L$`S1xQA;Ha-M1ZQMx~-A#sI1&+0cG%>QQhZNWq zdhkjZ$XzWe50wZxjzLZ$(*e_T7-zcXyvcH5e|9*|2`~-{@^BEJVaU(3fIrP!iM5xs zv{v?##rx%IF*ouExY7bt<}pk6o({cn-G)ml>mNel$Io7}r2NqKhVnxd`y~ZKKt51L zhRK{Lb!GX0YXBRlXMBZ(B*ZImH6Tw%>>;ohXsp~rmQhkIO2i&=HYMHUB>aLH{{UGI ze;jq~AuI5EB~X4&Hz~x5bFt#Q7&*V<(7iohK2{-ll2dW0BxgUn7f3e9B67CW`z10z zo2-;M3c?^ZSd%nZ3xW$J&z6M(R;ZhM0TIglogk22ki1n&*xJAd1H2Ld5ZHFq+-fBg ztx_R<-C!NCqL-}34EnFp`C6U(b$$Wne=)KSah%yhO6toGl8$a-mLDJ;`vF-&5M~_$ zpw7d@jaiJWN7yiYM^sfLMxr}l9xKUOvW^5K>xaZAQ3zAOIT~ePl)9GLx>;lcfJEZI zkw)nIK+T4FNH#Wrm~3jSJV-WolTnoi$mSTi5ZB=dF?bKjDRJ$aE_%p%0Jum2e_RwJ zUrPsQ0)UGZz{N50^>lzL0JuZ}ToNPSNCy~Dsmel37ijvv$)~%DTt(sz@>*cEGQ$84TvKdp z=_a{l#YT)=8@Djkxh1)WNl{7ee?f9xH_0!_JwUEQh;Q`}ucX5s{(2lSMs6s$(H;(l zKzc$wWX4e-3vSl5e+R1VZkM}g&zHGn0-TIJ-Pu6=mITMl66pNh=}z3=OU$s~`-ncr z;Q<)AkDfwjl5fj=HMvP@Mll=e&*j|+f28st-woq; zA0S)d{|yyKfT8FJcW|_Mh1H@0$=^3Uhfg<(jG~-7h^NF=WK_*COGL4`o7@^BKjkDRK>pAZ4?#zMzxFc2Myd!euxtBtGsH&!l#=>M#a86$fP2(Bxj#!zk{4m zff#cEW3Ixu6&5b1$Slrnf4baMh@UCRk-)g_O=TrHh+ofW1RJSlL~FsKfbpV}%a0H@ zZJ>=kBp)XCqXtNBLpKpVOgb=wIy7Y9ufTyBAj3tlI)h6DsML?Q$_gQccq=$%34U8O z3=iOyPVk({6!30oY~sofROAZOkd+uF&}tW-p3?(3V&wK}7o>Mgf6qbiz2weT82EPh zy90Qe(@TC5BX`M;oWvhrw)-o8f@&$r@u6{4{|`iW((1 zlEdUN5H+-}quA(p5T<0vM3WOE_iWcpAHzHvVjQ%i{T+%B^*CqnkYMNm`#mx8GuvQ~ zWyfW(=MlSkTpZsRf8AUN&D&rdL3r=&0mBF-8+d$1*O!-YeR=(Jea8c?6WED*;7b7# zgNkz{F6sL6r0bK85B;BXdowEIUQhZ$>Gkg0Lw*i>%ozCvx;~NW`VKS5s$CTrb!fl0 zO!~d0GG9hk$QA5n)COPhgu5`^^%A8L%jb8YTV&oas*ijXC zKd$p9FfSxe#>i7K^7H}nByJ=u*%_?hGnj*%|5{^ve|89Y?h@tW&$Nj=mCed9hjDiE zY<8M%9;?}3WNQ%yW5bjpJ%6tTpA!dnVjFa?Hg^!vyrc`=V8MFH%X&YCKNr*(H%WUy$jZL0&Pkc9&cbR}Il6)RB#Q(4 zoSrWqe|HAkY6Ef>Sq$SWh6sDHrlOWDi0c58D~&oZ4z@6_Faj%bO2t9)YBw1SyR27% z`rpRL@4)v#4LX=h^ycota=v`@Jkd{==VKjD8{%Le{5IkU>n;0utToGWHMDo(iDFju7|o> z%k0;boW9pu@W)>Ar~N44QpiBQc9h>u#EzZh&r0!PS ze;#3g+9TXkeizL_Ms5S*{z?hLeTGeq3T!S&+vn9n0e?{~eJK2yG4eP4897M)ZU-eX z@(;cBzlpSbU^wx7*FSTr8S;U(3%x=`D0hh~d9&H4%Jpq<$dm}8? zD4>z%catL6ki&| zD*6JP8Hfnz3y4SDP2{8a>>@9s*gzfnD*%ED`^@4Jpk`zvB%`VwI|H?>qj6g*_RukC z)qtfQT^_5;$0^GiqvKM0j@OXKr}R95lHK&gcsH0)X*Za0=Zs3Xl9O>pbb_1_&BGbR zy?3TXvsLM25R zSy!=#PDCSvXa^jY0nmVk3TcAko^(NF-2R{^rBz^_V2gWL?#}6?9&%i@%c((=B`4y0 zE;^;>%U-ljE->i%v>XEW3rL6DH!=L-u%`SMn(|vQP}qvjpPr;Ae?hh&t(OB?QypYQ zZL+2*vZgDtVsr+UPNqasXU}}BlfqLpg$d0`n?!Z`B(6apI+b)m1fn*5E91nMXvxpl zrc9oh+pDuOF8EZRynUW-fgxH%gY=R*#)Nfxp|fqW37U;4~SZ_MJhm3Wai9&js_5mmeLJGo`9dZ>-2oB02e>D6Sxj{?wx$Hb`^Q*K+ z8mE>P_ADwg-_lT4F`}2wX&ixU!RwVu=Vs%4iNvdsJf>CRK6}@bB>%TKrJ?V}f3x2(KilFX!kqh~Aw^L-{-fx$3ty=(!=Xjldo zuF-a2KDJt8{wMH07xJge57I^5?uAJ)Wo z(rOps0Wy|DBnf1!kjKGu@Kn&V1!WNY*0nq0J=Z!ey;wYEkxhPW#Abrd0&}%#^=$>a z1?X3Hf77vLt@o3WZtpHKvityD8KdVwC)l&06v5>yr0u=bSDk}? z9s}ni7$~jA(_*HoJ&5HYPqSv94n_N%bze;QcpLV5udfTVS(6;KSQVuvg)gYdBi zI|re*SV({nT7x~bQ^T)U#V{q;4xy3I^)hPgg34vsZv%b+n@VyZ60ifq3)ni%*Mz^3Wc$oel12Xwhscr z_O_jW8+6@-e7!?#V)W|`i3Mzw>nBf{?e!D5elA$EOK|yI>C5*GS=BDnZ>qJs6eVp+ za?@q1>GBLsSEwz`=rnX!s)kW%4Ob~-e^+Nfc8zMfHbc{Os_9!9n!c@?u9r>ArZjSIk~c4V=*<~M{*G?jlA-OpYW`zl^m}PI zzaMYAC9SPH-nKQZ?N&YB4>FARL*4eH3~jgRwjXC`yGpm+o}ujy-F9b&wx8&>f4efY z-L2btGPM0vx80MW?Pt1eTNc^CwtF+Q-KX1ro<%ya?H3u^w(GVXNutvOF}#ePcETn& zq=J=P?jr%>=Bs3m`W<0W$G(lpeH-j8%J0JW7`w<}+e~z^4H?YDiME;8$TsQbW@ton zv;c*+o;E1qZ5<=Kr-Ne0<#$cZ^00Y`?V(g^7 z4HXjqpgC+5+nhFhjP6#=CcBVbl;QG@@6gR(V;Ae@0zJtb+`KZo{p;+KxB*jJaHFhz zWUuY_O!kdfLALu+sA7yL`pUO@; zt%NLRkFwWta{mudO9KQ7000OG0Om+RxA{5&;sFEZNI|#WJOM@m4(3QfLEpTe|3D1@ z0B|0cfnWh1mry?e9DfOXROJz$Np|<`@yNyIkpu_}1la5b)>LIBK}03)Kj z>^|a>J;LsWaHx1dRoZH`w2D@1FKMfYq6Fe?53TmHx4mmmYcJbsTYE@n-uL!pHxLXz z8h*d|zHjC~Gv6`ay!n=w-g*3K0I0?5oREU29IzFhX7UV^XMdSI$K>-&zQE**))U4b zkG|xD=ivqJeVNIN4%iMaIjQ#*?tRrsCozhm+` zqkivzKfoWIM1THdYk2Ez-M{UbH^fBP)}L(+w>Ib_C%gfFVa304?{7@rzin!v46mcg;*qEu@g4HQ+6z&7AG@t z+p*M+iXEpou?)-YSYgMhcARF%>2|EN;|x1`>^Reov+OwAj#aEPhpo+(a2~f_39BXa zN$5ua1i2+1*OE)4YAU6rB&`Es!HP#$SYN2!_5l65^6McPJ5@AYPBH0(%5=o~b zfx&bn8h>ch1@)v9)4~x|Xtu-#q6pPl*a&d~aV?>P0`0j_(v}AY!fIOUj>NR~6auy) zIO4q>YN%gJ(>QMfF{TU-L=$Rwxu%7CNw9iUY>W4{B~od<)3hV4A-D##WJrsriLI+Q zBNQje!Kz3!(G*E{Xvr=uL?&r=X)W2=-NBwyX@4~~ur?lHlh$N9%`>qrju2xBLXCIA z%c)+6U|E_7^E|}5y3#5e&G)jXBE!qsWCPMPAvZdheN~OIQs2rRiu*KLc}R`6bTo#; zNsafw?X7OxqHa?IQ8nHdAhk%mk2gL8?MNik`V3nTN{HF1#S&>P%fKX)DWEPIFN=o~ zVSh42=Cejiqlr*|r^@HR?6vx_t&4=U#PUQkrjqU~V=~(VVriRoejp1&Q&UK{IWZJJ zNxLN1Xjfz>c~Ua#Q-{)lW;)GyiuXfIA;*k?&ti9E2McXMbN0k@gwwLLI!}(L3RCM8 z!pT{>t$N&XfEAl6qdeZ)(NW`Bh6FEXx_^kd*73qU>}`u{=|F08U~_DXaVW|3K%ldG zX-DS5)t}`wC@@RKG*)XvU9_bc!w7RH;+_qZn+7_ykQUjdg-4ATIb?OOII5**dz195 zR1!+W1_mkSv!lT3B_Zu{`vi0qaltsL)&CRS~r<0|`)x7rqaICGlv45?b z6={${n1oK<7w1EoazSRQ-Q6v5j;e`md8?Rmr$~nO#i6L44rSN}x5#iUTqnczuv>;3 zxVMMNUU;tzH!``2$<44^!uc{TfMYUT!_ceXY8eA~jtsZL2W70K9=-?m%kUT+mEky( zVFn+9hh%sJ9+u$qKxL76^Qt0Zibu^m^-xCT39ycq72uv5k^UdU(Qvody557+W=1Rj^+Fn_HJ*Wr2@ zFToxOFO_ivUMAs2887GcT!EV;RAubtK?wFs7?x4P%@X#>cqKCQ^zDh`~E&|or27l;#2orgZj z9x6k2$hZ@C(dWLJV$11hZtLn~ndEdBy<%sMVi)rq0+`~yT}NiR^vTu{CAnJdy4)$$ zVkyH$c3=P2*Lh^TilgOfyoNsaXL2`X+>O^F6pe1+n%*sRO%eQ~W`9yzQjfE7Eg>v8 zql8e4u=s2;NX~@2cBIl;jCMSG<08>$gs*+`n)R#O)-+Q7T5@(di!$Nb4q-`3B&k+V zsZN|X!MaL(LG@y#Sxu{EVN#j-@^e0GA<~uLy3ml5&x-M-B1@WsvazN{jkr(6r%)&L zm6UW%hC~ceAUUYlt$!woBAnyRu7*z+3PPhkCj#FcFD8<+E$lv1G1Z>ly-|MYR?YHj z{uwEV+NV=fqia)I*sK6WBB4m**=46yg!8@QKM;(Rd~!Cf7u6qE4>={FqB|EAL5`sE z^kt?vFHsS4DXe?!-Z4N!?*xvFku;^MiQuSgSl80LYz=*SCx2?!rfnTmqjZ*~-nOy1 zrM~)7G3Bgkd*-`-(M4E@GEkKCm!#w2E^X`T!I)7o48}weq1XG}9qnpd)t`Pfr#UYX zilbJxRP1bu9vMMKsZ?M!S=0JQa)R zkz=G-|CpBtZ-3A@U|Phy2|~rz(Ihx9=}T(PfMaqX>v`uL*L^OMgK8o;aqo?XFp0wA z@xVteMzv>r#l({&r;;EyC7H}9Uj302r-*`F4!wF)`c2B$Gg7IyrTXNs6}!`w7^Hf7 z>{`Y?3o|86&c0Nh9wCl`O5vy;#e75b5?E}9ITQ!Qmw%tD0=jDaY2i-kDSzOg>kvt` z#5X6F#ns-Z7S?NQx_~xyU_gu0aK88C*Y(K{Zlj{2RZR1?o=#jaDr!q`0(GSmE4A&J zbXs~UZBnzR6B&plLbDwwbF33-AhR@IHb(y;sJ?of-+5prY=smcq`?IhTt5Op9@q4G zO9j5((tpE1Z?8ATHyGnRMoW(by}i+BZ!+4Ob^J`SzYpF=^!+rt0c<1z81fwh^jV*D z_2fG`dMu8Pqmbuw9EJQ`o+Wo^rJ>Z5U(nfODd;>3w%nnVJGA@UKo(uT;~*b}Nk0Ek zD0oEwQ4Zk)aEmdaxnO~OYAXoU;5!0^Gmb$KwSUEWJA)L3P98sS44r$x4wI<8%|8q! z3oSnXF_;{*a^nt4iq-cRKTu1s#5JaX(C_90Oi1 z;4>I*#fJ&($@TCN)59!7Mafpldr+vDF77a0%r@{-1b${_4G#YZ%tFXGxN|}Zvoi{L z`~Wl*<{1i8g+f)E|2dd*04DjLg*n48_kSQ*Fr#$$1eNBEDj|H7LPjW6Qp@31f^8H6 z-u9a3!Co^A)ouO^_TF)@zEfa72KO1*GMWlfE7N3b6k-&ZwTBJV$HzkzXQMuGN|ZFl z)+fh9<=Fa^iEoPPpN`{){7f(HoAY8o8j5 zk+jn#gkHF>Gjppx2M-v)QiAc(JA8h9S-}kCK@+lyrtF~hB3f0u&tF3zvUWiekwtv* z**sl+>r5KtYeC6ZqgWM*?!Rv)XMaIXCUum&GRfx!J!wn6U`}!Bz%4~&q+zYnCMSnJLVVSM3 zzsyo*>knm);W0RBC`M?+=e^O#XJ05mKNFeflG?My#gLSX>7W%@vHmzvVW3nS(G^irmP@a7GsXnlsU6yapowdOv#cBLt+>Pl(Iuq+#E8p z&J$(~7aPfxYY>+Z+u=#G*im#LUDL_1^*AISg`P~}8sbDi%7au9LXjP|Q@f*~;(t&} z0|W{H00;;G=14(70il)TcmV(aVFCaEDgXcgZ*pfZYH4(HX_wwb2oIM~KLG`|U`zpz z0TJd%K|#_pnwVe^0000a001bLQN;lpmry?e1(zUB0StdQd3;;tku%ouo}}kXv4US9 z5Q0f;S+-**aS|s4%SRF=zKDFpNrO?OXIqIZ8A)~y+U=D>p+FB>ASneJT3kvBsgpW( z91Sp(N1Iy}I4A%N}L7yWM7I-g}ZITRDHb`s01`%{TWq-+c4w)ju6O0RWZw zYb!ht=d6G59DE=EO$_ko7B~cdVTHehzY^fDtsuZ}1o#^(Sm3t;{H+LoX9XMl#tL)c z?``l8@Q+OKPv+X+{{i^NsNY#g+&?q)Aw&OSg@1*AW9Z)*_j?1+>_}g;xI9cugWT zm~F!xGzpk%gDT7y&~Ak#IEyC*?CLqDaoBJ+(ZCUAy@vc|f{(D!iZad-@mdkD6LGGH z*Nb?Ax%OnOYM{CHbqx@4o`^S!IA6q@L@W~VW)T;NxKPAm0ZXiK8=Mo-Nh6k8(S>CU zm5YB^!IMQIR*G09;$jh(@WN67tF3T5vn;caAVs7V%aQYejU6 zSSMn=hz%k(invC^wIZ%F*Zw+TnMcI+B5p9(o*vYVes@q`Y7((o#1?byZxfhSE4JZn zHr$9_5!+dDhZQ@qOTZV~ZgB5r>b@pch=7;%S)J`uOErG60uY@))U>lLui z3JN-!dn5so*||;IeZzmgilKNgRMG4kB>fg|urKV34@DJ(rRl4yv}wo} z?yK;|qa-b3tKZTzb@G}yA7WdMflX{Nz=(vXh!H5Q5cf)O0!~W!Mf{QkFTtdMUzYGI_>csL;fRD^#jgqYu!N7`qY@m0 zNeTDieuVN%Se|;wXkCB8uj6Bxqmts5fZvetaePdIGjLXdH{l%#pTH+2{3afd;8l2y zac@cZ6n;y5{#?S>@ePEvVI^M9@hFc4 z2h07Dfq|iL(C>>!qUC&)$`gr8O991SKFsH%oVIUCc|hs)4Ta)u(MWGFM6oaq_<~^p z-<0qz`~`od=AgDv79z_-Wx)VNaY;ktqRL(dsx+YEs%jrE#a6+_%84489at?P3lz_-k}7N8DXyP@V2)$CrHv#G#CmfQ3=n& z7-!>qq|3#?`x5>N#wbf%w3~*`wUhwJP`zgjnR0)dI#|e}#buQ%RxC%z?oYtlRxZ9o z9aC%ejAC|@ z#)=~E&S2cnL1V@um9a=Kd_@V~qU4oN;o0IzQ*z<6JceMDgEZIz%LCuEO zN36<5t@ab z$q?cZwU0n3F5Z&CunagdH7zz|>fjK$w>*D?V;Ll75@;ab*+x&sReq+dZ(cLiz!el{ z^u<1NTj^3E<|$4K%@QlKbt%&lfnq{~zn}lcxF+*^Xfv00>Wa8(P07&$;?eO5d(yEa zyx$jVQFg`E4JJXxusTV1De1aI_ST0Y{vBFQIJ9I-wq>zqwv;p#Pfu5pECl&=(b|7| zfs~_@B`Vxlcscg@X-*I-eVbJpk&Nl|g@!mEl{<%gTuaP^+n`YTn1^|VFokK7Qc{$h z%!JpROgaC>#TR{7O+6&0b@CTWFq1z-H!7c_!9i*m5L}n_2GBZ_!%=^)c>W(^vi$sarP9Q8o5@lUdF8+Z%>n_rDM}#x^Qqa{|D#o z>GHHRw03zJRdJz;6;M=dUMh@AxIvw8$s$!`XM=Xfr!MjX^`cvnLEy@?7X5NKxErMk zsFu6rkxG9iA>1@mW+=E#Lo@}qt!IFaEuWf5xHs506ji$guSUx?Dw8ArRN8-vOq`^8 z$<^>_d!H!6%P)9iUGgbvB{6l8NJ#O8GrvJM^N}}odKwyAwbXF8G;D13&=q2iDg%*W zGR3r0OV;Z$C#%}wkgBrFJQ@jlbHAS2Tx#q4xo_t5oRz%KcuzgyItm@!2+zUu03d+O z&pU!-Zei4sx)^nwQ0H^_u?K$$#|h4Y7idne#N_-%n!l8?{zJ$in4Zb>{V`$kX+#=L z&ZB_eSO09kkDGjbxsVJn(J0L+b(JB?#&O7+qI!h{5*79lO&*O~Wb=t?VG<184&f*m zYea|eINU3nYb>(mM77mWZFATh)&mfeEe>1d3TYHft}!r|KTGnKs^))zYK*MI3noG6 zE;|ZhP0k2hHwl*RGTC?(tUS%01Y5UVIttk*<(xuEHp-@P$f?Pdb5B9GEXuhPkedZv zdu=#!{{9gdPSw?zL04r`mn2JMurvmFE36}MV~Sc!0pv3-Rkx+kn$S&*nr=zcEsGN{ z3*m8S%$oBgP7^EZWUE2Iv}vYh}?e0oU=?%^id5 zOEtU}bZrlR0v38>|5V?iU0|R&K*;$L2>T$%`638p`??Wu5axz`U?r<*CKSNDbs4Aus}9C%vCjlERcWx8qq0>V{r2rEZ7HT zSva)UOyN9>hg56Wil6CL%mO3XLHX)jh~uzuir_UZN1%xa%rw?I$Dw!vN)TA{1kj6g zAGjDQMRM6yW0Fl1Ko8S}kL-th*;F&wgQ1URbieoU04nK%ATF5HXEu1hu|%k8lTeLX-ab?8J9JQxYV?iO;4GH$&{G@DsvRBRiwX^r>Y;EGiOH5 zA5B=F6nb+)sEZv+vf4_^5|*DSO&kx>d?>k{@94&tlkt3b=j*3w0&Y<$n@UfEg*ZpR zO3_%I!ux+qcvt6@^>oRmL~!biOA=&f;H*yefu7iJIZuNr>!8zqs~TRDfxuc7H0Ox~ zyEU|#z&Z^S2&`AZ?1cr;K{jdEdQv-1>Gxa{6BXzy~- z-gG=T2Ay3ldshOnNk?=uf`aX`Z)T`eW!s`sl}=|X&BXRGb!iN?Y8xQJuM#(u;Vjso zfX3GhFM#VX6i&kJWLwW+xK_{D!%&dK%{JKY7zLmGR^xG@+dxs@I1bxJ!M~r=A+QgY z>6CvPoOZ?DtCd!#z0cmSfr35A+;vV&;mqADpR!YU|fAFF3+5fT%#gIdx(*> zsgzmv0mg;XY`qCMRbTfw&UG($GSBlYGZ~5!k$D~qAu431jD;(q%t<-sA(;uGD^n;# zrl_RMB$Xi~MWo+xcc1t3zTf}9=jnOYbM~6o+H3E#_I8gSeK&O`W23iV{O2Rg?K$Oq z@h7^G%da!$6F3>nGh(bn&MUIEODDS1TCD1QYKiyb9rMd`v=dPJVRGb)mrT45j}Z#41<&9x`>Ig#%lz1UaYonrJ&CSM7vh)r9oCrpP|Yai7J zVjTSX+GXIj4*p!ec)-)^aUFK9WxvV2r26+~MMFpSg-iN3ELk%>o>wp4_dD6)TPEA9HDrZn zRqcz%jH7o7j!mSj!XM1Bc&z-W!u|3kj|Hv

pPwtT?XLOcx8qFxQ2>0!>9D`mg%f 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%0D=h`FOez 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 delta 85082 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 used by this instance for logging output. */ private final Logger logger = Logger.getLogger(SingleWindowContainer.class); /** * The tabbed pane, containing all conversations. */ - private ConversationTabbedPane tabbedPane = null; + private final ConversationTabbedPane tabbedPane; /** * The count of current conversations. @@ -52,8 +53,8 @@ public class SingleWindowContainer /** * Chat change listeners. */ - private final java.util.List chatChangeListeners = - new Vector(); + private final List chatChangeListeners + = new Vector(); /** * The contact photo panel. @@ -377,19 +378,15 @@ private void addConversationTab(String name, { Component currentConversation = getCurrentConversation(); - tabbedPane.addTab( - name, - icon, - conversation); - + tabbedPane.addTab(name, icon, conversation); tabbedPane.getParent().validate(); - // If not specified explicitly, when added to the tabbed pane, - // the first chat panel should rest the selected component. - if (currentConversation != null && !isSelected) - tabbedPane.setSelectedComponent(currentConversation); - else - tabbedPane.setSelectedComponent(conversation); + // If not specified explicitly, when added to the tabbed pane, the first + // chat panel should rest the selected component. + tabbedPane.setSelectedComponent( + (currentConversation != null && !isSelected) + ? currentConversation + : conversation); } /** @@ -408,22 +405,19 @@ private void highlightTab(ChatPanel chatPanel) private Component createToolbar() { - JPanel northPanel = new TransparentPanel(new BorderLayout()); - mainToolBar = new MainToolBar(this); // The toolbar would be only visible when a chat is opened. mainToolBar.setVisible(false); - boolean chatToolbarVisible = ConfigurationManager.isChatToolbarVisible(); - northPanel.setVisible(chatToolbarVisible); + JPanel northPanel = new TransparentPanel(new BorderLayout()); northPanel.setBorder(BorderFactory.createEmptyBorder(3, 0, 3, 0)); + northPanel.setPreferredSize(new Dimension(500, 35)); + northPanel.setVisible(ConfigurationManager.isChatToolbarVisible()); northPanel.add(mainToolBar, BorderLayout.EAST); northPanel.add(contactPhotoPanel, BorderLayout.WEST); - northPanel.setPreferredSize(new Dimension(500, 35)); - return northPanel; } diff --git a/src/net/java/sip/communicator/impl/gui/main/call/AbstractCallToggleButton.java b/src/net/java/sip/communicator/impl/gui/main/call/AbstractCallToggleButton.java index 0c67e0b72..3915004bd 100644 --- a/src/net/java/sip/communicator/impl/gui/main/call/AbstractCallToggleButton.java +++ b/src/net/java/sip/communicator/impl/gui/main/call/AbstractCallToggleButton.java @@ -181,14 +181,10 @@ private class CallToggleButtonModel implements ActionListener, Runnable { - private final Call call; - private Thread runner; public CallToggleButtonModel(Call call) { - this.call = call; - addActionListener(this); } diff --git a/src/net/java/sip/communicator/impl/gui/main/call/CallDialog.java b/src/net/java/sip/communicator/impl/gui/main/call/CallDialog.java index 47158057b..1aef6778e 100644 --- a/src/net/java/sip/communicator/impl/gui/main/call/CallDialog.java +++ b/src/net/java/sip/communicator/impl/gui/main/call/CallDialog.java @@ -53,13 +53,13 @@ public CallDialog() public Dimension getMinimumSize() { Dimension minSize = super.getMinimumSize(); + if(callPanel != null) { int minButtonWidth = callPanel.getMinimumButtonWidth(); + if(minButtonWidth > minSize.getWidth()) - { - return new Dimension(minButtonWidth, 300); - } + minSize = new Dimension(minButtonWidth, 300); } return minSize; @@ -108,19 +108,19 @@ public void close(CallPanel callPanel) public void closeWait(CallPanel callPanel) { if (this.callPanel.equals(callPanel)) - { disposeWait(); - } } /** - * Hang ups the current call on close. - * @param isEscaped indicates if the window was close by pressing the escape - * button + * {@inheritDoc} + * + * Hang ups the call/telephony conference depicted by this + * CallDialog on close. */ - protected void close(boolean isEscaped) + @Override + protected void close(boolean escape) { - callPanel.actionPerformedOnHangupButton(isEscaped); + callPanel.actionPerformedOnHangupButton(escape); } /** @@ -132,10 +132,7 @@ protected void close(boolean isEscaped) */ public boolean isCallVisible(CallPanel callPanel) { - if (this.callPanel.equals(callPanel)) - return isVisible(); - - return false; + return this.callPanel.equals(callPanel) ? isVisible() : false; } /** diff --git a/src/net/java/sip/communicator/impl/gui/main/call/InputVolumeControlButton.java b/src/net/java/sip/communicator/impl/gui/main/call/InputVolumeControlButton.java index d16154817..6d8a5ef7c 100644 --- a/src/net/java/sip/communicator/impl/gui/main/call/InputVolumeControlButton.java +++ b/src/net/java/sip/communicator/impl/gui/main/call/InputVolumeControlButton.java @@ -36,11 +36,6 @@ public class InputVolumeControlButton implements VolumeChangeListener, Runnable { - /** - * The Call that this button controls. - */ - private final Call call; - /** * Mutes the call in other thread. */ @@ -134,7 +129,6 @@ public InputVolumeControlButton(Call call, pressedIconImageID, "service.gui.MUTE_BUTTON_TOOL_TIP"); - this.call = call; this.fullScreen = fullScreen; this.mute = selected; diff --git a/src/net/java/sip/communicator/impl/gui/main/call/PreCallDialog.java b/src/net/java/sip/communicator/impl/gui/main/call/PreCallDialog.java index 8fda98567..3498dee5d 100644 --- a/src/net/java/sip/communicator/impl/gui/main/call/PreCallDialog.java +++ b/src/net/java/sip/communicator/impl/gui/main/call/PreCallDialog.java @@ -29,8 +29,8 @@ * @author Yana Stamcheva */ public abstract class PreCallDialog - implements ActionListener, - Skinnable + implements ActionListener, + Skinnable { /** * The call button name. @@ -101,20 +101,20 @@ public abstract class PreCallDialog /** * The window handling received calls. */ - private Window preCallWindow; + private final Window preCallWindow; /** * If it is a video call. */ - private boolean video = false; + private final boolean video; /** * If the call should be answered in an existing call. */ - private boolean mergeCall = false; + private final boolean mergeCall; /** - * Creates an instanceof PreCallDialog by specifying the dialog + * Creates an instance of PreCallDialog by specifying the dialog * title. * * @param title the title of the dialog @@ -127,7 +127,7 @@ public PreCallDialog(String title, boolean video, boolean existingCall) } /** - * Creates an instanceof PreCallDialog by specifying the dialog + * Creates an instance of PreCallDialog by specifying the dialog * title and the text to show. * * @param title the title of the dialog @@ -140,7 +140,7 @@ public PreCallDialog(String title, String text, Object[] accounts) } /** - * Creates an instanceof PreCallDialog by specifying the dialog + * Creates an instance of PreCallDialog by specifying the dialog * title and the text to show. * * @param title the title of the dialog @@ -154,18 +154,24 @@ public PreCallDialog(String title, String text, Object[] accounts, { preCallWindow = createPreCallWindow(title, text, accounts); + if (video) + { + // Make sure there is a VIDEO MediaDevice and it is capable of + // capture/sending + MediaDevice mediaDevice + = GuiActivator.getMediaService().getDefaultDevice( + MediaType.VIDEO, + MediaUseCase.CALL); + + if ((mediaDevice == null) + || !mediaDevice.getDirection().allowsSending()) + video = false; + } + this.video = video; this.mergeCall = existingCall; - MediaDevice mediaDevice - = GuiActivator.getMediaService().getDefaultDevice( - MediaType.VIDEO, MediaUseCase.CALL); - - // check whether we have device enabled for capturing(sending) - if (mediaDevice != null) - this.video = video && mediaDevice.getDirection().allowsSending(); - - this.initComponents(); + initComponents(); } /** @@ -199,8 +205,9 @@ private Window createPreCallWindow( String title, if (accounts != null) { - accountsCombo = HudWidgetFactory - .createHudComboBox(new DefaultComboBoxModel(accounts)); + accountsCombo + = HudWidgetFactory.createHudComboBox( + new DefaultComboBoxModel(accounts)); } } else @@ -216,9 +223,7 @@ private Window createPreCallWindow( String title, callLabelImage = new JLabel(); if (accounts != null) - { accountsCombo = new JComboBox(accounts); - } } if (text != null) diff --git a/src/net/java/sip/communicator/impl/gui/main/call/ReceivedCallDialog.java b/src/net/java/sip/communicator/impl/gui/main/call/ReceivedCallDialog.java index 071acd9b9..06f329dd9 100644 --- a/src/net/java/sip/communicator/impl/gui/main/call/ReceivedCallDialog.java +++ b/src/net/java/sip/communicator/impl/gui/main/call/ReceivedCallDialog.java @@ -29,9 +29,9 @@ */ public class ReceivedCallDialog extends PreCallDialog - implements ActionListener, - CallListener, - Skinnable + implements ActionListener, + CallListener, + Skinnable { /** * The incoming call to render. @@ -57,11 +57,11 @@ public ReceivedCallDialog(Call call, boolean video, boolean existingCall) this.incomingCall = call; - OperationSetBasicTelephony telephonyOpSet - = call.getProtocolProvider() - .getOperationSet(OperationSetBasicTelephony.class); + OperationSetBasicTelephony basicTelephony + = call.getProtocolProvider().getOperationSet( + OperationSetBasicTelephony.class); - telephonyOpSet.addCallListener(this); + basicTelephony.addCallListener(this); initCallLabel(getCallLabels()); } @@ -150,16 +150,34 @@ public void run() } /** - * When call is remotely ended we close this dialog. - * @param event the CallEvent that has been triggered + * {@inheritDoc} + * + * When the Call depicted by this dialog is (remotely) ended, + * close/dispose of this dialog. + * + * @param event a CallEvent which specifies the Call that + * has ended */ public void callEnded(CallEvent event) { - Call sourceCall = event.getSourceCall(); + if (event.getSourceCall().equals(incomingCall)) + dispose(); + } - if (sourceCall.equals(incomingCall)) + @Override + public void dispose() + { + try { - dispose(); + OperationSetBasicTelephony basicTelephony + = incomingCall.getProtocolProvider().getOperationSet( + OperationSetBasicTelephony.class); + + basicTelephony.removeCallListener(this); + } + finally + { + super.dispose(); } } @@ -227,12 +245,11 @@ public void hangupButtonPressed() private String getPeerDisplayName(CallPeer peer) { String displayName = peer.getDisplayName(); - String peerAddress = peer.getAddress(); - - if(StringUtils.isNullOrEmpty(displayName, true)) - return peerAddress; - return displayName; + return + StringUtils.isNullOrEmpty(displayName, true) + ? peer.getAddress() + : displayName; } /** @@ -243,15 +260,16 @@ private String getPeerDisplayName(CallPeer peer) */ private String getPeerDisplayAddress(CallPeer peer) { - String displayName = peer.getDisplayName(); String peerAddress = peer.getAddress(); if(StringUtils.isNullOrEmpty(peerAddress, true)) return null; - - if(peerAddress.equalsIgnoreCase(displayName)) - return null; - - return peerAddress; + else + { + return + peerAddress.equalsIgnoreCase(peer.getDisplayName()) + ? null + : peerAddress; + } } } diff --git a/src/net/java/sip/communicator/impl/gui/main/call/RecordButton.java b/src/net/java/sip/communicator/impl/gui/main/call/RecordButton.java index 12289ced4..e0b7ac148 100644 --- a/src/net/java/sip/communicator/impl/gui/main/call/RecordButton.java +++ b/src/net/java/sip/communicator/impl/gui/main/call/RecordButton.java @@ -94,13 +94,14 @@ public RecordButton(Call call) */ public RecordButton(Call call, boolean fullScreen, boolean selected) { - super( call, - fullScreen, - true, - selected, - ImageLoader.RECORD_BUTTON, - ImageLoader.RECORD_BUTTON_PRESSED, - null); + super( + call, + fullScreen, + true, + selected, + ImageLoader.RECORD_BUTTON, + ImageLoader.RECORD_BUTTON_PRESSED, + null); String toolTip = resources.getI18NString("service.gui.RECORD_BUTTON_TOOL_TIP"); diff --git a/src/net/java/sip/communicator/impl/gui/main/call/conference/ConferenceCallPanel.java b/src/net/java/sip/communicator/impl/gui/main/call/conference/ConferenceCallPanel.java index f2f30ff75..f886558bc 100644 --- a/src/net/java/sip/communicator/impl/gui/main/call/conference/ConferenceCallPanel.java +++ b/src/net/java/sip/communicator/impl/gui/main/call/conference/ConferenceCallPanel.java @@ -47,7 +47,7 @@ public class ConferenceCallPanel /** * The conference call. */ - private final Call call; + protected final Call call; /** * The scroll pane. diff --git a/src/net/java/sip/communicator/impl/gui/main/call/conference/VideoConferenceCallPanel.java b/src/net/java/sip/communicator/impl/gui/main/call/conference/VideoConferenceCallPanel.java index 0b19e7aa9..071905bc4 100644 --- a/src/net/java/sip/communicator/impl/gui/main/call/conference/VideoConferenceCallPanel.java +++ b/src/net/java/sip/communicator/impl/gui/main/call/conference/VideoConferenceCallPanel.java @@ -23,16 +23,12 @@ public class VideoConferenceCallPanel extends ConferenceCallPanel { - /** - * The contained call. - */ - private final Call call; - /** * Maps a CallPeer to its renderer. */ protected final Hashtable - callPeerPanels = new Hashtable(); + callPeerPanels + = new Hashtable(); /** * A mapping of a member and its renderer. @@ -41,8 +37,7 @@ public class VideoConferenceCallPanel conferenceMembersPanels = new Hashtable(); - public VideoConferenceCallPanel(CallPanel callPanel, - Call call) + public VideoConferenceCallPanel(CallPanel callPanel, Call call) { this(callPanel, call, null); } @@ -59,8 +54,6 @@ public VideoConferenceCallPanel(CallPanel callPanel, { super(callPanel, call, videoHandler, true); - this.call = call; - addVideoContainer(); getVideoHandler().setLocalVideoToolbar(createLocalVideoToolBar()); @@ -103,13 +96,13 @@ public CallPeerRenderer getCallPeerRenderer(CallPeer callPeer) public void conferenceMemberAdded( CallPeer callPeer, ConferenceMember member) { - // It's already there. - if (conferenceMembersPanels.containsKey(member)) - return; - - conferenceMemberAdded(callPeer, member, false); + // Only if it isn't there yet. + if (!conferenceMembersPanels.containsKey(member)) + { + conferenceMemberAdded(callPeer, member, false); - getVideoHandler().handleVideoEvent(call, null); + getVideoHandler().handleVideoEvent(call, null); + } } /** @@ -124,7 +117,7 @@ public void conferenceMemberAdded( CallPeer callPeer, return; if (CallManager.addressesAreEqual( - member.getAddress(), callPeer.getAddress())) + member.getAddress(), callPeer.getAddress())) { return; } diff --git a/src/net/java/sip/communicator/impl/gui/main/chat/ChatConversationPanel.java b/src/net/java/sip/communicator/impl/gui/main/chat/ChatConversationPanel.java index 7acf8696b..922c93985 100755 --- a/src/net/java/sip/communicator/impl/gui/main/chat/ChatConversationPanel.java +++ b/src/net/java/sip/communicator/impl/gui/main/chat/ChatConversationPanel.java @@ -1830,7 +1830,6 @@ private void replaceMessageDivID( Element messageDivElement, document.getLength()); String msgDivString = msgDivWriter.toString(); - String newMsgDivString = msgDivString.replaceFirst( ChatHtmlUtils.MESSAGE_DIV_ID + lastMessageUID, @@ -1855,10 +1854,9 @@ private void replaceMessageDivID( Element messageDivElement, else msgEndIndex = newMsgDivString.lastIndexOf(""); - document.setOuterHTML(messageDivElement, - newMsgDivString.substring( - msgStartIndex, - msgEndIndex + 6)); + document.setOuterHTML( + messageDivElement, + newMsgDivString.substring(msgStartIndex, msgEndIndex + 6)); } catch (IOException e) { diff --git a/src/net/java/sip/communicator/impl/gui/main/contactlist/contactsource/ProtocolContactSourceServiceImpl.java b/src/net/java/sip/communicator/impl/gui/main/contactlist/contactsource/ProtocolContactSourceServiceImpl.java index eed890668..77624d069 100644 --- a/src/net/java/sip/communicator/impl/gui/main/contactlist/contactsource/ProtocolContactSourceServiceImpl.java +++ b/src/net/java/sip/communicator/impl/gui/main/contactlist/contactsource/ProtocolContactSourceServiceImpl.java @@ -106,7 +106,7 @@ private class ProtocolCQuery { private int contactCount; - private String queryString; + private final String queryString; public ProtocolCQuery(String queryString, int contactCount) { @@ -118,11 +118,12 @@ public ProtocolCQuery(String queryString, int contactCount) this.contactCount = contactCount; } - protected String normalizePhoneNumber(String phoneNumber) - { - return phoneNumber; - } - + /** + * {@inheritDoc} + * + * Always returns false. + */ + @Override protected boolean phoneNumberMatches(String phoneNumber) { return false; @@ -130,8 +131,9 @@ protected boolean phoneNumberMatches(String phoneNumber) public void run() { - Iterator contactListIter = metaContactListService - .findAllMetaContactsForProvider(protocolProvider); + Iterator contactListIter + = metaContactListService.findAllMetaContactsForProvider( + protocolProvider); while (contactListIter.hasNext()) { @@ -166,39 +168,40 @@ private void addResultContact(MetaContact metaContact) break; Contact contact = contacts.next(); + String contactAddress = contact.getAddress(); + String contactDisplayName = contact.getDisplayName(); if (queryString == null || queryString.length() <= 0 || metaContact.getDisplayName().startsWith(queryString) - || contact.getAddress().startsWith(queryString) - || contact.getDisplayName().startsWith(queryString)) + || contactAddress.startsWith(queryString) + || contactDisplayName.startsWith(queryString)) { - ArrayList contactDetails - = new ArrayList(); - ContactDetail contactDetail - = new ContactDetail(contact.getAddress()); - - ArrayList> - supportedOpSets + = new ContactDetail(contactAddress); + List> supportedOpSets = new ArrayList>(); + supportedOpSets.add(opSetClass); contactDetail.setSupportedOpSets(supportedOpSets); + List contactDetails + = new ArrayList(); + contactDetails.add(contactDetail); GenericSourceContact sourceContact = new GenericSourceContact( - ProtocolContactSourceServiceImpl.this, - contact.getDisplayName(), - contactDetails); + ProtocolContactSourceServiceImpl.this, + contactDisplayName, + contactDetails); - if (!contact.getAddress().equals(contact.getDisplayName())) - sourceContact.setDisplayDetails(contact.getAddress()); + if (!contactAddress.equals(contactDisplayName)) + sourceContact.setDisplayDetails(contactAddress); sourceContact.setImage(metaContact.getAvatar()); - sourceContact - .setPresenceStatus(contact.getPresenceStatus()); + sourceContact.setPresenceStatus( + contact.getPresenceStatus()); addQueryResult(sourceContact); } diff --git a/src/net/java/sip/communicator/impl/libjitsi/LibJitsiActivator.java b/src/net/java/sip/communicator/impl/libjitsi/LibJitsiActivator.java index bccc1350b..a2b21cfad 100644 --- a/src/net/java/sip/communicator/impl/libjitsi/LibJitsiActivator.java +++ b/src/net/java/sip/communicator/impl/libjitsi/LibJitsiActivator.java @@ -6,6 +6,8 @@ */ package net.java.sip.communicator.impl.libjitsi; +import java.lang.reflect.*; + import org.jitsi.service.libjitsi.*; import org.osgi.framework.*; @@ -15,7 +17,39 @@ public class LibJitsiActivator public void start(BundleContext bundleContext) throws Exception { - LibJitsi.start(); + /* + * XXX To start/initialize the libjitsi library, simply call + * LibJitsi#start(). The following is a temporary workaround for the + * benefit of the Jitsi VideoBridge project (which uses Jitsi's libjitsi + * bundle and runs on an incomplete OSGi implementation) and not the + * Jitsi project. + */ + Method start; + + try + { + start = LibJitsi.class.getDeclaredMethod("start", Object.class); + if (Modifier.isStatic(start.getModifiers())) + { + start.setAccessible(true); + if (!start.isAccessible()) + start = null; + } + else + start = null; + } + catch (NoSuchMethodException nsme) + { + start = null; + } + catch (SecurityException se) + { + start = null; + } + if (start == null) + LibJitsi.start(); + else + start.invoke(null, bundleContext); } public void stop(BundleContext bundleContext) diff --git a/src/net/java/sip/communicator/impl/packetlogging/PacketLoggingActivator.java b/src/net/java/sip/communicator/impl/packetlogging/PacketLoggingActivator.java index 3f65c57d6..f025a2d05 100644 --- a/src/net/java/sip/communicator/impl/packetlogging/PacketLoggingActivator.java +++ b/src/net/java/sip/communicator/impl/packetlogging/PacketLoggingActivator.java @@ -26,8 +26,8 @@ public class PacketLoggingActivator /** * Our logging. */ - private static Logger logger = - Logger.getLogger(PacketLoggingActivator.class); + private static Logger logger + = Logger.getLogger(PacketLoggingActivator.class); /** * The OSGI bundle context. @@ -62,20 +62,32 @@ public class PacketLoggingActivator * @throws Exception if starting the PacketLoggingServiceImpl. */ public void start(BundleContext bundleContext) - throws - Exception + throws Exception { - PacketLoggingActivator.bundleContext = bundleContext; - - packetLoggingService = new PacketLoggingServiceImpl(); + /* + * PacketLoggingServiceImpl requires a FileAccessService implementation. + * Ideally, we'd be listening to the bundleContext and will be making + * the PacketLoggingService implementation available in accord with the + * availability of a FileAccessService implementation. Unfortunately, + * the real world is far from ideal. + */ + fileAccessService + = ServiceUtils.getService(bundleContext, FileAccessService.class); + if (fileAccessService != null) + { + PacketLoggingActivator.bundleContext = bundleContext; - packetLoggingService.start(); + packetLoggingService = new PacketLoggingServiceImpl(); + packetLoggingService.start(); - bundleContext.registerService(PacketLoggingService.class.getName(), - packetLoggingService, null); + bundleContext.registerService( + PacketLoggingService.class.getName(), + packetLoggingService, + null); - if (logger.isInfoEnabled()) - logger.info("Packet Logging Service ...[REGISTERED]"); + if (logger.isInfoEnabled()) + logger.info("Packet Logging Service ...[REGISTERED]"); + } } /** @@ -84,12 +96,15 @@ public void start(BundleContext bundleContext) * @param bundleContext the OSGI bundle context */ public void stop(BundleContext bundleContext) - throws - Exception + throws Exception { if(packetLoggingService != null) packetLoggingService.stop(); + configurationService = null; + fileAccessService = null; + packetLoggingService = null; + if (logger.isInfoEnabled()) logger.info("Packet Logging Service ...[STOPPED]"); } @@ -121,13 +136,6 @@ public static ConfigurationService getConfigurationService() */ public static FileAccessService getFileAccessService() { - if (fileAccessService == null) - { - fileAccessService - = ServiceUtils.getService( - bundleContext, - FileAccessService.class); - } return fileAccessService; } } diff --git a/src/net/java/sip/communicator/impl/packetlogging/PacketLoggingServiceImpl.java b/src/net/java/sip/communicator/impl/packetlogging/PacketLoggingServiceImpl.java index d063d8c91..9529ac446 100644 --- a/src/net/java/sip/communicator/impl/packetlogging/PacketLoggingServiceImpl.java +++ b/src/net/java/sip/communicator/impl/packetlogging/PacketLoggingServiceImpl.java @@ -159,13 +159,18 @@ public void start() private void getFileNames() throws Exception { - files = new File[getConfiguration().getLogfileCount()]; - for(int i = 0; i < getConfiguration().getLogfileCount(); i++) + int fileCount = getConfiguration().getLogfileCount(); + + files = new File[fileCount]; + for(int i = 0; i < fileCount; i++) { - files[i] = PacketLoggingActivator.getFileAccessService() - .getPrivatePersistentFile( - PacketLoggingActivator.LOGGING_DIR_NAME - + File.separator + "jitsi" + i + ".pcap"); + files[i] + = PacketLoggingActivator.getFileAccessService().getPrivatePersistentFile( + PacketLoggingActivator.LOGGING_DIR_NAME + + File.separator + + "jitsi" + + i + + ".pcap"); } } @@ -183,16 +188,15 @@ private void rotateFiles() outputStream.close(); } - for (int i = getConfiguration().getLogfileCount() -2; i >= 0; i--) + for (int i = getConfiguration().getLogfileCount() - 2; i >= 0; i--) { File f1 = files[i]; File f2 = files[i+1]; + if (f1.exists()) { if (f2.exists()) - { f2.delete(); - } f1.renameTo(f2); } } @@ -220,7 +224,10 @@ public void stop() { e.printStackTrace(); } - outputStream = null; + finally + { + outputStream = null; + } } } @@ -281,31 +288,40 @@ public boolean isLoggingEnabled() } /** - * Checks is logging globally enabled for and is it currently - * available fo the given service. + * Checks is logging globally enabled for and is it currently available for + * the given service. * * @param protocol that is checked. * @return is logging enabled. */ public boolean isLoggingEnabled(ProtocolName protocol) { - switch(protocol) + PacketLoggingConfiguration cfg = getConfiguration(); + + if (cfg.isGlobalLoggingEnabled()) { - case SIP: - return getConfiguration().isGlobalLoggingEnabled() - && getConfiguration().isSipLoggingEnabled(); - case JABBER: - return getConfiguration().isGlobalLoggingEnabled() - && getConfiguration().isJabberLoggingEnabled(); - case RTP: - return getConfiguration().isGlobalLoggingEnabled() - && getConfiguration().isRTPLoggingEnabled(); - case ICE4J: - return getConfiguration().isGlobalLoggingEnabled() - && getConfiguration().isIce4JLoggingEnabled(); - default: - return false; + switch(protocol) + { + case SIP: + return cfg.isSipLoggingEnabled(); + case JABBER: + return cfg.isJabberLoggingEnabled(); + case RTP: + return cfg.isRTPLoggingEnabled(); + case ICE4J: + return cfg.isIce4JLoggingEnabled(); + default: + /* + * It may seem like it was unnecessary to invoke + * getConfiguration and isGlobalLoggingEnabled prior to + * checking that the specified protocol is supported but, + * actually, there are no other ProtocolName values. + */ + return false; + } } + else + return false; } /** @@ -539,8 +555,9 @@ private void savePacket(Packet packet) rotateFiles();// this one opens the file for write } - if(getConfiguration().getLimit() > 0 - && written > getConfiguration().getLimit()) + long limit = getConfiguration().getLimit(); + + if((limit > 0) && (written > limit)) rotateFiles(); addInt(tsSec); @@ -739,7 +756,7 @@ private class SaverThread /** * List of packets queued to be written in the file. */ - private List packetsToDump = new ArrayList(); + private final List pktsToSave = new ArrayList(); /** * Sends instant messages in separate thread so we don't block @@ -748,14 +765,13 @@ private class SaverThread public void run() { stopped = false; - while(!stopped) { - Packet pktToSave = null; + Packet pktToSave; synchronized(this) { - if(packetsToDump.isEmpty()) + if(pktsToSave.isEmpty()) { try { @@ -764,10 +780,10 @@ public void run() catch (InterruptedException iex) { } + continue; } - if(!packetsToDump.isEmpty()) - pktToSave = packetsToDump.remove(0); + pktToSave = pktsToSave.remove(0); } if(pktToSave != null) @@ -778,7 +794,14 @@ public void run() } catch(Throwable t) { - logger.error("Error writing packet to file", t); + /* + * XXX ThreadDeath must be rethrown; otherwise, the + * related Thread will not die. + */ + if (t instanceof ThreadDeath) + throw (ThreadDeath) t; + else + logger.error("Error writing packet to file", t); } } } @@ -799,7 +822,7 @@ public synchronized void stopRunning() */ public synchronized void queuePacket(Packet packet) { - packetsToDump.add(packet); + pktsToSave.add(packet); notifyAll(); } } diff --git a/src/net/java/sip/communicator/plugin/generalconfig/ConfigurationManager.java b/src/net/java/sip/communicator/plugin/generalconfig/ConfigurationManager.java index dfa19ec23..847a13a9c 100644 --- a/src/net/java/sip/communicator/plugin/generalconfig/ConfigurationManager.java +++ b/src/net/java/sip/communicator/plugin/generalconfig/ConfigurationManager.java @@ -250,16 +250,16 @@ public static void loadGuiConfigurations() "impl.gui.NORMALIZE_PHONE_NUMBER"; isNormalizePhoneNumber - = GeneralConfigPluginActivator.getConfigurationService() - .getBoolean(normalizePhoneNumberProperty, true); + = configService.getBoolean(normalizePhoneNumberProperty, true); // Load the "ACCEPT_PHONE_NUMBER_WITH_ALPHA_CHARS" property. String acceptPhoneNumberWithAlphaCharsProperty = "impl.gui.ACCEPT_PHONE_NUMBER_WITH_ALPHA_CHARS"; acceptPhoneNumberWithAlphaChars - = GeneralConfigPluginActivator.getConfigurationService() - .getBoolean(acceptPhoneNumberWithAlphaCharsProperty, true); + = configService.getBoolean( + acceptPhoneNumberWithAlphaCharsProperty, + true); } /** diff --git a/src/net/java/sip/communicator/plugin/loggingutils/LoggingConfigForm.java b/src/net/java/sip/communicator/plugin/loggingutils/LoggingConfigForm.java index 8f2221688..e5db2e6bd 100644 --- a/src/net/java/sip/communicator/plugin/loggingutils/LoggingConfigForm.java +++ b/src/net/java/sip/communicator/plugin/loggingutils/LoggingConfigForm.java @@ -273,24 +273,18 @@ static String getUploadLocation() */ private void loadValues() { - PacketLoggingService packetLogging = - LoggingUtilsActivator.getPacketLoggingService(); - - enableCheckBox.setSelected( - packetLogging.getConfiguration().isGlobalLoggingEnabled()); - - sipProtocolCheckBox.setSelected( - packetLogging.getConfiguration().isSipLoggingEnabled()); - jabberProtocolCheckBox.setSelected( - packetLogging.getConfiguration().isJabberLoggingEnabled()); - rtpProtocolCheckBox.setSelected( - packetLogging.getConfiguration().isRTPLoggingEnabled()); - ice4jProtocolCheckBox.setSelected( - packetLogging.getConfiguration().isIce4JLoggingEnabled()); - fileCountField.setText(String.valueOf( - packetLogging.getConfiguration().getLogfileCount())); - fileSizeField.setText(String.valueOf( - packetLogging.getConfiguration().getLimit()/1000)); + PacketLoggingService packetLogging + = LoggingUtilsActivator.getPacketLoggingService(); + PacketLoggingConfiguration cfg = packetLogging.getConfiguration(); + + enableCheckBox.setSelected(cfg.isGlobalLoggingEnabled()); + + sipProtocolCheckBox.setSelected(cfg.isSipLoggingEnabled()); + jabberProtocolCheckBox.setSelected(cfg.isJabberLoggingEnabled()); + rtpProtocolCheckBox.setSelected(cfg.isRTPLoggingEnabled()); + ice4jProtocolCheckBox.setSelected(cfg.isIce4JLoggingEnabled()); + fileCountField.setText(String.valueOf(cfg.getLogfileCount())); + fileSizeField.setText(String.valueOf(cfg.getLimit() / 1000)); updateButtonsState(); } diff --git a/src/net/java/sip/communicator/util/swing/SIPCommFrame.java b/src/net/java/sip/communicator/util/swing/SIPCommFrame.java index 158760ee4..0d68b39dc 100644 --- a/src/net/java/sip/communicator/util/swing/SIPCommFrame.java +++ b/src/net/java/sip/communicator/util/swing/SIPCommFrame.java @@ -811,13 +811,13 @@ private void internalPaintComponent(Graphics g) } /** - * All functions implemented in this method will be invoked when user - * presses the Escape key. - * @param isEscaped indicates if this frame has been closed by pressing the - * Esc key + * Notifies this instance that it has been requested to close. The default + * SIPCommFrame implementation does nothing. + * + * @param escape true if the request to close this instance is in + * response of a press on the Escape key; otherwise, false */ - protected void close(boolean isEscaped) + protected void close(boolean escape) { - } }