From fce2bf3735177828ccf823b49d3396dfaccc8fd4 Mon Sep 17 00:00:00 2001 From: Joe Onorato Date: Tue, 1 Feb 2011 17:00:29 -0800 Subject: [PATCH] Add a bluetooth icon and data direction to the status bar. Bug: 3354414 Change-Id: I21cc9a2597e3b22bc5860a042d8a8cc4e93ca5b3 --- .../drawable-hdpi/stat_sys_data_bluetooth.png | Bin 700 -> 944 bytes .../stat_sys_data_bluetooth_connected.png | Bin 826 -> 1448 bytes .../res/drawable-hdpi/stat_sys_signal_in.png | Bin 0 -> 1492 bytes .../res/drawable-hdpi/stat_sys_signal_out.png | Bin 0 -> 1488 bytes .../res/drawable-hdpi/stat_sys_wifi_in.png | Bin 0 -> 1579 bytes .../res/drawable-hdpi/stat_sys_wifi_inout.png | Bin 0 -> 1729 bytes .../res/drawable-hdpi/stat_sys_wifi_out.png | Bin 0 -> 1669 bytes .../drawable-mdpi/stat_sys_data_bluetooth.png | Bin 484 -> 677 bytes .../stat_sys_data_bluetooth_connected.png | Bin 550 -> 988 bytes .../res/drawable-mdpi/stat_sys_signal_in.png | Bin 0 -> 1015 bytes .../drawable-mdpi/stat_sys_signal_inout.png | Bin 0 -> 1205 bytes .../res/drawable-mdpi/stat_sys_signal_out.png | Bin 0 -> 992 bytes .../res/drawable-mdpi/stat_sys_wifi_in.png | Bin 0 -> 1057 bytes .../res/drawable-mdpi/stat_sys_wifi_inout.png | Bin 0 -> 1141 bytes .../res/drawable-mdpi/stat_sys_wifi_out.png | Bin 0 -> 1068 bytes .../status_bar_notification_area.xml | 11 ++ .../status_bar_notification_panel_title.xml | 118 +++++++++++------- .../statusbar/policy/BluetoothController.java | 79 ++++++++++++ .../statusbar/policy/NetworkController.java | 57 ++++++--- .../statusbar/tablet/TabletStatusBar.java | 10 ++ 20 files changed, 210 insertions(+), 65 deletions(-) create mode 100644 packages/SystemUI/res/drawable-hdpi/stat_sys_signal_in.png create mode 100644 packages/SystemUI/res/drawable-hdpi/stat_sys_signal_out.png create mode 100644 packages/SystemUI/res/drawable-hdpi/stat_sys_wifi_in.png create mode 100644 packages/SystemUI/res/drawable-hdpi/stat_sys_wifi_inout.png create mode 100644 packages/SystemUI/res/drawable-hdpi/stat_sys_wifi_out.png create mode 100644 packages/SystemUI/res/drawable-mdpi/stat_sys_signal_in.png create mode 100644 packages/SystemUI/res/drawable-mdpi/stat_sys_signal_inout.png create mode 100644 packages/SystemUI/res/drawable-mdpi/stat_sys_signal_out.png create mode 100644 packages/SystemUI/res/drawable-mdpi/stat_sys_wifi_in.png create mode 100644 packages/SystemUI/res/drawable-mdpi/stat_sys_wifi_inout.png create mode 100644 packages/SystemUI/res/drawable-mdpi/stat_sys_wifi_out.png create mode 100644 packages/SystemUI/src/com/android/systemui/statusbar/policy/BluetoothController.java diff --git a/packages/SystemUI/res/drawable-hdpi/stat_sys_data_bluetooth.png b/packages/SystemUI/res/drawable-hdpi/stat_sys_data_bluetooth.png index 08f1993feaf7fbcb4a52f2631ef8f344c1eba258..fe9be2ca1179f503f92358536305dadb7b730355 100644 GIT binary patch literal 944 zcmeAS@N?(olHy`uVBq!ia0vp^55N5n|x9$%}u&lr_9Y}-qGpGu3^DrQ$< z?_d4u{Vbk2w|D-%yls=#48bPp1QQlR3x~C5*yNuq;tzUdpuKuhjmc7u2JHjE@+pg) zl$LQZ9?-e)#c|oH2_cFMGr}f$r~2`$R!`Vu_2CHn&S}hY|F5kQl3}b(;K}%*u)W&@ z$YIL%N@-w~fAUbEH8jtN;oL0d2dp2QW4ANBZthunke#Duf~S1SN%ocE6TUQ*K3KhL zozT~%^OPhrikzEg+np$3^t5+mFkoJyY7?-i;_#G7XZVyqILa|_|GL3^ZLVpqU%z~^ zk=Z%MZm9~M9D$er^*+c}EPlPwhri+axmn5$Q$tq@u3W>`!*6mk^0QUegliM;<7-}v}{$3nq8nf)&taX##r0e8cW}D41 zb!vQik9q22zf*Ua?Zgz>?cOH-B4zgYON$rrnRMPuV5oMP^!BLXxmmFfrvBpD@S^$7 zX{Ph17I4N~_gN6R)ptDVO)*R=gW*df#9 zGw0t5_RhVfxNGLxMbBP(WWIR3F>UvBt%*J9bJhei)yQ?c{>NRhdVBo>{>QEfn#Oh~ zlmxVwuYPbhWDd{S1qaeBXS(Ls(Ub9o-Pr`|3Btm#LPg^yf@`H2?PhlzIk(_0P0}&iyq5 zCREW9*N775qSVBa%=|oskj&gv219*AV|_!ze;3!40~M%(6r?1Uq*^6|RHZT)85kPs z8W;glh@rWav5}RDg|2~xm4ShK+Mx$18glbfGSez?YcR8}iUDen0of3opH@~=ES4kTDs;Fu1i!Fm~LYGsrd7#NRux;TbdobH{xKRY;3(qC+?2WE7#Jm! z6%*3sAwKoOlgAU%KTX;BPNz3cSq~WS%Uoz1vXG zVEKDDW8xIc?Pbh|(%4j}_N(Fa2?5vkWWQpe7oRJBOg{K8saMYIQvbo-tMqnA9w=UQk4<@b zXl$8^<+IYz`xX}%-hPb~^4-}PzGg-DJD&r~_XU@h-PNf)wJGY;GG5U)Ctuu7{%5vU z`sOx9xuUIowZ#km2F$pXpM1>s=Fh%u^;53h?2(Js`+TGS(-jfoY}qT)m15xJ(K^oJg5u5+NI8LeudTJHkE2F7XIk4(|$*69&(7DYuoCh{prYo z@_iSqcK9yUj|jD&-7InI$sx^mf)QypQ~rHUw>e*{WM?Smb<<((mqntbD?gXZDn4RP ze)xL7u7i*D-gKokTV~H|yJs}-*saF(GkNT1IY&OwRy*u(b@Jk^+1p>~-{mf1pPy(b zJ6VcZO59M_$SlOb+{)P0%E(yPz{1MFAimAMda^gOlm`|$z1!`_feAyh#5JNMI6tkV oJh3R1!7(L2DOJHUH!(dmC^a#qvhZZ84Nwt-r>mdKI;Vst073K_RsaA1 diff --git a/packages/SystemUI/res/drawable-hdpi/stat_sys_data_bluetooth_connected.png b/packages/SystemUI/res/drawable-hdpi/stat_sys_data_bluetooth_connected.png index 4a40b14f1ef475dea2509d91a519948b17bd2e69..f9b39666ec557349f57eb5b9ea80d4f1a8fa8b20 100644 GIT binary patch literal 1448 zcmZ`(dpOez82*jb+?z|sa&j735@Ob7ZsjtWWTjcGMuw3SVUsmcxh+H4lCjy5NS; zpDd~^A*}n!)Mi!Sc&Meoa_2gSMsNAJYJRuniNWo+5{91lt!B3*++fzsvR<+h2k*5~ z+TQ93CC~Q_O-MB@j`xUT0GxBe=Wlhi{bUaVVR6H@ViNl^rI(x*MYc50b==>5!BzswHHtfB%n{jGFNT-K9m4>8nEXW*+Hekq zpp;;}b9~1j{@wxupU6r+wW>>g4RmLZUH4^3dIVWE-Sno7Q7=F7Ok~ z`6;-lMrXQ8r2fM9Q$JTbww^ z-UAG&NF(jvhbuzdglKY-@Ap4A_g?%eZdM+fn^q@E_p?B7Tsr2A9t(4B8Bc}@?eV9! zfT2gOUh}x<**6c^u6GWZ94%qhm%W}-@+~RQ>BC`ZVL#W{enXQ^V}nxP=f%K1YSBye zXYDWfr}OXSYuf6jQpz>k?8jkyxoZ)>Z|OmGcl}U|C4cf+LyR>F%dQq464C4jSi1e8z3XP>za$sad&#CICR2-I z4|h?V3>RX}8M(bodY0_jw{b)B^w-OfR=(H5s^bH~D|P8r=hmo-RWc2{W{kNUK6saN z&|}l09SnU$u;|lT-$#1!Q5D@m1lQ|`H?xLegg^|9{BefcTNdiNbsp@HC>jx#^Ku~A zg0po~H=LB}ADRvj0Zf!(8!h@kqPPJQD*fDzrZ+Rb@y((IR_DzJdi*nYo+e*FZ7o*6 zldNthF^*z0MZz0sKP;E>myY!$$}~{l zB!VnKWKMQ4qTpkeYUaXH|f!4|VlR9!2v59{{%W~x47f<#5YBN}73wa|PvXXx#AyqS|Z8%MJ&>?d&VayxX#@t45mje3+k zCyRI4Q5NTq$E<}mG&_F4bbQQ&_5P~g+ZJkiedEFBLawvUy!n(0@4vn&iq`g zhIncQ%`rZa6&xQcOwS?k)`f+xyS#2l6-zJR*yM zvQ&rUPlPUWU8R>|KD`oIG6|Lp+YpopwIoCs5@0{&K6f1$9$8mTcW* zD4b;6xkOEIYF66fr~C?HCF;tHygJ-kU7R}Pxx4#XjvQiARN}qrl{0Uu$LXe{CW214 z0*sbeecotLd|%c$-|b%H-s*kNi{I~jKCk-o5(njzHCMNK$m%Zrt;50X9b0wc(1s0L zeETD0#HMX~Vd#D6(4{oq%_cH7ikXw=T@Yg1w^Di1B&kH#jxA>`WhZY5JRcFto)*VY z7pAU~dqHD0b3#(p0ahR1KU@5~y0Ux1*q5EGlMk5Ar{%rn*(YNyuc#$Y%QmVRhRo~M z*v_!y`}XB087}AxKDJ_byk=vDw(}un_dQQK3Pc+OXVuOSb7Pc9p6UAd$%htppNn~S zn;G_`q;l>%Sk3V6M|n@#vIRWO^YXM)HJI`(`t!v%E?qj?W{1Iz|o>-)C(5$Ebd5^&5lwkdi&wrPtqWH@fG!`}(hMA8wzEXL(Szv+~7S zKWqQ~;0;Z|8?v7;>`3`K?^KiT)xvziZtlb{ zUb4@MAHO)Y<+%5AxmPcJJw9E@Tz2@tCGOH$>$kQX`%t{}tWWMr!9O9HpKU$X@bhQ4 zpZtIP*s8T3^N-3ud?n_8zNB+KFlnilxJHzuB$lLFB^RXvDF!10LqlByLtP`Y5Cd~7 zV^b?5V_gFaD+7c0Hv4K64Y~O#nQ4`{HR#=LKMvF&39=zLKdq!Zu_%?nF(p4KRlzei bF+DXXH8G{K@MNkDP!WTttDnm{r-UW|Dr{Ot diff --git a/packages/SystemUI/res/drawable-hdpi/stat_sys_signal_in.png b/packages/SystemUI/res/drawable-hdpi/stat_sys_signal_in.png new file mode 100644 index 0000000000000000000000000000000000000000..883808abc3284cd07eb4f453675b53833c0e4c37 GIT binary patch literal 1492 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 XAVX6%akb+%00000NkvXXu0mjfEXfJX literal 0 HcmV?d00001 diff --git a/packages/SystemUI/res/drawable-hdpi/stat_sys_wifi_out.png b/packages/SystemUI/res/drawable-hdpi/stat_sys_wifi_out.png new file mode 100644 index 0000000000000000000000000000000000000000..44e7072b7dd16113ea65c1ae4605e750e977b27b GIT binary patch literal 1669 zcmZ`(eK^w#8~$O`d=#rOOSZ$*iOl9BqSImaVMwhxB09F(%;$!U5n6LjWf>>bi&wkk z<0Yr0klGv{wJ~}_UQVoZA#(`%I2|dU@0|bMKi=zk?)$!;=eqCf`R@^(3LqKj!}S3G zFe3ZlPiqvV0cNM3hEqwyP>txF_aotft?jzgQeB|gfa85axBy@P*@o7C-d$SXUM9zT zu{8R39tf&=`33-VnPj|IV6gmSp~o+bGtet-8NIcnA^%k8PCdV2^Ex0;+eFLCYaQeW z3TCWB92uSrJRXnAQh?!ks$wSCiQTNcFhG6xLsIF~93h^QG&=ub{)43m^m~5py!XoB zkB>ipYPU>VFMY;d8?W$gTm0Ct`Z}~uA(x_$308XUm_aV`rh^U|gusY5F-W{TpS{I; zfTMqFpvAswd=xJGOhW9J#d&0B;xKtd0Cjb0I#*XdU;ZZ`J+-q7sRNGenKqQYmz_(h zr?uERiKJt#3hg34e_euU1RsSmM)LE`?N60Ztd2ws4nbyq)~$%g7N#Imrr!&*Z5{$u zka6Z-N4e0HqIY5c7$|F37^01;(Pddd+4W3PI7O{+{<(RVLyBQi(4|K;1y?~ zA<-2S!Uajkjzm+~fE_qvq32Fp#t7ack%<*#phZ?vyETj_w;rfFDK~+bVx`VH6xZB$T zDpZ%RrvIB2QAtzBfTh+V@w9p{B=)4OC1UT0UoYw&|K7zXDj!kyrb^0w)g_L7MX111 zZWYVtVk;Za${DGVy5zs(Si0fRqA)59jXvRmqWQ-i|dnyM?LpwGo6E; zrO2XEEOMZoL}HqK86v}O+F_yF=FMCn`n68YFT3=sQcsaFT#6^c@66=pn3p+^?M#W? zdH=;rWnvKfKK54_8wtV~{dpp$n_x$g4p+U5meTr}yXuRYi=<8_EOzs4IN1- z={!^nsnC+amiB=+)E>g`w+3!C*f^a<1lookFE$(bB(C?-DRaA9DeSy^;B$v@Wcj0> z_l?~a(v=y^UF!li3beRsvbj98bejwhbg%iss2{WIPT_j}ep-;6CF#-Bus1*_N2zr#Wg8`nKeSnQpw5~hSz>rJNP)&>?rFO}hdL(9u@$&u_AG-{K@39BQFv5_^R1xy;ZSgfNG zzb?}ko_KLAZx}@(R2T_wLUy?}=3*l#XI=kLeE^+EZVHce+j|>1Z(y2vsN6W?;YQge!liQ#~=UIz`{g>$EfBb}_4yAJT5%QfB zyNS&Bv&rf7hejJ*Dt_{b0LHE}_AKdzM<@2f6-hk_CS5fMQdP4Xgte@^28-^A6t}j^ z?&`*2P6I2HJ*@+cD&%EgV@vrbno>qTZ#z`u^SmO$0v zTf^zBiP!pC>$BXig@q9zC~(Z`P%Bj_28Y37bf4l~#b!pYg6o2>UlpwSA8$%Hh(o6& zUUy&xPw`X~%m`rz-pNXa?}`^0s%bp54CYgCxo+QjeU3+I?WJXstJB;4g7*)fPs7o1 zOZ3Tp7oGgd(apnQkxGZ8;k32gY+A(BRK3J@;xSj1l6n#({HwQ5&TV++S9)Bq)coT| zui8-W8Sl-NHbcIuNokoj_h_4z+MWxvLdv?)!67D1n(qtc5rTQ%iA*{#io-?*M#V7! ztOM4`0gK)2f56umY_<&yI*;joVcW$795Gm|J;qVffmp0N*45obGrGBBFu-57%l{LI z<1nHkQvZJ-p(dZK30Q1jpmHL3e0m}i@M3VzGm*roL?)k;7{f(+Q(Y1sPaM(s05Tx} J{{TnJ{4Wg2>iGZw literal 0 HcmV?d00001 diff --git a/packages/SystemUI/res/drawable-mdpi/stat_sys_data_bluetooth.png b/packages/SystemUI/res/drawable-mdpi/stat_sys_data_bluetooth.png index 5ca2415a6670850f6838a4f8663e8890e6e49ca2..45a97fd233acb56de0e589476bf9b2d9dfb54a4e 100644 GIT binary patch literal 677 zcmeAS@N?(olHy`uVBq!ia0vp^0zj<5!3HFyJAa%3Qfx`y?k)`fL2$v|<&%LToCO|{ z#S9GGLLkg|>2BR0kYHJXV>*xq>t|?gm~Ftoz}V{P;uzv_{OuHPeHTZ8*8NhC1>bWz zs)VVyoNh_|ulWC@{;RnYGKBjTgakRA4pnG#n{LUz<$K2O%ByE#*IyQ|@-zM8?!Ix? zG7t8nOaUilIRcM6hny7IZl}u4;KTG)VC$@t-jWOsyb+v%zl|8C8a0S7xbMKmeRQc1 z!@EY`1*aX3Z4z?2GEty(LC1r+F^sPd2yYNsVKA;-Fx@&FY z?0Y98ck9*9ZYuwj!>~4k$$Y0_Eh9%DXJC4xRxPn?$!6=t zch5YjPkS&|CP41i$<;i6{)PVc{>U~}zim_DC)H$N?1+}QMwB=gr6!hS=I1GdWag$a z80s4u>l+&WyST0#s6Z8@ASJOR)hZdJDwV;=z|c_FzzB#!49%^KjjT*8bPX)53=G`U z4n088kei>9nO2EggPCDSr1-Hzi)bjkI>|zDyVAH~_ SkIjJU7(8A5T-G@yGywoagZ%*j literal 484 zcmeAS@N?(olHy`uVBq!ia0vp@KrF$*0wlYC?!OPDn3BBRT^Rni_n+Ah2>S z4={E+nQaFWEGuwK2hw1@4BFvleL&6|PZ!4!jq|ma4E386MUH-)ZSEp{Rbm#O(Bz37 z7jIoXmnE=zhL(=fBW{T|VZzd!L7uHE&Sre$)!}`4{zBG$^LbXMKdbz|GrRcwUP0$b z6M4(jo%ObQK1&0SWW{J6kI!s~zMOgG(&Zq}g}&BRw^j)%Zl2>VSoSf;?9J;a{RNxM zO`Ls?Z-1M3*iu%etHa=NoPRL$a=V(FQj!`wkI4Sm5>{gVFed(RSD+Nz`_9&yvnvv% z-@n?wAU`?(!3PQ1sT~2IgAC-)6(k$Uytt*&GpF)s;E6RooLZ9a7iU#z^1odAXY;Ao zh3p@eh-gM?$=&APv;K>H)(ed%K!2;2xJHzuB$lLFB^RXvDF!10LqlByLtP`Y5Cd~7 zV^b?5V_gFaD+7c0Hv4K64Y~O#nQ4`{HR#=LKMvF&39=zLKdq!Zu_%?nF(p4KRlzei bF+DXXH8G{K@MNkDP!WTttDnm{r-UW|%P6oG diff --git a/packages/SystemUI/res/drawable-mdpi/stat_sys_data_bluetooth_connected.png b/packages/SystemUI/res/drawable-mdpi/stat_sys_data_bluetooth_connected.png index b727c2d813109af7b39990f903ac530a934accaa..306afd09804f67c2a892365bacb8183a4e158343 100644 GIT binary patch literal 988 zcmeAS@N?(olHy`uVBq!ia0vp^0zj<5!3HFyJAa%3Qfx`y?k)`fL2$v|<&%LToCO|{ z#S9GGLLkg|>2BR0kYHJXV>*xq>t|?gm~Ftoz_iEH#WBR=cf@r^({cqaEw>dvoVnJjrq)`|(r5K>$=MrIP0s&eXxWy$ z{6w~?T6W@naKDCXvIPNLfmYCq*l6?Bm`O7EX zha8?+-Z}C5<7u;3{fYdDO8Y))Wbg>lNpw zHVHmFvf-iA<${*OqPv(x0t9EBZTr0L;pZt8YdY0e{n^V>C;ISi-2?6WMUU1tBpy~R zteGXme@xdtQ}1@=vx_#H`AuSvFJ1Rom`{pFFFfkfk;4)@jq`Q}du?qI6rY#%Nb`a8 zc}eDg`HY1!JE#Az%CNUxG&$b$&cA8yYh*f&_bXmy9#XF-uWt* zH%_pPVKj8k2@b7%e9&5n=k%d}HXjwV+4*(_e{uU6u-wt(fCSV1_L=sd_U&w1!?2RU zbE>%Fhton8iF`i92(hKBzxt}6#BPz5PSNi0dVN(QM)WiT=@G}JXP0-_K@ zb1P#bD-#P{0}Cqy1NXE;4^TAZ=BH$)RpQoQW?dBn)F1=0Aviy+q&%@GmBBG3KPgqg gEwd=KJijQrSiw2iv~cTVGoU&KPgg&ebxsLQ018Q=2LJ#7 literal 550 zcmeAS@N?(olHy`uVBq!ia0vp^B0wy`!2%=$oJ9WuDW)WEcNd2L?fqx=19_YU9+AaB z+5?Q;PG;MI1j`B>(}6TtF9UyH>Rko~MmBnbqaH-BJ>5MAT z?mDn`zQUGk6P$T<1Fu|(D0U9$PX50jJ|J+5SG0$P8AqdP%d=|JA0MS6_f>3rZXP!2>(|L1u39McE`TEj% zee&8iQuZQ`kNVtxcZ4(V_9G9THRV2%ykc#o`x%oY?UQVOpBDoLqiTt3L`h0wNvc(H zQ7VvPFfuSS)HN{FH8Kk^Ft;)`wK6i+HL$QUFo0 u8-nxGO3D+9QW+dm@{>{(JaZG%Q-e|yQz{EjrrH1%F?hQAxvX6c`~j7t@~HKns;-5 z%Jno>CdGgwq8fYH^_`x$D}4$sILNH>NJw*1D-UB~^I{i8dxhh(&%Ak4Qn=CfT*lUW zITLmidoGuQ`=A8HR6LBYNQT@28jV#;)Vgvn+VN z>*1GU2ChvHA2S_OowIidThxKW+vYyEEpODV4p3Z?aBxFLguxb`2$K|niAoO+cg)}W zB$DqsTiI>Z6D3Ci6qo`P7}OT{c5mUFHBDs7HZGGj$Au@9EnVU5&eElC_oN`CV1m$6 zXHF5N8C+>xjvq6YC~esFeFD1!t4_J$hk2i`TYjA`U#x7o_zBNl&4vk%M|x7cva3!W zV7Qt)vA_Sy-M#!1;zHM~YFowQ(|zD<#+jx<36tFg8K)Y#HlMl0aM4y`$+`a($BK$;99M6e0EE$a!L@!{K-?l+7F=I++3bY$#lkTlqD z`uv;1r^?qntRYjaq}KbL+re+c`mb&}TkXc(CZ-O&Aj{NO22gTlzhg`E0fE37uctW3OB4^2cuzP563`$4boM)z_8({@%5p z@o&CF$+oBGlZ%D_@BhpF{GHUneb1R+1Jk=`iEBiOb5UwyNoIbYLP%zADubcEp|QT9 z;lGRP%7F@0K?+h5OH!?pL8?+2j0_A7bq$PwD8$gv%Fx`(6v(x(GB9BHqV*L;LvDUb zW?Cg~4TUQwc>*=afNTiPPb(=;EJ|f?Ovz75RdCBJN-fVX$}U!L4mK^^`q&Jpj=|H_ K&t;ucLK6UUsIG(n literal 0 HcmV?d00001 diff --git a/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_inout.png b/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_inout.png new file mode 100644 index 0000000000000000000000000000000000000000..e3bcaf955fb5271a3251c21bca21d3a9f2b4567d GIT binary patch literal 1205 zcmeAS@N?(olHy`uVBq!ia0vp^58`7xmaN9&8<|BkaR zvvZhuS;5LmMMWbsV}+nC>%Twtm`pl87NF_?qJnB_#=-ecXXS@q8gWuIKZYgGQkqO+lUL1aQyYR~?k zz3bUkU$Qi+sk0O|y#JT886zXpW)2}%6eGjEmK z|I=ps^VbyZ43;Xb(YRkIFx02l;ti)dhh2?r(c@_2334~?OKlEy|93`NQF2D` z&iMv+nlBu8NS`=Uw(PqnD}(0Fb_LEEO#ScP7HmHmSUj(Ihk-=hoi~07=4@tX`J&C{ zxP7=NJ#osNke4AhgHyNnyy-96)0dLEK#SQ|QiAv5l!<|JFZLL@S?Nz*Vdu!$uyQwx zWyapQw%e|2U7H*@d-D86hmsHICOC^9%1qP!aB{Yw@4ICx!D+GQD=uxitgcp@bWQcw zHuu|d+0|>jmqeQL2j3BSqr=Lu>YWn1mRhy(KTYLc=aSvDsAB1pNs?&-gemnOU zPCT94|LRXdtInjWtVcIIi&2w5${s(fLF52e!P8e#`Y98$J$Eu35xAkR6#aeMPr(~D z(@*xV^mymU=XPR;=8gKy=I6_0U%wKGT(Fkw+B>@k%Uc_YD>ocSfA4bT&XpHeXZ-tP z{{8km_QgW8=0rRd33Xd(Hvd$X{|wjkM2ovwUfHMaec%7-@QNk!QzL>Ed>v(G9rQVW z)78E3b(PE6+Kk&T|F-A6^VzZa-i5VSzpNIWVQ8#8^Pzw0C#Lsx>skbuCNO_Zs5-hQ zGb+L8#}zwa#sgoY)s%!R_SEV~9h*_#UtNAZUCqL2(+(D$q(c3o^7?H;bDh52_|^S= z-mP2z4gRq*i9efYX=j}b%&np&t`Q~9MX8A;nfZANA(^?U42JrK#`=ba|1Pd82P#kn zDM(2yNwrD_sY+!qGB7mMH829A5JNL7V>2sL3ta;XD+7c0jk_CBH00)|WTsW()}Z%> z*%qil24q8Uep*R+Vo@rCV@iHfs)Ac)QEGX9QFgI{bFgXQ*2iW*bqt=aelF{r5}E*y C9svIU literal 0 HcmV?d00001 diff --git a/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_out.png b/packages/SystemUI/res/drawable-mdpi/stat_sys_signal_out.png new file mode 100644 index 0000000000000000000000000000000000000000..26db91e1241b92a896c612fc7be5faf95c73f93f GIT binary patch literal 992 zcmeAS@N?(olHy`uVBq!ia0vp^5JRqxDy9t?!wZ zC%xY=!T7d-!afE8MRk`WHEb$CkglMV?x(-m#jVeUMN);Ot%adExkW=HaJcGo5PGj>}aSpL4{Ehpc* z866%BOaiBOUJ&1}!z^M@ZhlihMzHe$gT&O(>GyB1GE-nIP6+!Jv-e2>L)(GX2eJ?B zP+1i>=|CfoPvi0fOWs`O<#f3tm{9PS>wRx~&5nSw&4xzHKRF$l#4l4`&?wWADO>sN z?tK{s?u0ruN56MV=l^?L`)^0x)bg`8J-tGfm#ME|jZ+m=WL3N>c=1d@$;J!6Tl5!mr_ucQaJ40HQ$agXK`eyiWCFx1&Az<#{2 zMWl5V-w%8DyD|Y%8wF>5Eb6wr@W=GwcJuF&>PusTuWaIC4-)Cqy_BJ*-+kNaUwmD* zw_;Dj$E~&Zb_wj9)+1}2)f})$dcxv@AlG^KW`8jLAYX9lwf_A2$4=%)*I${qcXjoi zxjlE+^xWZOYbtLRYl#%C{PtkN{p~!rxOvaNYtk^7o%-bb@jJ3E-_GoKQBu4yMRZ2@ zg*E0o&mY+FHPGRz@6rdV;DQ98qP=IG4o?P7Ubo~~K_?Ms5}{MxrcE`i4n zxR$%|InQ}9w_NgqSm2x~d*3e2SgKXJeDSK#*uYDdZdN|IvMkyv{A!%&-VXnLMhlHs zrC#WI_pR}1^aBm2V}Un5$bEVE`1Y||ztyDmZvLGAczIrFU-6vB|9hX8hqd|7bh>^I zn6O1lTq8=Hi&7IyGV}8kLNaqx84UFejr9!;|6N>H4pg8DQjn5Zl4_L7R0h|APAqV-}4rxu`EfNBk}<@m0RP(N3r9x1nu;rg2ls z)0m2eMvY0v_2=@_ceGgV-fV4rTkp>Ym8<3w$=mMaZ~McP@i;9wDcK<5$?fxndz;R! zIih2`tSf-^gP;=&tFZ8qFM*F(jvTxDY*i2A8T;@X@AsvIMC6DH$iHs!R8%ujGkNk~ zb7BZ5S7OvA4O`I(W}ItU)VM9AH|xm!)k;V{v?^)RHH%3}A|k8`od>%YYT2evPMO@W zZ71LFH@)9}oN~8POj@ku>6jh9R(X;ki?&YflSg-3GAH|7+dN;UzU0&%tLL{O*}^I^ zS|^I~&G~SGll|PM6P%0tQbQu-%4GScHQtDOk=qd#YY;i1M#bV`qZVt|)s_`2wGS*< z=C=7w#GTpR&))v%Wm>gr?Yk?HC!ZwrE4QxeELo($rFPl>Sb*iip3ajso_91S=$ig} ztsN&XTXf%@&G4dkr&IPGF4JmtpX0`U#nsDdavv)d7wOp4t;!Yrn{?v(xlg_wC6gab zy2iv5*K#Rx*?YA;8D|}WLZ?P+U6|%DN9V_F&RX?1(T8iZB_a;*6a6-K!+Yk-nVvV- zJ$Mpvqf2A`;Vdox<9qC6iu|YA1xOryc5nTfgmcgL{PQz@9cUG; z3VX4A&vTvc=k67=RVbKLY+H9wYS{$l)$!+k{M^j=|JMlv%~%Di#30tVdFOv#5X%s{ zqqSgFiVx!lyNwoBPkv8%p?Z|@BG>8tdOu&5_)KL@I{ZJ(MKZWqgW>8`)9|Iwmu?j~ zcd2li6VIpT(RJ<8jcn)r8clsf1NzecJZtF_o+Etc(C4IWPnb94eAp6iZq54X@{&I# z*X#E@+$kEgZb7l(b4vr}Q#uRYR&4fWcnn3Rg}7 zIY9zopr0Gvm{ A0ssI2 literal 0 HcmV?d00001 diff --git a/packages/SystemUI/res/drawable-mdpi/stat_sys_wifi_inout.png b/packages/SystemUI/res/drawable-mdpi/stat_sys_wifi_inout.png new file mode 100644 index 0000000000000000000000000000000000000000..aec60502a5756cb704f032065f3964777a1fce4d GIT binary patch literal 1141 zcmeAS@N?(olHy`uVBq!ia0vp^5^a~%OTkrYd*`^Jt4Ki^{xKN-^Q91 zoZi;*|M9#DrTlSwzFqHjF}ua%5GsD%o&98PgZO$|A!Y-^ z&a;9J)BC@OEmadzVBJ(<#?Qdnz^wBiim`#^M5Fu1JDm!%Q{FcS&0xAL%@A15cdV~@ z>vVMloRmW5@;qifyqU4I=Kl7p2{T>)<~dxvpB58kbuKyNWYm}MoeM)!t1J^4LIfS& zGjTMmmU)`sqqyNIQ)a-F)ZJVi3BiZYupfKQ>O3p%!>U!;yFWi&C^bv%_4lHA&m{e8 z9~1@@?NAIBSm?#0{NT~!j^GDEGg<^g^u4+x#X|4o<_RuVR4y#Qs9U~8pq_WEKY~yCTYfs z1!eOhrv;^P-m7%#@D^%59sK6#gpaFi%DuLzT&~$S{XJXFj#)-KW*N%(N%k(|X%FuD z+{C{%`4U@!db6nc)m2mC>mB#6seHq zYJT@#>G$p#o=2l+x$S;9uU9o{;!2sb8gYM5@PE8};OqD6>(cfcHZN{wxq6giK2x|! z^1_B=^HxdSVlYeEpb{)Fac8vHVZY=xrKYgU zQHY_Lm9d$XsfDhAg_VIp{KnmlC>nC}Q!>*kacj_f!)y!GAOo@?I6tkVJh3R1!7(L2 jDOJHOvnaJZzbLy{!8zEpaO-0;pgIOmS3j3^P63BN6DLnR{pB3?WP$i2&CZ1h&WpMy>NRpGN=nX9P1Z4t zW3HH>V&-Hc|7ctHbAj1WWyO)=H+w3Z+*Q7vy%k|o0*_&lM`;_3HZK7A9%^UWekb3OMot(n!4Vv@RO z)x(Dw2NN?xvKu&**gtdh@vHs0BmF7su?D+z)Tu8&UL8C;W3t68(?5^SO_aQB%CL}Q z`%d=brD^5gXXH2L^3UTm6j-wDPw>i!SMke_cxJu{J?HQGNI___>4E6=s)u`lIQ(Y4ejP_y6l@{-eB_SbGdJ2teON8o z-fCD^wP4vEj(`ObDXUe~`j`E=shbgVhsSV&MszrLL3695a%cO2PRZ_&2k-aH+aXZ! z-ma>U`}+c+p5Ls_3%WZ5Qg<^jpU7hDHD-F|x~MR|j?Mp$u6(_2_8h;Cx|tG8vlV|S zTBX-aXly-rrKj`Y8l4sPRkxXT>|kz~>zuhcUvGue9EDW^vBq8s8)Zt4oj4i65IXb3 z;-mFqJ4=q&|EQFR$huz2t`RZo?5*w01q#ZaK1Ka{vbV&P;Q;%5)`YaOcgHtN8Li2= z`0kqjegAOJYT4_Bvj1oQ5HD(Z-BY)OKhvC z8yfz*xUL+iKoz7QC9x#cDjB3ImBGls&`{UF2#7)q4Xq5#txSPj3o8QyhA&!QQ8eV{ zr(~v8;?_{Oa*`)dgAB-q;QX|b^2DN42FH~Aq*MjB%%art{G#k)1?OPX!mW?Zfa(}L MUHx3vIVCg!0D2j@+5i9m literal 0 HcmV?d00001 diff --git a/packages/SystemUI/res/layout-xlarge/status_bar_notification_area.xml b/packages/SystemUI/res/layout-xlarge/status_bar_notification_area.xml index 4e41e538fef4e..12b7c15c10f29 100644 --- a/packages/SystemUI/res/layout-xlarge/status_bar_notification_area.xml +++ b/packages/SystemUI/res/layout-xlarge/status_bar_notification_area.xml @@ -108,6 +108,12 @@ android:orientation="horizontal" android:gravity="center" > + + - + > + - + + + + + + + - + - - - + + mIconViews = new ArrayList(); + + private int mIconId = R.drawable.stat_sys_data_bluetooth; + private boolean mEnabled; + + public BluetoothController(Context context) { + mContext = context; + + IntentFilter filter = new IntentFilter(); + filter.addAction(BluetoothAdapter.ACTION_STATE_CHANGED); + filter.addAction(BluetoothAdapter.ACTION_CONNECTION_STATE_CHANGED); + context.registerReceiver(this, filter); + } + + public void addIconView(ImageView v) { + mIconViews.add(v); + } + + @Override + public void onReceive(Context context, Intent intent) { + String action = intent.getAction(); + if (action.equals(BluetoothAdapter.ACTION_STATE_CHANGED)) { + int state = intent.getIntExtra(BluetoothAdapter.EXTRA_STATE, BluetoothAdapter.ERROR); + mEnabled = state == BluetoothAdapter.STATE_ON; + } else if (action.equals(BluetoothAdapter.ACTION_CONNECTION_STATE_CHANGED)) { + int state = intent.getIntExtra(BluetoothAdapter.EXTRA_CONNECTION_STATE, + BluetoothAdapter.STATE_DISCONNECTED); + if (state == BluetoothAdapter.STATE_CONNECTED) { + mIconId = R.drawable.stat_sys_data_bluetooth_connected; + } else { + mIconId = R.drawable.stat_sys_data_bluetooth; + } + } + + + int N = mIconViews.size(); + for (int i=0; i mPhoneSignalIconViews = new ArrayList(); ArrayList mDataDirectionIconViews = new ArrayList(); + ArrayList mDataDirectionOverlayIconViews = new ArrayList(); ArrayList mWifiIconViews = new ArrayList(); ArrayList mCombinedSignalIconViews = new ArrayList(); ArrayList mDataTypeIconViews = new ArrayList(); ArrayList mLabelViews = new ArrayList(); int mLastPhoneSignalIconId = -1; int mLastDataDirectionIconId = -1; + int mLastDataDirectionOverlayIconId = -1; int mLastWifiIconId = -1; int mLastCombinedSignalIconId = -1; int mLastDataTypeIconId = -1; @@ -163,6 +165,10 @@ public class NetworkController extends BroadcastReceiver { mDataDirectionIconViews.add(v); } + public void addDataDirectionOverlayIconView(ImageView v) { + mDataDirectionOverlayIconViews.add(v); + } + public void addWifiIconView(ImageView v) { mWifiIconViews.add(v); } @@ -367,17 +373,15 @@ public class NetworkController extends BroadcastReceiver { if (Settings.System.getInt(mContext.getContentResolver(), Settings.System.AIRPLANE_MODE_ON, 0) == 1) { mPhoneSignalIconId = R.drawable.stat_sys_signal_flightmode; - mDataActiveSignalIconId = mDataSignalIconId = R.drawable.stat_sys_signal_flightmode; + mDataSignalIconId = R.drawable.stat_sys_signal_flightmode; } else { mPhoneSignalIconId = R.drawable.stat_sys_signal_null; - // note we use 0 instead of null - mDataActiveSignalIconId = mDataSignalIconId = R.drawable.stat_sys_signal_0; + mDataSignalIconId = R.drawable.stat_sys_signal_0; // note we use 0 instead of null } } else { if (mSignalStrength == null) { mPhoneSignalIconId = R.drawable.stat_sys_signal_null; - // note we use 0 instead of null - mDataActiveSignalIconId = mDataSignalIconId = R.drawable.stat_sys_signal_0; + mDataSignalIconId = R.drawable.stat_sys_signal_0; // note we use 0 instead of null } else if (isCdma()) { // If 3G(EV) and 1x network are available than 3G should be // displayed, displayed RSSI should be from the EV side. @@ -396,8 +400,6 @@ public class NetworkController extends BroadcastReceiver { } mPhoneSignalIconId = iconList[iconLevel]; mDataSignalIconId = TelephonyIcons.DATA_SIGNAL_STRENGTH[mInetCondition][iconLevel]; - mDataActiveSignalIconId - = TelephonyIcons.DATA_SIGNAL_STRENGTH_ACTIVE[mInetCondition][iconLevel]; } else { int asu = mSignalStrength.getGsmSignalStrength(); @@ -421,8 +423,6 @@ public class NetworkController extends BroadcastReceiver { } mPhoneSignalIconId = iconList[iconLevel]; mDataSignalIconId = TelephonyIcons.DATA_SIGNAL_STRENGTH[mInetCondition][iconLevel]; - mDataActiveSignalIconId - = TelephonyIcons.DATA_SIGNAL_STRENGTH_ACTIVE[mInetCondition][iconLevel]; } } } @@ -685,6 +685,7 @@ public class NetworkController extends BroadcastReceiver { Context context = mContext; int combinedSignalIconId; + int dataDirectionOverlayIconId = 0; int dataTypeIconId; String label; int N; @@ -699,16 +700,22 @@ public class NetworkController extends BroadcastReceiver { dataTypeIconId = 0; } else if (mDataConnected) { label = mNetworkName; + combinedSignalIconId = mDataSignalIconId; switch (mDataActivity) { case TelephonyManager.DATA_ACTIVITY_IN: + dataDirectionOverlayIconId = R.drawable.stat_sys_signal_in; + break; case TelephonyManager.DATA_ACTIVITY_OUT: + dataDirectionOverlayIconId = R.drawable.stat_sys_signal_out; + break; case TelephonyManager.DATA_ACTIVITY_INOUT: - combinedSignalIconId = mDataActiveSignalIconId; + dataDirectionOverlayIconId = R.drawable.stat_sys_signal_inout; break; default: - combinedSignalIconId = mDataSignalIconId; + dataDirectionOverlayIconId = 0; break; } + combinedSignalIconId = mDataSignalIconId; dataTypeIconId = mDataTypeIconId; } else if (mBluetoothTethered) { label = mContext.getString(R.string.bluetooth_tethered); @@ -724,11 +731,11 @@ public class NetworkController extends BroadcastReceiver { Slog.d(TAG, "refreshViews combinedSignalIconId=0x" + Integer.toHexString(combinedSignalIconId) + "/" + getResourceName(combinedSignalIconId) + + " dataDirectionOverlayIconId=0x" + Integer.toHexString(dataDirectionOverlayIconId) + " mDataActivity=" + mDataActivity + " mPhoneSignalIconId=0x" + Integer.toHexString(mPhoneSignalIconId) + " mDataDirectionIconId=0x" + Integer.toHexString(mDataDirectionIconId) + " mDataSignalIconId=0x" + Integer.toHexString(mDataSignalIconId) - + " mDataActiveSignalIconId=0x" + Integer.toHexString(mDataActiveSignalIconId) + " mDataTypeIconId=0x" + Integer.toHexString(mDataTypeIconId) + " mWifiIconId=0x" + Integer.toHexString(mWifiIconId) + " mBluetoothTetherIconId=0x" + Integer.toHexString(mBluetoothTetherIconId)); @@ -789,6 +796,22 @@ public class NetworkController extends BroadcastReceiver { } } + // the data direction overlay + if (mLastDataDirectionOverlayIconId != dataDirectionOverlayIconId) { + Slog.d(TAG, "changing data overlay icon id to " + dataDirectionOverlayIconId); + mLastDataDirectionOverlayIconId = dataDirectionOverlayIconId; + N = mDataDirectionOverlayIconViews.size(); + for (int i=0; i